欢迎来到天天文库
浏览记录
ID:40225516
大小:871.00 KB
页数:188页
时间:2019-07-27
《嵌入式系统软件》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、嵌入式系统软件1.嵌入式操作系统嵌入式操作系统是个集合,而且是个无限集合监控程序常规操作系统(红外线紫外线)一维和多维嵌入式操作系统常常有实时要求早期:嵌入式操作系统=实时操作系统近期:1)手持计算机和掌上计算机的出现;2)CPU速度的提高;3)常规操作系统增加实时进程调度的支持,如POSIX.4嵌入式操作系统<>实时操作系统许多嵌入式操作系统的内核是微内核结构许多嵌入式操作系统都不带磁盘根本不支持文件系统结构上为了设备驱动而支持文件系统,但不支持文件系统的文件存储功能许多嵌入式操作系统不采用存储管理技术,即不支持虚
2、拟存储技术许多嵌入式操作系统不划分“系统空间”和“用户空间”操作系统的“内核”与外围应用程序之间不再有物理的边界;系统中所谓“进程”实际上全都是内核线程静态连接、系统调用、进程调度/切换对任何一个应用程序做细微的修改,都得重新生成整个系统,并且“下载”之;系统调用的界面太庞大;共享变量的访问,需要谨慎对待;把通用操作系统上的应用移植过来需考虑“可重入”的问题;不分系统空间和用户空间<>必须静态连接如DOS、CP/M的INT21不分系统空间和用户空间<>不能用页面映射技术但只用于不同进程之间,而非不同空间之间即使采用了存储管
3、理,基本上都不采用页面交换技术重启动技术(watchdog)2.RTOS是否实时一方面是多大程度上充分发挥硬件潜力,即综合速度快慢的问题;另一方面同时也是反映的速度在多大的程度上得到保证的问题中断延迟(InterruptLatency)中断不可嵌套LINUX的BottomHalf中断可嵌套:优先级中断大多微处理器不支持;LINUX不支持;UNIX支持与指令集有关DMA操作有关保证系统调用的原子性有关调度延迟(SchedulingLatency)中断处理程序进程处理一般调度算法(RoundRobin)不能及时选中基于优先级调
4、度算法,一般能及时选中如果目标进程优先级低呢?可剥夺调度和不可剥夺调度LINUX是属于什么调度?Linux既不是完全的可剥夺,也不是完全的不可剥夺上下文切换延迟(ContextSwitchLatency)大小取决于CPU和操作系统采用MMU>不采用MMU只要发生调度,就能选中目标进程吗?根据时间片的耗用调整优先级拉开距离,分等级对实时进程而言,“应该没有问题”不够。是否可以不用中断、也不用调度,回到最简单的“监控程序”?实时性简介对于什么是实时系统,POSIX1003.b作了这样的定义:指系统能够在限定的响应时间内提供所需
5、水平的服务实时系统根据其对于实时性要求的不同,可以分为软实时和硬实时两种类型一个计算机系统为了提供对于实时性的支持,它的操作系统必须对于CPU和其他资源进行有效的调度和管理,即实时调度实时调度分类各种实时操作系统的实时调度算法从调度策略上可以分为如下三种类别:基于优先级的调度算法(Priority-drivenscheduling-PD)、基于CPU使用比例的共享式的调度算法(Share-drivenscheduling-SD)、以及基于时间的进程调度算法(Time-drivenscheduling-TD)从调度方式上来讲
6、可以分为:可抢占、不可抢占;从时间片来分:固定时间片、可变时间片实时性改造对操作系统实时性的扩展可以从两方面进行:向外扩展和向上扩展向外扩展是从范围上扩展,让实时系统支持的范围更广,支持的设备更多向上扩展是扩充操作系统内核,从功能上扩充系统的实时处理实时多任务OS-RTOS单片机无os主程序RTOS资源包装API可移植(只要1-4%)实时系统在实时计算中,系统的正确性不仅仅依赖于计算的逻辑结果而且依赖于结果产生的时间响应时间限定可预知实时操作系统与I/O实时操作系统还需要有效的中断处理能力来处理异步事件和高效的I/O能力来
7、处理有严格时间限制的数据收发应用。就是:●系统应该有在事先定义的时间范围内识别和处理离散的事件的能力。●系统能够处理和存储控制系统所需要的大量的数据。周期性的系统非周期性系统硬实时系统灾难后果软实时系统性能下降RTOS与分时系统事件响应时间限定事件随机到达系统可确定性Rtos的历史1)早早期的监控系统系统init时钟简单的任务调度2)专用实时OS依赖于特定硬件移植性不好3)通用RTOS嵌入式软件开发平台RTOS标准化可移植设备独立RTOS基本struct实时多任务core任务管理:多任务和基于优先级的任务调度定时器:系统的
8、实时时钟服务,以及各个定时任务的调入等Mem:管理系统的内存资源,如DRAM,ROM,FLASHRAM等资源管理:管理系统的各种资源如系统的各种设备,端口,中断等;事件和消息管理:管理各种系统级的事件,如实时中断响应,各种异常等;任务间同步和通信(信号量和邮箱等)以及各种系统消息和应用程序之间的通讯RT
此文档下载收益归作者所有