目录
5 模拟器连接
5.1 安装主机连接驱动
主机连接驱动(也就是WRTAP驱动)用于VxWorks与其他机器通信,它会将IP数据包交给主机操作系统处理。WRTAP驱动由VxWorks模拟器自动初始化。在Windows机器上,安装这个驱动可能会对机器系统性能产生影响,安装后如果出现网络问题,那么就手动对机器的网络连接进行配置吧。
本案例是TCP通信程序,为了实现跨机器通信,必须安装WRTAP驱动。
1)Win10找不到添加硬件选项,可在cmd输入“hdwwiz C:\windows\system32>hdwwiz”打开添加硬件窗口。
2)“下一步”,选择“安装我手动从列表选择的硬件(高级)(M)”。
3)“下一步”,选择“网络适配器”。
4)“下一步”,点击“从磁盘安装”, 选择安装目录/vxworks-6.9/host/x86-win32/bin/wrtap.inf文件,完成安装。
5)安装后,会在网络适配器管理界面显示新增了一个网络适配器,IP地址为“192.168.200.254”。
5.2 安装配置网络守护程序
VxWorks模拟器包含一个网络守护进程,该进程可以将多个模拟器实例连接到一个子网内,也可以将多个子网(甚至是独立的VxWorks模拟器)连接到一个更大的网络内。网络守护进程支持网络层的所有协议,如TCP/IP协议,也就是说,VxWorks模拟器可以用来测试任何广播或单播程序。
网络守护进程可以作为服务启动,也可以从控制台命令启动,记住,网络守护进程连接了主机系统和模拟器实例。
1)安装网络守护程序
开始菜单 > Wind River > VxWorks Development Shell,右键“以管理员身份运行”,输入“vxsimnetds_inst.exe”命令进行安装,如果之前有该守护进程,则通过“vxsimnetds_inst.exe /u”卸载。
2)启动网络守护进程服务
电脑 > 右键“管理” > 服务和应用程序,找到“Wind River Network Daemon for VxWorks Simulator”,右键“启动”。
5.3 建立自定义模拟器连接
VxWorks模拟器是一个模拟的硬件目标机,用来作为VxWorks的原型和测试台环境。
Workbench主机工具与目标系统之间必须先建立连接,才能与之通信。
Workbench > Remote Systems窗口,右键“New > Connection”,打开建立连接界面.
1)选择“Wind River VxWorks6.x Simulator Connection”
2)选择“Custom simulator”,VIP项目目录/default/VxWorks文件
3)“Next”至“Network Options”界面,选择“Full Network(simnet)”,注意红线处的IP地址,FTP测试时会用到。
4)“Next”至“Connection Summry”界面,输入连接名称,点击“Finish”完成创建。
6 模拟器运行调试DKM程序
1)连接模拟器
“Remote Systems”界面,选择刚才建立的“test_sim_connection”连接,右键“Connect”。此时会弹出“Target Console”窗口显示目标机输出,并加载我们之前生成的VxWorks镜像。
2)下载DKM应用程序
DKM项目右键“Download > VxWorks Kernel Task”打开加载内核模块界面,选择之前创建的“test_sim_connection”模拟器,点击“Download”。
首次加载会打开上面的界面,后面打开的界面如下图,可直接选择模拟器进行加载。
加载后,在“Remote Systems”窗口会显示“test_dkm_sim.out”文件。
在“Target Consoles”窗口,输入“moduleShow”命令,会输出已加载的内核模块,输入“lkup “tcpServer””会查找可执行的入口函数。
3)执行DKM程序
启动tcpServer任务,“sp tcpServer”:
启动tcpClient程序,“tcpClient “127.0.0.1””。
输入要发送的消息,然后输入“Y”,该客户端程序会将消息通过TCP协议发送给tcpServer,并等待tcpServer返回确认消息。
4)FTP连接测试
VxWorks模拟器添加用户,在“Target Consoles”窗口输入cmd回车进入VxWorks shell,然后输入“user add vxw vxw 01”添加用户,输入“C”退出shell。
打开CMD窗口,ping命令测试主机与VxWorks模拟器是否能够连通,然后ftp登录。
5)调试DKM程序
当任务异常退出时,如tcpServer,可通过“tt tTcpWork0”来查看堆栈信息,tTcpWork0是tcpServer的任务名称。
如果需要逐步断点调试,可在workbench源码左侧双击设置断点(浅蓝色圆圈),比如在tcpServer.c中设置断点。
第一种:附加调试
Step1:在“Target Consoles”窗口中输入命令“reboot”重启模拟器;
Step2:下载DKM内核模块;
Step3:在“Remote Systems”窗口“test_sim_connection > Wind River Target Debugger”右键“Debug > Attach to System VxWorks 6.9 (System Mode)”;
Step4:在“Target Consoles”窗口中输入命令“sp tcpServer”启动任务,即可命中断点,进行逐步调试;
第二种:直接以内核任务调试
DKM项目右键“Debug as > VxWorks Kernel Task”,直接下载到模拟器进行调试
调试效果:
上一篇:【VxWorks】入门教程2:创建VIP项目及DKM项目
今天的文章模拟器vtx和vtd都开吗_手机运行exe模拟器[通俗易懂]分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/89158.html