- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
02 OPNET的仿真原理
附注: 调试(单步) 单步进入函数 单步执行函数 附注: 调试(添加监视) 1)概要 信源发送消息:周期性 链路传输消息:有时延 信宿接收消息:输出消息内容 信源 信宿 PPP链路 2)简单PPP链路模型 状态机 当接收来自输入端的消息时,缓存消息并等待时延 当等待时延结束时,将消息取出并发送到输出端 2)简单PPP链路模型 状态变量 当前状态 对象名称 时延 链路输入端和输出端的对象(的名称) 消息队列及队列项内存池 3)信源 状态机 当发送时钟触发后,向链路发送报文。 3)信源 状态变量 当前状态 对象名称 所连接链路的名称 传输时延 最大报文发送数量 当前已发送报文的数量 4)信宿 状态机 当接收到来自链路的报文时,打印报文内容,并销毁报文。 4)信宿 状态变量 当前状态 对象名称 所连接链路的名称 5)仿真场景 主要步骤 创建链路对象“ppp link 0”,并设置相应的对象属性。 创建信源对象“source 0”,并设置相应的对象属性。 创建信宿对象“sink 0”,并设置相应的对象属性。 运行仿真。 总体架构(UML图示) 通用数据结构 专用数据结构 用户对象模型 课后作业 认真阅读、分析简易仿真器架构与源代码: 理解总体设计思路 理解内存池的设计与实现 理解链表的设计与实现 理解哈希表的设计与实现 理解仿真内核的设计与实现 理解用户对象模型中状态机的设计与实现 理解仿真场景的设计与实现 课后作业 在一周时间内,将简易仿真器的源代码抄写(或者重新实现)2~3遍,仔细体会其中的代码及注释,了解动态链接库(.dll)与可执行文件(.exe)的编写方法,并在Visual Studio 2010中进行运行和调试。 对简易仿真器中存在的不足、不方便、设计不周之处,提出你自己的感想与建议,并在下一堂课上课前提交作业(纸制)。 附注: 创建一个空白的解决方案 附注: 创建一个空白的解决方案(续) 附注: 添加一个动态链接库程序 附注: 添加一个动态链接库程序(续) 附注: 添加一个动态链接库程序(续) 附注: 添加头文件 附注: 添加头文件(续) 附注: 添加源文件 附注: 编译、链接 附注: 添加一个可执行控制台程序 附注: 添加一个可执行控制台程序(续) 附注: 添加一个可执行控制台程序(续) 附注: 设置为活动工程 附注: 设置工程依赖顺序 附注: 设置工程依赖顺序(续) 附注: 调试(添加断点) 附注: 调试(运行调试) 附注: 调试(运行调试) 2、主要的数据结构 通用数据结构 专用数据结构 1)通用数据结构 内存池 双向链表 字符串哈希表 A、内存池 在程序的设计过程中,通常需要使用大量的小对象(大小在1~128字节)。 利用系统的动态内存分配,往往会消耗大量的时间查找合适的空闲内存区。 内存池(memory pool)就是专门针对小对象的高速内存分配机制。 A、内存池 内存池通过预先申请所需要的内存,等待需要使用的时候直接使用,能够大大减少内存动态申请次数,降低内存检索开销。 内存池可有效降低动态申请内存的次数,减少与内核态的交互,提升系统性能,减少内存碎片,增加内存空间使用率,避免内存泄漏的可能性,这么多的优点,没有理由不在系统中使用该技术。 A、内存池 借鉴Modern C++ Design的设计方法。 内存区(memory chunk):内存区是一段连续的内存区域。设每个内存块(memory block,即小对象)需要N字节,一个内存区能够为C个小对象分配内存,即占用CN字节。 N个字节 N个字节 N个字节 … N个字节 内存区(占CN个字节) 内存块(占N个字节) A、内存池 内联链表:将每个内存块编号为0、1、……、C-1,每个内存块的第1个字节表示下一个空闲内存块的编号。由于只占1个字节,C不大于256。 … 内存区(占CN个字节) 1 2 C-1 0 内存块0 内存块1 内存块C-2 内存块C-1 A、内存池 内存区对象 第一个空闲内存块的编号,初始为0。 当前空闲的内存块数量,初始为C。 内存区的指针,所指内存区占CN个字节。 A、内存池 内存池对象 内存块的大小,即N。 内存区中内存块的数量,即C。 内存区对象的数量。 内存区对象数组的指针。 内存区对象 内存区对象 内存区对象 … 内存区对象 内存区对象数组 DesT_Memory_Chunk A、内存池 … A、内存池 … 1 2 3 4 0 第0号内存块 第1号内存块 第2号内存块 第3号内存块 第C-1号内存块 A、内存池 内存块的分配 A、内存池 … j 首个空闲内存块编号为i。 第j号内存块 首个空闲内存块编号修改为j。 第i号内存块 返回第i号内存块。 A、内存池 内存块的释放 目前没有考虑内存区对象数组的缩编问题,即内存区
您可能关注的文档
最近下载
- (高清版)-B-T 34590.2-2022 道路车辆 功能安全 第2部分:功能安全管理.pdf VIP
- 水果超市水果产期及收货标准.xls VIP
- 环境中抗生素抗性基因传播途径.docx VIP
- 2025年监理员考试题库及答案.docx VIP
- Hopewind禾望HV510系列高性能变频器用户手册.pdf
- 2025年度中秋国庆节前安全教育培训.pptx
- 多肉拼盘.pptx VIP
- 养生保健品商业计划书.pptx
- 第六章 智能网联汽车_3 课件(共33张PPT)- 《汽车文化》同步教学(上海交大版).pptx VIP
- 2025-2026学年小学劳动苏科版2023二年级上册-苏科版(2023)教学设计合集.docx
文档评论(0)