- 1、本文档共93页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
小结 国内普遍认同的定义: 以特定应用为中心、以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、功耗、成本、体积等严格约束的专用计算机系统。 嵌入式系统的核心技术思想: 以通用计算机系统为参照,以满足特定应用要求为准则,采用各种可能的方法、技术和产品,使专用电子信息系统达到最优的性能/价格比。 嵌入式系统软件开发 1、嵌入式系统软件与通用系统中软件的比较 2、实时多任务操作系统 3、嵌入式系统软件的组织结构 4、存贮器管理 5、多任务 6、跳出软件、重新审视多任务 1、嵌入式系统软件与通用系统中软件的比较 (1)相同之处 软件系统的层次化 结构化程序设计方法 软件的可维护性、鲁棒性 嵌入式系统的软件设计应当努力学习和采 用通用计算机系统中有关软件设计的先进思想 和成功方法。 (2)不同之处 a、程序编译和程序执行是在两个不同的平 台上 宿主机端(Host)和目标端(target) 开发系统、开发工具 软仿真和硬仿真 b、操作系统并非嵌入式系统的必备部分 c、输入输出界面不同 台式通用计算机系统 键盘、Mouse、 CRT或LCD显示器 d、可利用资源有限 程序空间和数据空间都有限,一般没有 虚拟内存 HOST与TARGET e、常常必须用汇编语言编程,跟硬件打交道 和硬件打交道,常表现为对硬件地址的操作变量和变量 名,地址和寻址方式,地址寄存器; 程序是否结构化,是由设计方法决定的,而不是由程序 设计语言决定的汇编语言同样应该坚持采用结构化的 程序设计方法; 效率与程序结构化的矛盾妥协。 一般情况下,用汇编语言编写的子程序应当在入口处完整地保护现场,退出子程序前恢复现场,子程序内的局部变量按规定方式向系统申请并释放,以保证子程序调用的正确性。 有关技术可参照“编译原理”: 希望尽可能提高指令执行效率时,可以部分保存现场,子程序确实未用到的部分可以不压栈。 但这种程序非常容易出现隐蔽性很强的错误,可读性和可维护性极差,一定要谨慎使用。 建议:作为通用的子程序模块,一定严格保护现场,只被有限制调用的专用子程序块,可以为了效率而尽可能减少保留现场操作,但必须有明显标识和使用规则,防止被误用。 2、实时多任务操作系统 (1)操作系统的功能 (2)嵌入式RTOS的体系结构 (3)嵌入式操作系统的代价 (4)嵌入式系统中是否选用RTOS (5)嵌入式系统在三个层面上使用操作系统的 技术或方法 (1)操作系统的功能 a、系统资源的管理 多任务管理、IO管理、存贮器管理 b、硬件功能的扩充 用户的实时应用程序要使用某种资源,例如,从磁盘中读取一批数据,必须向实时操作系统提出申请,把读取数据的具体工作,转交给实时操作系统去执行。然后等待(可能需要排队)实时操作系统的执行结果。当实时操作系统读出它所需要的数据之后,它再继续执行。 这样一来,用户的实时应用程序,使用资源的工作变变得十分简单。向操作系统提交使用资源的订单(申请使用资源的请求),然后等待,再从实时操作系统取回所需资源。至于这些资源是如何得到的,用户的实时程序可以不管。大大地方便了用户实时程序的编程工作。 本来,读取磁盘数据的工作,牵涉到很多细节。必须给出磁头号、发出命令移动磁头到给定的磁道位置、给出扇区号、等待磁头和扇区移动到合适位置,才读出数据。如果是软件盘,在读写数据之前,还要注意步进电机的开关状态。如果电机是关闭的,在读写之前,要先启动它,如此等等,十分繁杂。 而现在,用户的实时程序只要向实时操作系统提出如下的请求: READ(fp、buf、count); Fp是要读取的文件说明符或文件句柄,buf是存放所读取数据的缓冲区,count是要读取的字节数。其余的都是实时操作系统的事情了,它只要等着使用buf中的数据。 这样一来,实时操作系统就好比一台扩充了功能的机器,它比底层硬件的功能更强、更容易编程。
文档评论(0)