免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2005 | 回复: 0
打印 上一主题 下一主题

[VMware] 单vmware虚拟机调试内核 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-01-10 09:49 |只看该作者 |倒序浏览
STEP
1 编译不含sio的kernel(注释掉device.hints和device sio), 并以附件中的sio.c编译sio.ko
2 备份当前系统的kernel和sio.ko,并更新kernel, 并重启
3 加载虚拟串口驱动
#kldload /path/to/sio.ko
4 测试串口
#ll /dev/cuad* (可以看到2个串口,如cuad2,cuad3)
终端1:#cat /dev/cuad2
终端2:#echo test > /dev/cuad3
如果在终端1上看到输出的test,则表明虚拟串口连接成功
在终端1上按CTRL+c终止cat
5 调试内核
为串口联调配置好vmware虚拟机,配置虚拟机中的串口为/dev/cuad2
在主机中执行#kgdb -r /dev/cuad3 kernel.debug进行联调
ADVANTAGE
1 超越硬件的限制
2 软件模拟串口,传输速度可以不受串口速度的限制

       
        文件:sio.tar
        大小:20KB
        下载:
下载
       
BUG
1 对控制信号的模拟不够精确
2 该驱动的加载会导致物理串口不能正常工作(如需使用物理串口,kldunload sio.ko后kldload备份的sio.ko即可)
3 性能尚有待改进
REFERENCE
1 zzy《Debugging with GNU Project Debugger》
2 Interfacing the Serial / RS232 Port,
http://www.beyondlogic.org/serial/serial.htm
3 The RS232 Standard,
http://www.camiresearch.com/Data_Com_Basics/RS232_standard.html
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/41770/showart_460776.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP