1.关于NS2分裂机制的简短过程可以参看原博客网址:http://tph85666031.blog.163.com/blog/static/20746227201022781352681/

NS2启动后将生成所有xxxClass类,因为所有xxxClass类都是static的

xxxClass类的构造函数调用bind函数,bind函数调用otcl的register函数创建(不是实例化)otcl类

xxxClass类的构造函数同时为otcl创建create-shadow并挂接到c++的create-shadow函数

NS2接着解释tcl脚本语句

tcl脚本语句中的new将生成otcl对象(实例化一个otcl类),new将调用otcl的creat生成对象并执行对象的init过程函数,此过程函数将调用c++的create-shadow函数,c++的create-shadow成员函数将创建对应的c++类并创建otcl的cmd过程并挂接到c++的dispatchcmd上,这样otcl的过程就可以调用cmd并最终调用dispatch再调用command函数设置c++成员了。

以上加红部分为个人理解上需要注意的问题,

2.关于1简短过程中的NS2代码(大部分代码位于tcl-object.tcl文件中),可以参考如下博文网址

http://blog.chinaunix.net/uid-11572501-id-2868629.html

http://blog.csdn.net/icode0410/article/details/8713481 //该博文分析了proc new函数中的create调用

关于tcl语法的一点说明:

otcl中的register函数中出现的[split $className /]语句是将$className分割成数组,然后通过foreach遍历

NS2 分裂机制及代码分析一相关推荐

  1. NS2 分裂机制及代码分析一---解释类成员变量与编译类成员变量互操作

    原文分析见博客地址:http://blog.sina.com.cn/s/blog_8eba0c2a0101blip.html 本文从中摘取几个需要注意到的地方 1.编译类变量与解释类变量的绑定 通常, ...

  2. linux源码acl,Linux自主访问控制机制模块详细分析之posix_acl.c核心代码注释与acl.c文件介绍...

    原标题:Linux自主访问控制机制模块详细分析之posix_acl.c核心代码注释与acl.c文件介绍 2.4.4.6 核心代码注释 1 posix_acl_permission() int(stru ...

  3. 【SemiDrive源码分析】【X9芯片启动流程】21 - MailBox 核间通信机制介绍(代码分析篇)之 Mailbox for Linux 篇

    [SemiDrive源码分析][X9芯片启动流程]21 - MailBox 核间通信机制介绍(代码分析篇)之 Mailbox for Linux 篇 一.Mailbox for Linux 驱动框架分 ...

  4. 【SemiDrive源码分析】【X9芯片启动流程】20 - MailBox 核间通信机制介绍(代码分析篇)之 MailBox for RTOS 篇

    [SemiDrive源码分析][X9芯片启动流程]20 - MailBox 核间通信机制介绍(代码分析篇)之 MailBox for RTOS 篇 一.Mailbox for RTOS 源码分析 1. ...

  5. 【SemiDrive源码分析】【X9芯片启动流程】23 - MailBox 核间通信机制介绍(代码分析篇)之 RPMSG-IPCC Kernel 篇

    [SemiDrive源码分析][X9芯片启动流程]23 - MailBox 核间通信机制介绍(代码分析篇)之 RPMSG-IPCC Kernel 篇 一.RPMSG 接口 1.1 Linux Kern ...

  6. 【SemiDrive源码分析】【X9芯片启动流程】25 - MailBox 核间通信机制介绍(代码分析篇)之 RPMSG-IPCC RTOS QNX篇

    [SemiDrive源码分析][X9芯片启动流程]25 - MailBox 核间通信机制介绍(代码分析篇)之 RPMSG-IPCC RTOS & QNX篇 一.RPMSG 接口 1.1 Lin ...

  7. Golang反射机制的实现分析——reflect.Type方法查找和调用

    在<Golang反射机制的实现分析--reflect.Type类型名称>一文中,我们分析了Golang获取类型基本信息的流程.本文将基于上述知识和经验,分析方法的查找和调用.(转载请指明出 ...

  8. Device Tree(三):代码分析

    2019独角兽企业重金招聘Python工程师标准>>> 一.前言 Device Tree总共有三篇,分别是: 1.为何要引入Device Tree,这个机制是用来解决什么问题的?(请 ...

  9. 2018-2019-2 网络对抗技术 20165324 Exp4:恶意代码分析

    2018-2019-2 网络对抗技术 20165324 网络对抗技术 Exp4:恶意代码分析 课下实验: 实践目标 是监控你自己系统的运行状态,看有没有可疑的程序在运行. 是分析一个恶意软件,就分析E ...

最新文章

  1. oracle:ORA-01940无法删除当前已连接用户的解决方案
  2. python ioctl_Python如何使用ioctl或spidev从设备读取输入?
  3. 详解tf.nn.dropout
  4. 任意文件读取linux,Symphony 1.4.20服务器任意文件读取漏洞
  5. 计算机组成与系统结构+答案书,计算机组成与系统结构书本答案
  6. java图遍历求最长路径_如何在Java中使用递归实现矩阵中最长路径的返回
  7. java der pem_JAVA解析各种编码密钥对(DER、PEM、openssh公钥)
  8. 2 环境设置_VS Code 虚拟环境设置
  9. 台式计算机的主流配置,2017年台式电脑主流配置单
  10. 如何在点击事件中取得复选框选中的单元格值
  11. 语音合成(TTS)应用方案一二三
  12. Python入门50个小程序
  13. CCF推荐-计算机网络领域顶级期刊会议
  14. java reader类子类_Java之InputStreamReader类的实现
  15. 独立元器件搭建的逻辑门电路和仿真(一)
  16. 【vue】Layim 配置请求头参数
  17. 基于SSM的家政服务管理系统
  18. java面试亮点技术
  19. 什么是自然语言处理,自然语言处理目前的应用有哪些?
  20. 正点原子FreeRTOS(上)

热门文章

  1. linux7 开启端口,常用CentOS7系统防火墙开启设置和开放端口方法
  2. activiti前端画图转化_用于Activiti前端显示流程图的插件
  3. 哪些人适合做前端开发?HTML5前端发展前景怎么样?
  4. opencv 的norm_OpenCV视频分析-Meanshift、Camshiftamp;运动轨迹绘制
  5. python3一爬虫库url_python3爬虫之Urllib库(一)
  6. 石头剪刀布代码android,微信小程序源码解说:石头剪刀布(附源码下载)
  7. eclipse使用python_【转】使用Python的IDE:Eclipse+PyDev
  8. 清华计算机系教学计划,清华大学电子信息科学与技术教学计划
  9. 全国计算机考试可以异地考吗,公务员省考可以异地考吗
  10. linux pinctl 分析,Linux驱动架构之pinctrl子系统分析(一)