CSMA/CA之INIT入口

2023-10-06 02:42
文章标签 init ca 入口 csma

本文主要是介绍CSMA/CA之INIT入口,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这里比较奇怪的一个地方在于init竟然是非强制状态
仿真开始的时候,仿真核心维持的事件列表中维持着10个begsim_intrpt(因为有10个节点),且发生时间都为0时刻。
begsim_intrpt被触发,进程从初始的状态的入口开始执行。

如何确定这10个相同时刻的事件的执行顺序?

  • 尽管发生在同一时刻,但是其在事件列表中仍然是有顺序的。
  • 仿真核心按照其在事件列表的顺序一个一个执行。事件执行的过程中仿真时间不推进。
  • 执行到下一个仿真开始中断事件的时候,仿真时间不推进,仍然为0。
  • 每一个init入口处又设置了一个自中断,其触发时间也是0时刻。
  • 可以想象,事件列表中一开始有10个0时刻的仿真开始中断,随着第一个仿真开始中断的执行,事件列表中又多了一个0时刻的自中断。当10个仿真开始中断都执行完毕,事件列表中会出现10个0时刻的自中断。
  • 因为init是非强制状态,执行完入口代码后,控制权又回到了仿真核心。仿真核心执行事件列表的第一个事件,也即0时刻的自中断。控制权又回到init进程。init进程接着执行init的出口代码。

如何确定中断的接收者?

  • 中断的接收者是进程
  • 流中断的接收者通过包流很容易判断
  • 自中断的接收者就是本身
  • 其他进程中断的接收者是其他进程

如何确定进程内部状态的转移?

  • 中断的传递是定向的,由仿真核心传递给目标进程
  • 目标进程内部有很多状态,究竟装移到哪一个具体的状态,仅仅靠中断类型是不够的的。
  • 流中断除了需要知道中断类型是流中断外,还需要知道是从哪一个流索引来的
  • 自中断除了需要知道中断类型是自中断外,还需要知道其中断码是多少

tags:opnet

这篇关于CSMA/CA之INIT入口的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/152652

相关文章

4.15 版本内核调用 init_timer()函数出错

linux/include/linux/timer.h4.15 之前版本struct timer_list {14 /*15 * All fields that change during normal runtime grouped to the16 * same cacheline17 */18 struct hl

Python方法:__init__,__new__,__class__的使用详解

转自:https://blog.csdn.net/qq_26442553/article/details/82464682 因为python中所有类默认继承object类。而object类提供了了很多原始的内建属性和方法,所以用户自定义的类在Python中也会继承这些内建属性。可以使用dir()函数可以查看,虽然python提供了很多内建属性但实际开发中常用的不多。而很多系统提供的内建属性实际

flutter的入口和原生交互

从今天起,笔者要开始从flutter列表页面向原生页面跳转了 首先遇到了N个No such module "Flutter" 因为笔者的公司其实是从前往后改造Flutter的,所以也不需要引擎组,但是笔者搞不懂,只能照着葫芦画瓢,以后等笔者Flutter技术日渐精进,一定回过来更新怎么单个页面嵌入flutter。 在Appdelegate里还有很多_lifeCycleDelega

_no_init的作用

__no_init用于禁止系统启动时的变量初始化,什么情况下需要用这个关键字使系统禁止变量的初始化,禁止变量初始化用在什么场合,为什么要这样做,有什么意义吗? 1、看门狗复位的现场恢复,如果初始化了就完全不可恢复了 2、使用nvram保存数据,需要连续记录的。    我有个变量,需要在系统意外复位时,这个变量值能保留,所以采用__no_init来实现,只是上电的时候这个值不是零

数据的处理方式-便携入口

作为一个完成的应用程序,数据存储操作是必不可少的。因此,Android系统一共提供了四种数据存储方式。分别是:SharePreference、SQLite、Content Provider和File。由于Android系统中,数据基本都是私有的的,都是存放于“data/data/程序包名”目录下,所以要实现数据共享,正确方式是使用Content Provider。   SQLite: SQ

iOS中alloc与init

面向对象的3大特性,封装继承和多态. 我遇到过封装相关的问题,因为初级封装简单,常常暴露出被你封装的接口,进一步进行高级封装隐藏接口的时候才发现,封装是一门学问,而这门学问得从最基础的alloc与init讲起.   FatherModel.h #import <Foundation/Foundation.h>@interface FatherModel : NSObject@en

优雅的写init方法

怎么写出高质量的init方法,以下是demo可参考实现,代码实现。 public class BaseTestController {private UnitTest unitTest;public void init(String url, String accessToken){unitTest = UnitTest.getNewInstance();unitTest.setHost(ur

Android14音频进阶之定制ramdisk文件系统init服务(八十三)

简介: CSDN博客专家、《Android系统多媒体进阶实战》一书作者 新书发布:《Android系统多媒体进阶实战》🚀 优质专栏: Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏: 多媒体系统工程师系列【原创干货持续更新中……】🚀 优质视频课程:AAOS车载系统+AOSP14系统攻城狮入门视频实战课 🚀 人生格言: 人生从来没有捷径,只有行动才是治疗恐惧

openssl之数字证书签名,CA认证原理及详细操作

http://blog.sina.com.cn/s/blog_cfee55a70102wn3h.html openssl之数字证书签名,CA认证原理及详细操作   (2016-03-23 09:42:39) 转载▼ 标签:  rsa   ca认证   php签名   非对称加密技术 分类: 软件设计 1 公钥密码体系(Public-key Crypt

cocos2dx场景切换中init、onEnter、onEnterTransitionDidFinish的调用顺序

这些方法调用的先后顺序如下(使用 replaceScene 方法): 1. 第2个场景的 scene 方法 2. 第2个场景的 init 方法 3. 第2个场景的 onEnter 方法 4. 转场 5. 第1个场景的 onExit 方法 6. 第2个场景的 onEnterTransitionDidFinish 方法 7. 第1个场景的 dealloc 方