Embedded 版 (精华区)
发信人: he (无情的雨), 信区: Embeded_system
标 题: 嵌入式系统以及如何构造一个嵌入式系统概览-2(转载)
发信站: 哈工大紫丁香 (2001年05月16日13:33:49 星期三), 转信
开发工具--打破了传统仿真器的阻碍
在开发嵌入式系统中极为关键的一项是有各种可用的工具.就像任何一个行当一样,好的
工具有助于快捷而圆满地完成任务;在嵌入式系统开发的不同阶段,可能要用到不同的工
具.
传统上,开发嵌入式系统的首选工具是仿真器。这是一块比较昂贵的设备,一般插于微处
理器和它的总线之间的电路中,从而让开发者监视和控制所有输入和输出 微处理器的各
种活动和行为.在装配起来,可能有一些困难,并且由于它们的侵入性,装上后可能造成不
稳定 的性能;尽管这样,它们却能在总线级上给出一个系统正在发生什么的清晰的描绘并
排除了很多在硬件和软件 接口最底层上的猜测工作.
在以往,一些工程项目依赖它--经常在开发周期中的各个阶段--作为主要的调试工具.不
过,一旦当编制的软件 有能力支持一个串型口的时候,大量的调试可以不用ICE而使用别
的方法来完成.同样,大部分新一代的嵌入式系统 采用蛮像食谱式的微处理器设计;通信
工作的启动代码常常是具备的以使串型口尽快地工作,这意味着开发者能 在没有ICE的情
况下也能很好地进展;去掉了ICE,从而降低了开发成本.一旦串型口可以工作起来,便能用
于支持那 些日渐复杂的开发工具的相关(软件)层LINUX基于GNU C 编译器;后者作为GNU工具集的一组成部分,和源码级调试器gdb一起工
作,提供了在开发一个嵌入式 LINUX系统中要用到的所有软件工具.下面是在为一个新的
硬件开发一个新的嵌入式LINUX系统时要用到的典型调试 工具的序列和步骤:
1:写出或移植一段启动代码(后面再详细讨论);
2:写一段代码在串型口上输出一字符串,像"Hello,World!"(其实,我更喜欢人类发明电话
后,通过电话说的第一句话"Watson, come here I need you");
3:移植gdb目标码使之能在串型口上工作.这将允许向另一台正运行着gdb程序的LINUX主
机会话;你只不过要告诉 gdb是通过串型口调试该目标程序;gdb通过串型口与你的测试计
算机上的gdb目标码会话并给出全部C源码级的 调试信息.你也可以利用这一(通信)能力
把附加的代码下载到RAM或闪存中.
4:借助gdb,执行余下的直到LINUX内核开始接管之前的所有硬件和软件的初始化代码.
5: 一旦LINUX内核启动后,上述的串型口就成为LINUX的控制台端口并可以利用它的便利
来进行后继开发过程.再使用gdb的内核调试版本kgdb.这一步常常不是必需的.如果你有
一个网络连接,比如,10BaseT,你或许会想让它紧接着工作起来.
6: 如果你的目标平台运行的Linux kernel是全功能的(即:未经删减过功能),你可以利用
gdb或其图形化替代品如xgdb去调试你的应用进程.
--
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.235.250]
--
※ 修改:·he 於 05月16日13:42:31 修改本文·[FROM: 202.118.235.250]
※ 转载:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: 202.118.235.250]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.943毫秒