欢迎来到天天文库
浏览记录
ID:35457964
大小:77.94 KB
页数:5页
时间:2019-03-25
《嵌入式操作系统课程报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、华北水利水电学院课程报吿课程名称:姓名:学号:班级:专业:日期:嵌入式操作系统电子信息工程2012/12/27摘要:嵌入式计算机系统出现于20卅:纪60年代。多年来随着计算机技术、电子信息技术等的发展,嵌入式计算机的各项技术也蓬勃发展,市场迅猛扩大,嵌入式计算机已深入到生产和生活的每个角落。本文是在学习完嵌入式实时操作系统及应用开发后,从诸多知名嵌入式操作系统选择uC/OSII,并就其屮的任务的管理与调度进行的资料综述的课程报告。主要介绍了任务的定义、任务的管理、任务的调度和优先级反转的内容。引言:uC/OSII是一个可以基于ROM运行的
2、、可裁减的、抢占式、实吋多任务内核,具有高度可移植性,特别适合于微处理器和控制器,是和很多商业操作系统性能相当的实时操作系统(RTOS)o为了提供最好的移植性能,uC/OSII最大程度上是使用ANSI的C语言进行开发,并且己经移植到近40多种处理器体系上,涵盖了从8位到64位各种CPU。世界上已经有数千人在各个领域中使用uC/OS-II,这些领域包括:照相机行业、航空业、医疗器械、网络设备、自动提款机以及工业机器人等。任务是uC/OSII实时内核的最基本的调度单位,所以研究uC/OSII的任务管理与调度对于理解整个uC/OSII系统以及后
3、续的开发有很大的帮助。一、pC/OS-II的概述I1C/OS-II的前身是I1C/OS,最早出自于1992年美国嵌入式系统专家JeanJ.Labrosse在《嵌入式系统编程》杂志的5月和6月刊上刊登的文章连载,并把I1C/OS的源码发布在该杂志的BBS±ouC/OS-II是一个抢占式实时多任务内核。uC/OS-II是用ANSI的C语言编写的,包含一小部分汇编语言代码,使之可以提供给不同架构的微处理器使用。I1C/OS-II具有移植方便,构思巧妙,结构简洁精练,执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至2KB。
4、所以至今从8位到64位,uC/OS・II己经在40多种不同架构的微处理器上使用,几乎已经移植到了所有知名的CPU上。uC/OS-II全部以源代码的方式提供给读者,大约有5500行。CPU相关的部分使用的是针对Intel80x86微处理器的代码。虽然uC/OS-II可以在PC机上开发和测试,但是可以很容易地移植到不同架构的嵌入式微处理器上。严格一点地说uC/OS-II只是一个实时操作系统内核,它仅仅包含了任务调度,任务管理,时间管理,内存管理和任务间的通信和同步等基木功能。没有提供输入输出管理,文件系统,网络等额外的服务。但由于uC/OS-
5、II良好的可扩展性和源码开放,这些非必须的功能完全可以由用户自己根据需要分别实现。uC/OS-II目标是实现一个基于优先级调度的抢占式的实时内核,并在这个内核之上提供最基本的系统服务,如信号量,邮箱,消息队列,任务的管理与调度,内存管理,中断管理等。二、任务的管理与调度1、任务任务是一个具有独立功能的无限循环的程序段的一次运行活动,是实时内核调度的单位,具有以下特性:动态性、并行性、异步独立性。一个任务主要包括代码、数据、堆栈以及程序执行的上下文环境。任务所包含的程序通常为一个具有无限循环的程序,但任务和程序是两个不同的概念,他们的区别主
6、要是第一,任务能真实地描述工作内容的并发性,而程序不能;第二,程序是任务的组成部分;第三,程序是静态的,任务是动态的;第四,任务有生命周期,有诞生、有消亡,是短暂的,而程序是相对长久的;第五,一个程序可对应多个任务,反之亦然;第六,任务具有创建其他任务的功能,而程序没有。任务上下文环境(context)包括了实吋内核管理任务、以及处理器执行任务所需要的所有信息,如任务优先级、任务的状态以及处理器的各种寄存器的内容。任务的上下文环境通过任务控制块(TaskControlBlock,TCB)来体现。按照到达情况的可预测性,任务可以划分为:周期
7、任务和非周期任务;按照重要程度,又可分为:关键任务和非关键任务。任务的特性可以通过优先级、周期、计算吋间、就绪时间和截止时间等参数来描述。2、任务管理uC/OS-II中最多可以支持64个任务,分别对应优先级0〜63,其中0为最高优先级。63为最低级,系统保留了4个最高优先级的任务和4个最低优先级的任务,所有用户可以使用的任务数有56个。在多任务系统中,任务要参与资源的竞争,只有在所需要的资源都得到满足的情况下才能得到执行。因此,任务拥有的资源的情况是不断变化的,导致任务状态也表现出不断变化的特性。不同的实时内核实现方式对任务状态的定义不尽
8、相同,但是都可以概括为三种基本的状态:等待(waiting)>就绪(ready)、执行(running)o任务在不同的状态之间进行转换,即任务状态的变迁。任务管理是通过对任务控制块(TaskC
此文档下载收益归作者所有