程序的执行管理课件_第1页
程序的执行管理课件_第2页
程序的执行管理课件_第3页
程序的执行管理课件_第4页
程序的执行管理课件_第5页
已阅读5页,还剩83页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第五章程序的执行管理何小其1第五章程序的执行管理何小其1第五章具体内容5.1程序的执行级别5.2程序执行管理基本原则5.3程序执行周期的确定5.4时间表5.5基本级的队列调度2第五章具体内容5.1程序的执行级别2执行管理程序(1)执行管理程序是面向实时交换的操作系统。执行管理程序功能 (1)进程管理; (2)处理机管理; (3)存储器管理; (4)I/O设备管理; (5)文件管理;

3执行管理程序(1)执行管理程序是面向实时交换的操作系统。3执行管理程序(2)进程管理 操作系统对多任务的调度管理。处理机管理 对处理机内部控制器的配置管理。4执行管理程序(2)进程管理4执行管理程序(3)存储器管理 即内存管理,操作系统利用内存分配算法,使用内存分区、内存池和内存块等概念来管理内存,对外向用户提供一些内存操作API函数,方便用户创建内存分区和申请内存块。由于嵌入式系统的实时性和可靠性要求,在程序设计时应尽量避免使用动态内存分配。5执行管理程序(3)存储器管理5执行管理程序(4)6执行管理程序(4)6执行管理程序(5)I/O设备管理 嵌入式操作系统为I/O设备提供简单、统一、与任何设备无关的接口。这些设备包括:面向字节设备,例如显示终端或通信线随机块存取设备,例如磁盘虚拟设备,例如程序内部的通信管道和套接字控制和监视设备,例如数字和模拟I/O设备可以访问远端设备的网络设备7执行管理程序(5)I/O设备管理7执行管理程序(6)文件管理 嵌入式操作系统在文件系统和设备驱动程序之间使用一种标准的I/O操作接口。这使得操作系统可以运行多个相同或不同种类的文件系统。依据这些标准接口协议,用户可以为嵌入式操作系统编写用户自己的文件系统,并可以将文件系统与设备驱动程序自由组合。8执行管理程序(6)文件管理8执行管理程序(7)嵌入式系统支持的几种文件系统(以VXWORKS为例)dosFs文件系统 适用于块存取设备(磁盘)的实时操作,与MS-DOS文件系统兼容。rawFs文件系统 提供一种简单的原始文件系统。该文件系统将磁盘当作一个单独的大文件。tapeFs文件系统 适用于不使用标准文件或目录结构的磁带设备。实际上将磁带盘当作一个原始设备并将整个磁带盘当作一个大文件。9执行管理程序(7)嵌入式系统支持的几种文件系统(以VXWOR执行管理程序(8)cdromFs文件系统 允许应用程序从按造ISO9660标准文件系统格式化的CD-ROM设备上读取文件。TSFS目标服务器文件系统 通过Tornado软件中的目标服务器,使得目标机可以访问主机系统中的文件。TrueFFS文件系统 支持闪存设备的文件读、写。10执行管理程序(8)cdromFs文件系统10程序的执行管理实质程序的执行管理的实质就是把程序划分为几种不同的优先级,按实时性要求调度各程序的执行,实际就是对处理机的管理。11程序的执行管理实质程序的执行管理的实质就是把程序划分为几种不嵌入式操作系统的任务(1)嵌入式操作系统提供多任务机制,用于响应现实世界中多重的、离散的时间。多任务机制构造出多线程并发执行的假象,但实际上,系统内核是根据某种调度算法交错执行的。12嵌入式操作系统的任务(1)嵌入式操作系统提供多任务机制,用于嵌入式操作系统的任务(2)任务的上下文 每个任务拥有各自的上下文,即拥有各自的CPU环境和系统资源(指任务被内核调度执行时所使用的资源)。上下文切换时,任务的上下文保存在任务控制块(TCB)中。13嵌入式操作系统的任务(2)任务的上下文13嵌入式操作系统的任务(3)任务的上下文包括:任务的执行点,即任务的程序计数器;CPU中的寄存器和浮点寄存器(可选);动态变量和函数调用所需的堆栈;I/O操作分配的标准输入、标准输出和标准错误输出操作;一个延时定时器;一个时间片定时器;内核控制结构;信号句柄;用于调试和性能监视的值。14嵌入式操作系统的任务(3)任务的上下文包括:14嵌入式操作系统的任务(4)任务状态转变状态符号描述就绪(READY)该状态时任务仅等待CPU的状态,不等待其他任何资源阻塞(PEND)任务由于一些资源不可用而被阻塞时的状态睡眠(DELAY)处于睡眠时的任务状态挂起(SUSPEND)该状态时任务不执行,主要用于调试。挂起仅仅约束任务的执行,并不约束状态的转变。表5-1任务状态符号15嵌入式操作系统的任务(4)任务状态转变状态符号描述就绪(RE嵌入式操作系统的任务(5)阻塞就绪睡眠挂起Taskinit()图5-0-0任务状态转换16嵌入式操作系统的任务(5)阻塞就绪睡眠挂起Taskinit(程序调度方法(1)基于优先级的抢占式任务调度 使用基于优先级的抢占式任务调度算法,当一个新任务优先级高于系统当前执行任务的优先级时,它将抢占CPU执行。因此系统内核将确保CPU分配给就绪状态的具有高优先级的任务执行。17程序调度方法(1)基于优先级的抢占式任务调度17程序调度方法(2)T1T2T3T2T1时间优先级高低=任务结束=任务抢占图5-0-1优先级抢占18程序调度方法(2)T1T2T3T2T1时间优先级高低=任务程序调度方法(3)基于优先级的抢占式任务调度的缺点 当多个相同优先级的任务需要共享一台处理器时,如果某个执行的任务永不阻塞,那么它将一直独占处理器,其他相同优先级的任务都没有机会执行。19程序调度方法(3)基于优先级的抢占式任务调度的缺点19程序调度方法(4)轮转式调度 当所有相同优先级的任务处于就绪状态时,轮转算法趋向于平均使用CPU。轮转调度算法对所有相同优先级的任务,通过时间片获得相同的CPU处理时间。在一组相同优先级的任务里,每个任务将在规定的时间间隔或时间片内执行。20程序调度方法(4)轮转式调度20程序调度方法(5)T4T3T2时间优先级高低=任务结束=任务抢占T2T3T2T1时间片图5-0-2轮转调度21程序调度方法(5)T4T3T2时间优先级高低=任务结束=5.1程序的执行级别5.1.1程序级别程序级别(按照实时性要求分)故障级周期级基本级225.1程序的执行级别5.1.1程序级别程序级别故障级周一、故障级故障级主要负责识别故障并紧急处理之。故障级对时间要求非常严格,一般要求一旦设备故障,就应立即进行故障处理,所以它的执行级别最高。23一、故障级故障级主要负责识别故障并紧急处理之。23二、周期级也叫时钟级,严格按周期执行程序,如拨号脉冲扫描程序。各种扫描程序以及超时判断程序都属于周期级。周期级程序在定时中断的间隔执行,其周期性由定时中断保证。不同的周期级程序,其执行周期是定时中断的整数倍。24二、周期级也叫时钟级,严格按周期执行程序,如拨号脉冲扫描程序三、基本级程序基本级程序:实时要求低,没有周期性要求的程序。可以等待插空执行,可以由队列启动,如内部处理程序。25三、基本级程序基本级程序:实时要求低,没有周期性要求的程序。程序执行级别故障级程序优先级最高;其次是周期级程序;基本级程序级别最低。故障级周期级基本级优先级高低26程序执行级别故障级程序优先级最高;故障级周期级基本级优先级高CPU处理流程(1)正常情况下,由定时器发出定时中断;(2)启动中断服务程序;(3)由中断服务程序调度,首先执行周期级程序;(4)中断返回,转而执行基本级程序,等待下一次定时中断的到来。 以上过程中,只要有故障,立即进行现场保护,进入故障级程序。27CPU处理流程(1)正常情况下,由定时器发出定时中断;2728285.1.2空余时间从基本级程序处理完,到下一个定时中断到来,一般都有一段空余时间(见图5.1)。空闲时间的长短随话务量的变化而变化。为了避免CPU超负荷运算,规定处理机的呼叫处理能力应使得在忙时的大多数情况下,能在下次时钟到来前执行完基本级的处理任务,也就是存在一点空余时间。295.1.2空余时间从基本级程序处理完,到下一个定时中断到处理机负荷组成与话路无关部分,例如执行管理程序的执行。周期级程序,执行时长与话路设备数及话务量有关。基本级程序,主要决定于话务量。可推迟性工作,如例行测试和查核程序。对于此类工作,空余时间长就多执行一些,空闲时间少就少执行或不执行。30处理机负荷组成与话路无关部分,例如执行管理程序的执行。3031315.2程序执行管理基本原则(1)基本级一般不在中断服务程序中执行,基本级程序可以看成是处理机所执行的基本程序。(2)基本级在执行中可被中断插入而转入中断处理程序;(3)中断级在执行中,只允许高级别中断进入;(4)基本级被时钟中断插入后的恢复处理应体现基本级中的级别。325.2程序执行管理基本原则(1)基本级一般不在中断服务程序333334345.3程序执行周期的确定周期级程序包括输入处理和输出处理。输出处理周期确定 如果话路设备动作时间为t(ms),则话路设备驱动输出程序的周期可稍大于t(ms),一般与定时中断周期成整数倍。输入处理周期确定 其扫描周期取决于交换机容量、设备数量、计算机的处理能力、外设参数等等。若取8ms中断一次,则周期级程序的执行周期一般取8ms的整数倍,如位间隔的扫描周期96ms,双音频号码识别周期16ms等。355.3程序执行周期的确定周期级程序包括输入处理和输出处理。5.4时间表周期性执行的程序有不同的执行周期,如何按照预定的计划,有条不紊地执行各种程序,以满足各种程序的不同执行周期的要求。采用时间表是一种简便而有效的方法。365.4时间表周期性执行的程序有不同的执行周期,如何按照预定5.4.1基本概念图5.5表示时间表的基本概念。纵向对应时间,每向下进展一行代表一定的时间单位,实际上相当于时钟中断的周期。横向代表所管理的程序类别,每一位代表一种程序,总位数可为计算机字长的整数倍,故一张时间表可容纳的程序类别数等于字长的整数倍。375.4.1基本概念图5.5表示时间表的基本概念。3738385.4.2时间表实例假定时间表字长为16位,各周期级程序及其启动周期如下:拨号脉冲计数程序,启动周期为8ms;双音频号码识别程序,启动周期为16ms;位间隔识别程序,启动周期为96ms;摘机扫描程序,启动周期为96ms;送音控制程序,启动周期为48ms;时间计数器清零,启动周期为96ms;测试程序,启动周期为8ms;395.4.2时间表实例假定时间表字长为16位,各周期级程序及404041415.5基本级的队列调度基本级中的一部分具有周期性,可以用时间表控制执行。实际上,基本级中的大部分处理任务没有周期性,可采用队列处理。一般同一级的处理要求按先到先处理的原则。基本级队列处理的概念可用图5.8说明。425.5基本级的队列调度基本级中的一部分具有周期性,可以用时4343END!44END!44第五章程序的执行管理何小其45第五章程序的执行管理何小其1第五章具体内容5.1程序的执行级别5.2程序执行管理基本原则5.3程序执行周期的确定5.4时间表5.5基本级的队列调度46第五章具体内容5.1程序的执行级别2执行管理程序(1)执行管理程序是面向实时交换的操作系统。执行管理程序功能 (1)进程管理; (2)处理机管理; (3)存储器管理; (4)I/O设备管理; (5)文件管理;

47执行管理程序(1)执行管理程序是面向实时交换的操作系统。3执行管理程序(2)进程管理 操作系统对多任务的调度管理。处理机管理 对处理机内部控制器的配置管理。48执行管理程序(2)进程管理4执行管理程序(3)存储器管理 即内存管理,操作系统利用内存分配算法,使用内存分区、内存池和内存块等概念来管理内存,对外向用户提供一些内存操作API函数,方便用户创建内存分区和申请内存块。由于嵌入式系统的实时性和可靠性要求,在程序设计时应尽量避免使用动态内存分配。49执行管理程序(3)存储器管理5执行管理程序(4)50执行管理程序(4)6执行管理程序(5)I/O设备管理 嵌入式操作系统为I/O设备提供简单、统一、与任何设备无关的接口。这些设备包括:面向字节设备,例如显示终端或通信线随机块存取设备,例如磁盘虚拟设备,例如程序内部的通信管道和套接字控制和监视设备,例如数字和模拟I/O设备可以访问远端设备的网络设备51执行管理程序(5)I/O设备管理7执行管理程序(6)文件管理 嵌入式操作系统在文件系统和设备驱动程序之间使用一种标准的I/O操作接口。这使得操作系统可以运行多个相同或不同种类的文件系统。依据这些标准接口协议,用户可以为嵌入式操作系统编写用户自己的文件系统,并可以将文件系统与设备驱动程序自由组合。52执行管理程序(6)文件管理8执行管理程序(7)嵌入式系统支持的几种文件系统(以VXWORKS为例)dosFs文件系统 适用于块存取设备(磁盘)的实时操作,与MS-DOS文件系统兼容。rawFs文件系统 提供一种简单的原始文件系统。该文件系统将磁盘当作一个单独的大文件。tapeFs文件系统 适用于不使用标准文件或目录结构的磁带设备。实际上将磁带盘当作一个原始设备并将整个磁带盘当作一个大文件。53执行管理程序(7)嵌入式系统支持的几种文件系统(以VXWOR执行管理程序(8)cdromFs文件系统 允许应用程序从按造ISO9660标准文件系统格式化的CD-ROM设备上读取文件。TSFS目标服务器文件系统 通过Tornado软件中的目标服务器,使得目标机可以访问主机系统中的文件。TrueFFS文件系统 支持闪存设备的文件读、写。54执行管理程序(8)cdromFs文件系统10程序的执行管理实质程序的执行管理的实质就是把程序划分为几种不同的优先级,按实时性要求调度各程序的执行,实际就是对处理机的管理。55程序的执行管理实质程序的执行管理的实质就是把程序划分为几种不嵌入式操作系统的任务(1)嵌入式操作系统提供多任务机制,用于响应现实世界中多重的、离散的时间。多任务机制构造出多线程并发执行的假象,但实际上,系统内核是根据某种调度算法交错执行的。56嵌入式操作系统的任务(1)嵌入式操作系统提供多任务机制,用于嵌入式操作系统的任务(2)任务的上下文 每个任务拥有各自的上下文,即拥有各自的CPU环境和系统资源(指任务被内核调度执行时所使用的资源)。上下文切换时,任务的上下文保存在任务控制块(TCB)中。57嵌入式操作系统的任务(2)任务的上下文13嵌入式操作系统的任务(3)任务的上下文包括:任务的执行点,即任务的程序计数器;CPU中的寄存器和浮点寄存器(可选);动态变量和函数调用所需的堆栈;I/O操作分配的标准输入、标准输出和标准错误输出操作;一个延时定时器;一个时间片定时器;内核控制结构;信号句柄;用于调试和性能监视的值。58嵌入式操作系统的任务(3)任务的上下文包括:14嵌入式操作系统的任务(4)任务状态转变状态符号描述就绪(READY)该状态时任务仅等待CPU的状态,不等待其他任何资源阻塞(PEND)任务由于一些资源不可用而被阻塞时的状态睡眠(DELAY)处于睡眠时的任务状态挂起(SUSPEND)该状态时任务不执行,主要用于调试。挂起仅仅约束任务的执行,并不约束状态的转变。表5-1任务状态符号59嵌入式操作系统的任务(4)任务状态转变状态符号描述就绪(RE嵌入式操作系统的任务(5)阻塞就绪睡眠挂起Taskinit()图5-0-0任务状态转换60嵌入式操作系统的任务(5)阻塞就绪睡眠挂起Taskinit(程序调度方法(1)基于优先级的抢占式任务调度 使用基于优先级的抢占式任务调度算法,当一个新任务优先级高于系统当前执行任务的优先级时,它将抢占CPU执行。因此系统内核将确保CPU分配给就绪状态的具有高优先级的任务执行。61程序调度方法(1)基于优先级的抢占式任务调度17程序调度方法(2)T1T2T3T2T1时间优先级高低=任务结束=任务抢占图5-0-1优先级抢占62程序调度方法(2)T1T2T3T2T1时间优先级高低=任务程序调度方法(3)基于优先级的抢占式任务调度的缺点 当多个相同优先级的任务需要共享一台处理器时,如果某个执行的任务永不阻塞,那么它将一直独占处理器,其他相同优先级的任务都没有机会执行。63程序调度方法(3)基于优先级的抢占式任务调度的缺点19程序调度方法(4)轮转式调度 当所有相同优先级的任务处于就绪状态时,轮转算法趋向于平均使用CPU。轮转调度算法对所有相同优先级的任务,通过时间片获得相同的CPU处理时间。在一组相同优先级的任务里,每个任务将在规定的时间间隔或时间片内执行。64程序调度方法(4)轮转式调度20程序调度方法(5)T4T3T2时间优先级高低=任务结束=任务抢占T2T3T2T1时间片图5-0-2轮转调度65程序调度方法(5)T4T3T2时间优先级高低=任务结束=5.1程序的执行级别5.1.1程序级别程序级别(按照实时性要求分)故障级周期级基本级665.1程序的执行级别5.1.1程序级别程序级别故障级周一、故障级故障级主要负责识别故障并紧急处理之。故障级对时间要求非常严格,一般要求一旦设备故障,就应立即进行故障处理,所以它的执行级别最高。67一、故障级故障级主要负责识别故障并紧急处理之。23二、周期级也叫时钟级,严格按周期执行程序,如拨号脉冲扫描程序。各种扫描程序以及超时判断程序都属于周期级。周期级程序在定时中断的间隔执行,其周期性由定时中断保证。不同的周期级程序,其执行周期是定时中断的整数倍。68二、周期级也叫时钟级,严格按周期执行程序,如拨号脉冲扫描程序三、基本级程序基本级程序:实时要求低,没有周期性要求的程序。可以等待插空执行,可以由队列启动,如内部处理程序。69三、基本级程序基本级程序:实时要求低,没有周期性要求的程序。程序执行级别故障级程序优先级最高;其次是周期级程序;基本级程序级别最低。故障级周期级基本级优先级高低70程序执行级别故障级程序优先级最高;故障级周期级基本级优先级高CPU处理流程(1)正常情况下,由定时器发出定时中断;(2)启动中断服务程序;(3)由中断服务程序调度,首先执行周期级程序;(4)中断返回,转而执行基本级程序,等待下一次定时中断的到来。 以上过程中,只要有故障,立即进行现场保护,进入故障级程序。71CPU处理流程(1)正常情况下,由定时器发出定时中断;2772285.1.2空余时间从基本级程序处理完,到下一个定时中断到来,一般都有一段空余时间(见图5.1)。空闲时间的长短随话务量的变化而变化。为了避免CPU超负荷运算,规定处理机的呼叫处理能力应使得在忙时的大多数情况下,能在下次时钟到来前执行完基本级的处理任务,也就是存在一点空余时间。735.1.2空余时间从基本级程序处理完,到下一个定时中断到处理机负荷组成与话路无关部分,例如执行管理程序的执行。周期级程序,执行时长与话路设备数及话务量有关。基本级程序,主要决定于话务量。可推迟性工作,如例行测试和查核程序。对于此类工作,空余时间长就多执行一些,空闲时间少就少执行或不执行。74处理机负荷组成与话路无关部分,例如执行管理程序的执行。3075315.2程序执行管理基本原则(1)基本级一般不在中断服务程序中执行,基本级程序可以看成是处理机所执行的基本程序。(2)基本级在执行中可被中断插入而转入中断处理程序;(3)中断级在执行中,只允许高级别中断进入;(4)基本级被时钟中断插入后的恢复处理应体现基本级中

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论