- 1、本文档共49页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式系统概论 东软人才实训中心 第一章:嵌入式系统概论 嵌入式系统通常是形式多样、面向特定应用的。 嵌入式系统得到多种类型的处理器和处理器体系结构的支持。 嵌入式系统通常极其关注成本。 嵌入式系统有实时性和可靠性的要求。 嵌入式系统使用的操作系统一般是适应多种处理器、可剪裁、轻量型、实时可靠、可固化的嵌入式操作系统。 嵌入式系统开发需要专门工具和特殊方法。 术语 Copyright ? 2008 版权所有 东软集团 尤其在操作系统中,内核和用户层交户数据延时。 通用C语言的程序 这里指在PC机或工作站上运行的C语言程序。 通用C语言的启动程序 搭载了Windows 或UNIX等通用OS的PC机或工作站,硬件的初始化等由OS来完成。启动程序以固定的形式要求OS进行一定的操作,所以用户没有必要制作自己的启动程序。通常,编译器会自动完成启动程序。 启动程序 是对微处理器和外围设备进行初始化,并调用main( )函数的程序。 OS(Operating System) 为系统的各种各样的要求提供服务的基本软件。分为提供应用软件的运行环境和开发环境的通用OS和可以充分发挥特定的目标系统性能的嵌入式OS。 嵌入式C程序 与带有应用程序的运行环境的PC机不同,在控制设备时必须与硬件配合,并将控制程序嵌入到微处理器中。搭载了该 微处理器的系统一般称为“嵌入式系统”,用于程序开发的C语言称为“嵌入式C语言”,作为嵌入对象的系统称为“目标系统”。 用于嵌入式系统的启动程序 用于嵌入式系统的启动程序必须对适合于目标系统的硬件和数据进行初始化。所以,为了配合目标系统,用户要制作自 己的启动程序。 一般情况下,在支持微处理器的编译器中会捆绑启动程序的例程。 PC机或工作站的存储空间 对于通用C语言的程序,OS将程序和数据从外部存储设备载入主存储器(RAM)中,在RAM中运行。也就是说,代码部/数据部/堆栈部都存在于相同的主存储器(RAM)中。所以,用户没有必要区分ROM和RAM。 嵌入式系统的存储器 对于没有通用OS的嵌入式C语言程序,如果不将代码部设置到只读的ROM,不将数据部/堆栈部设置到随机存取的RAM,系统就不能运行。 搭载通用OS的系统 通用C语言程序在访问硬件时使用准备好的输入输出库函数对硬件进行操作。 嵌入式系统 嵌入式C语言程序在访问硬件时必须编写直接操作硬件的程序。 输入输出库函数 为了使用PC标准键盘和显示器等,编译器准备了输入输出函数群,该函数群称为标准输入输出库函数。应用程序使用这些库函数可以访问标准的硬件。另外,为了能够用程序控制添加的设备,设备生产商会提供专用的输入输出库函数。在这里,将这两种库函数统称为输入输出库函数。 无处不在的计算机是计算机与使用者的比率达到和超过100:1的阶段 无处不在的计算机包括通用计算机和嵌入式计算机系统 在100:1比例中95%以上都是嵌入式计算机系统,并非通用计算机 嵌入式设备无处不在,但桌面系统还依然有用 多任务系统 .多个顺序执行的程序并行运行。 .宏观上看,所有的程序同时运行,每个程序运行在自己独立的CPU上。 .实际上,不同的程序是共享同一个CPU和其它硬件。因此,需要RTOS来对这些共享的设备和数据进行管理。 .每个程序都被编制成无限循环的程序,等待特定的输入,执行相应的任务等。 .这种程序模型将系统分成相对简单的,相互合作的模块。 优点 .将复杂的系统分解为相对独立的多个线程, 达到“分而制之”的目的,从而降低系统的复杂性。 .保证系统的实时性。 .系统的模块化好,提高系统的可维护性。 缺点 .需要采用一些新的软件设计方法。 .需要增加功能:线程间的协调,同步和通信功能。 .需要对每一个共享资源互斥。 .导致线程间的竞争。 .需要使用RTOS,RTOS要增加系统的开销。 1.7.4 按确定性来分类 根据确定性的强弱,可将嵌入式系统分为硬实时、软实时系统: 硬实时:系统对系统响应时间有严格的要求,如果系统响应时间不能满足,就要引起系统崩溃或致命的错误。 软实时:系统对系统响应时间有要求,但是如果系统响应时间不能满足,不会导致系统出现致命的错误或崩溃。 1.7.5 按嵌入式系统软件复杂程度来分类 循环轮询系统 有限状态机系统 前后台系统 单处理器多任务系统 多处理器多任务系统 1.7.5.1 循环轮询系统 initialize() while(true) { if (condition_1) action_1(); if (c
文档评论(0)