《嵌入式实时操作系统uC OS-2教程》课件第2章.ppt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式实时操作系统uC OS-2教程 嵌入式实时操作系统uC OS-2教程课件第2章 嵌入式 实时 操作系统 uC OS 教程 课件
- 资源描述:
-
1、第2章 嵌入式操作系统中的基本概念第2章 嵌入式操作系统中的基本概念2.1 前后台系统前后台系统2.2 调度调度 2.3 临界区临界区 2.4 进程与线程进程与线程2.5 任务与多任务任务与多任务 2.6 任务切换任务切换 2.7 死锁死锁 2.8 不可剥夺型内核不可剥夺型内核 2.9 可剥夺型内核可剥夺型内核 2.10 可重入性可重入性 2.11 优先级反转优先级反转 2.12 事件事件 2.13 互斥互斥 2.14 同步同步 2.15 通信通信 2.16 对存储器的要求对存储器的要求 习题习题 第2章 嵌入式操作系统中的基本概念2.1 前前后后台台系系统统如图2.1所示,前后台系统一般由前
2、台(Foreground)和后台(Background)两部分程序组成。后台是一个无限循环的应用程序,循环中调用相应的任务函数完成相应的操作,各个任务依次运行,没有调度,运行的次序不能改变。前台是中断服务程序,处理异步事件。后台一般也叫任务级,前台也叫中断级。时间相关性要求很强的关键操作一定要靠中断服务来保证,但是中断服务提供的信息并不能马上得到处理,必须要一直等到后台程序运行到相应的处理任务时才能处理,这种系统对处理信息的及时性比较差,最坏情况取决于整个循环的执行时间。这个指标称做任务级响应时间。第2章 嵌入式操作系统中的基本概念由于循环的执行时间不是常数,因此程序经过某一特定部分的准确时间
3、也是不能确定的。如果程序修改了,循环的时序也会受到影响。第2章 嵌入式操作系统中的基本概念图2.1 前后台系统 第2章 嵌入式操作系统中的基本概念前后台系统也称为超循环系统。一般不复杂且实时性要求不高的小系统很适合采用前后台系统,例如微波炉、电话机、玩具等。在另外一些基于省电的应用中,由于平时微处理器处在停机状态,所有的事都靠中断服务来完成,因此也常常采用前后台系统模式。第2章 嵌入式操作系统中的基本概念2.2 调调 度度调度是内核的主要职责之一,它为任务分配资源和时间,决定任务运行的次序,从而使系统满足特定的性能要求。基本的调度算法有先来先服务(FCFS)、最短周期优先(SBF)、优先级法(
4、Priority)、轮转法(Round-Robin)等。调度的基本方式有可剥夺型(占先式)和不可剥夺型(非占先式)。多数实时内核是基于优先级调度的多种方法的复合。第2章 嵌入式操作系统中的基本概念2.3 临临 界界 区区嵌入式系统中的资源是指为任务所占用的任何实体,它可以是硬件设备,如打印机、键盘、显示器、I/O端口、RAM、ROM、中断源和时钟等,也可以是软件,如变量、结构和数组等。共享资源是指被两个或者更多任务所使用的资源。第2章 嵌入式操作系统中的基本概念任何时候都只允许一个任务访问的资源称为临界资源,用于访问临界资源的代码段称为临界区或临界段。这部分代码不允许多个并发任务交叉执行,否则
5、会产生严重后果,比如进入中断后的现场保护代码等。为确保临界区代码的安全执行,在进入临界区之前要关中断,而临界区代码执行完以后要立即开中断。第2章 嵌入式操作系统中的基本概念2.4 进进程程与与线线程程22.4.1 进程的概念进程的概念在现代计算机系统中,为了充分利用系统资源,提高CPU效率,通常采用多道程序设计技术,使CPU不再为某一程序独占使用。多道程序设计即指允许多个程序同时驻留计算机内存并运行。在多道程序环境下,程序的并发运行代替了原来程序的顺序运行,使得程序与计算不再一一对应,各个程序之间由于需要使用共享系统资源,往往存在相互制约的关系,程序的活动也不再处于一个封闭的系统内,而是出现了
6、许多新的特征,即独立性、并发性、动态性和相互制约性。第2章 嵌入式操作系统中的基本概念在这种情况下,程序这个静态概念已经不能准确地描述程序活动的内涵了。因此,20世纪60年代中期的MULTICS系统的设计者和以E.W.Dijkstra为首的T.H.E系统的设计者广泛地使用“进程”(Process)这一术语来描述系统和用户的程序活动,而IBM公司的CTSS/360系统使用了另一术语“任务”(Task),两者意义相同。第2章 嵌入式操作系统中的基本概念进程是操作系统中最基本、最重要的概念,但目前还没有出现一个十分确切、令人满意的统一定义。如下是几种常见的定义:(1)E.W.Dijkstra定义:行
7、为的一个规则叫做程序,程序在处理器上执行时所发生的活动叫做进程。(2)Madnick和Donovan定义:进程是可以与其它进程并发执行的计算部分。(3)J.H.Saltzer定义:一个进程是由伪处理机执行的一个程序。第2章 嵌入式操作系统中的基本概念进程是操作系统中可以独立运行的单位,通常由三部分组成,即程序、数据集合和进程控制块。进程具有两种属性:一是可拥有资源的独立单位;二是可以独立调度和分配的基本单位。正是因为同时具备这两个基本属性,进程才成为能够独立运行的基本单位,从而构成进程并发执行的基础。第2章 嵌入式操作系统中的基本概念2.4.2 线程的概念线程的概念为了提高计算效率,提出了进程
8、的概念,但随着计算机技术的飞速发展,人们逐步发现进程拥有较多的资源,在创建、撤销和切换的过程中,系统为之付出的开销还是很大,进程这一概念已经不能满足高效率地使用系统资源的需求了。在最大限度地减小系统开销的前提下,如何使多个程序更好地并发执行,已经成为操作系统所追求的重要目标。于是,人们想到将进程的两个属性分离开来,由操作系统分别处理,使具有调度和分配属性的基本单元不再拥有独立的资源,使之轻装运行,而拥有独立资源的基本单位,又不频繁地进行切换。第2章 嵌入式操作系统中的基本概念在这种思想的指导下,于20世纪80年代中期提出了比进程更小的独立运行单位线程的概念。近年来,线程的概念已广为应用,不仅在
展开阅读全文