QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2228|回复: 3

关于skyeye的几个基本概念。

[复制链接]
发表于 2007-4-17 20:34:37 | 显示全部楼层 |阅读模式
1. 为什么要有GDB/ARMulator这种架构和开发板?既然可以选择Samsung/4510B,并且在skyeye.conf中把skyeye配置成samsun4510b的虚拟机,并且可以成功跑起uClinux。问题是能否源代码调试samsung4510b的uClinux内核映像,还是只有在ARMulator上才可以源代码调试?应该不至于。

2. 能否调试uClinux上的应用层程序?设置断点、单步等?如何设置断点?

3. skyeye.conf中的hostip是什么意思?假如uClinux是按s3c4510b编译的,在rc中已经可以通过ifconfig eth0配置ip了,skyeye.conf应该只是给uClinux模拟网卡硬件就可以了,至于mac地址和ip应该是操作系统来配置,这里为什么还要配置hostip?做什么用?

4. GDB/ARMulator或者是GDB/Skyeye为什么硬件架构是和at91相同,即skyeye.conf的mach要用at91,如果用其他例如s3c4510b,则在load romfs.img时系统就出错。既然是at91的话,跟直接选ATMEL/AT91,然后编译,然后跑在skyeye有什么区别?这个问题和第1个有点相同。
发表于 2007-4-17 23:06:39 | 显示全部楼层

Re: 关于skyeye的几个基本概念。

[quote:46ae5b58ac="hgy1234"]1. 为什么要有GDB/ARMulator这种架构和开发板?既然可以选择Samsung/4510B,并且在skyeye.conf中把skyeye配置成samsun4510b的虚拟机,并且可以成功跑起uClinux。问题是能否源代码调试samsung4510b的uClinux内核映像,还是只有在ARMulator上才可以源代码调试?应该不至于。[/quote]
你看到的应该只是针对 at91 模拟的介绍。

[quote:46ae5b58ac="hgy1234"]
2. 能否调试uClinux上的应用层程序?设置断点、单步等?如何设置断点?
[/quote]
可以,请参考 gdb remote debug 的相关文档和 SkyEye 的相关文档。

[quote:46ae5b58ac="hgy1234"]
3. skyeye.conf中的hostip是什么意思?假如uClinux是按s3c4510b编译的,在rc中已经可以通过ifconfig eth0配置ip了,skyeye.conf应该只是给uClinux模拟网卡硬件就可以了,至于mac地址和ip应该是操作系统来配置,这里为什么还要配置hostip?做什么用?
[/quote]
hostip 是给运行模拟机的主机用的,也就是为省去你去配置 tap0 的功夫而已。

[quote:46ae5b58ac="hgy1234"]
4. GDB/ARMulator或者是GDB/Skyeye为什么硬件架构是和at91相同,即skyeye.conf的mach要用at91,如果用其他例如s3c4510b,则在load romfs.img时系统就出错。既然是at91的话,跟直接选ATMEL/AT91,然后编译,然后跑在skyeye有什么区别?这个问题和第1个有点相同。[/quote]
相同厂商不同型号 CPU 的串口、时钟、中断等都有不同,何况不同厂商。
回复

使用道具 举报

 楼主| 发表于 2007-4-18 11:31:37 | 显示全部楼层

Re: 关于skyeye的几个基本概念。

[quote:7c59ab81f2="AnthonyLee"][quote:7c59ab81f2="hgy1234"]
2. 能否调试uClinux上的应用层程序?设置断点、单步等?如何设置断点?
[/quote]
可以,请参考 gdb remote debug 的相关文档和 SkyEye 的相关文档。[/quote]
用gdbserver当然是可行的方案,但是,如果直接能通过skyeye来调试就更方便了,既然可以调试内核的话,整个映像又是内核+应用程序,没有道理不能直接在应用程序上设置端点。

[quote:7c59ab81f2="AnthonyLee"][quote:7c59ab81f2="hgy1234"]
3. skyeye.conf中的hostip是什么意思?假如uClinux是按s3c4510b编译的,在rc中已经可以通过ifconfig eth0配置ip了,skyeye.conf应该只是给uClinux模拟网卡硬件就可以了,至于mac地址和ip应该是操作系统来配置,这里为什么还要配置hostip?做什么用?
[/quote]
hostip 是给运行模拟机的主机用的,也就是为省去你去配置 tap0 的功夫而已。[/quote]
哦,原来如此,是不是就像vmware中的VMnet1和VMnet8的ip地址一样,和宿主ip以及uClinux的ip都不在同一个网段,而宿主ip与uClinux的ip则是同一个网段。

[quote:7c59ab81f2="AnthonyLee"][quote:7c59ab81f2="hgy1234"]1. 为什么要有GDB/ARMulator这种架构和开发板?既然可以选择Samsung/4510B,并且在skyeye.conf中把skyeye配置成samsun4510b的虚拟机,并且可以成功跑起uClinux。问题是能否源代码调试samsung4510b的uClinux内核映像,还是只有在ARMulator上才可以源代码调试?应该不至于。[/quote]
你看到的应该只是针对 at91 模拟的介绍。[/quote]

[quote:7c59ab81f2="AnthonyLee"][quote:7c59ab81f2="hgy1234"]
4. GDB/ARMulator或者是GDB/Skyeye为什么硬件架构是和at91相同,即skyeye.conf的mach要用at91,如果用其他例如s3c4510b,则在load romfs.img时系统就出错。既然是at91的话,跟直接选ATMEL/AT91,然后编译,然后跑在skyeye有什么区别?这个问题和第1个有点相同。[/quote]
相同厂商不同型号 CPU 的串口、时钟、中断等都有不同,何况不同厂商。[/quote]
这个问题好像没有回答到实质,相同厂商不同型号的东西当然有很多不同,我是想问从硬件的角度讲GDB/ARMulator/Skyeye和ATMEL/AT91有什么不同,我浏览了很多skyeye的文档,好像从一开始,skyeye的模拟架构就是仿at91,所以相近并不奇怪。可能是对ARMulator的机制不是很清楚,所以问题表达不是很达意,按我的理解,ARMulator应该是像GDB一样,把linux-2.4.x/linux跑起来的话,应该就可以调试了。至于架构,那是make menuconfig的事,选s3c4510或是at91,怎么还有一个armulator/skyeye,难道armulator/skyeye有其特有的cpu指令集,如果是,那么skyeye.conf里的mach应该是mach:skyeye/armulator才符合整个思路。
回复

使用道具 举报

发表于 2007-5-2 12:23:20 | 显示全部楼层

Re: 关于skyeye的几个基本概念。

[quote:edcda49172="hgy1234"][quote:edcda49172="AnthonyLee"][quote:edcda49172="hgy1234"]
2. 能否调试uClinux上的应用层程序?设置断点、单步等?如何设置断点?
[/quote]
可以,请参考 gdb remote debug 的相关文档和 SkyEye 的相关文档。[/quote]
用gdbserver当然是可行的方案,但是,如果直接能通过skyeye来调试就更方便了,既然可以调试内核的话,整个映像又是内核+应用程序,没有道理不能直接在应用程序上设置端点。

Re: 直接用Skyeye再调uCLinux上的应用程序,理论上可以,实践上需要一些工作,目前SkyEye没有做。

[quote:edcda49172="AnthonyLee"][quote:edcda49172="hgy1234"]
3. skyeye.conf中的hostip是什么意思?假如uClinux是按s3c4510b编译的,在rc中已经可以通过ifconfig eth0配置ip了,skyeye.conf应该只是给uClinux模拟网卡硬件就可以了,至于mac地址和ip应该是操作系统来配置,这里为什么还要配置hostip?做什么用?
[/quote]
hostip 是给运行模拟机的主机用的,也就是为省去你去配置 tap0 的功夫而已。[/quote]
哦,原来如此,是不是就像vmware中的VMnet1和VMnet8的ip地址一样,和宿主ip以及uClinux的ip都不在同一个网段,而宿主ip与uClinux的ip则是同一个网段。

[quote:edcda49172="AnthonyLee"][quote:edcda49172="hgy1234"]1. 为什么要有GDB/ARMulator这种架构和开发板?既然可以选择Samsung/4510B,并且在skyeye.conf中把skyeye配置成samsun4510b的虚拟机,并且可以成功跑起uClinux。问题是能否源代码调试samsung4510b的uClinux内核映像,还是只有在ARMulator上才可以源代码调试?应该不至于。[/quote]
你看到的应该只是针对 at91 模拟的介绍。[/quote]

[quote:edcda49172="AnthonyLee"][quote:edcda49172="hgy1234"]
4. GDB/ARMulator或者是GDB/Skyeye为什么硬件架构是和at91相同,即skyeye.conf的mach要用at91,如果用其他例如s3c4510b,则在load romfs.img时系统就出错。既然是at91的话,跟直接选ATMEL/AT91,然后编译,然后跑在skyeye有什么区别?这个问题和第1个有点相同。[/quote]
相同厂商不同型号 CPU 的串口、时钟、中断等都有不同,何况不同厂商。[/quote]
这个问题好像没有回答到实质,相同厂商不同型号的东西当然有很多不同,我是想问从硬件的角度讲GDB/ARMulator/Skyeye和ATMEL/AT91有什么不同,我浏览了很多skyeye的文档,好像从一开始,skyeye的模拟架构就是仿at91,所以相近并不奇怪。可能是对ARMulator的机制不是很清楚,所以问题表达不是很达意,按我的理解,ARMulator应该是像GDB一样,把linux-2.4.x/linux跑起来的话,应该就可以调试了。至于架构,那是make menuconfig的事,选s3c4510或是at91,怎么还有一个armulator/skyeye,难道armulator/skyeye有其特有的cpu指令集,如果是,那么skyeye.conf里的mach应该是mach:skyeye/armulator才符合整个思路。[/quote]

只是对文件系统的配置不同,内核是一样的,你可以研究一下uClinux目录下的vendor目录里面的东西
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-2 14:25 , Processed in 0.102889 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表