第1讲操作系统(东北大学嵌入式实时操作系统)_第1页
第1讲操作系统(东北大学嵌入式实时操作系统)_第2页
第1讲操作系统(东北大学嵌入式实时操作系统)_第3页
第1讲操作系统(东北大学嵌入式实时操作系统)_第4页
第1讲操作系统(东北大学嵌入式实时操作系统)_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

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

文档简介

嵌入式实时操作系统

丁山dingshan@Ch1嵌入式实时操作系统概论

1.1操作系统概观1.2操作系统的形成和发展

1.3操作系统提供的服务和用户接口

1.4操作系统的结构

1.5流行操作系统简介1.6嵌入式实时操作系统1.1操作系统概观1.1.1操作系统的定义和目标1.1.2操作系统的作用和功能1.1.3操作系统的主要特性1.1.1操作系统的定义和目标

操作系统是管理系统资源、控制程序执行,改善人机界面,提供各种服务,合理组织计算机工作流程和为用户有效使用计算机提供良好运行环境的一种系统软件。它可被看作是用户和计算机硬件之间的一种接口,是现代计算机系统不可分割的重要组成部分。计算机系统的层次结构(1)

用户1用户2用户3用户4用户n财务系统航空订票上网浏览电子商务科学计算(应用程序)编译程序汇编程序编辑程序数据库(系统程序)操作系统计算机硬件………计算机系统的层次结构(2)

硬件层操作系统层系统程序层应用层硬件层提供基本的可计算性资源,包括:具有一组指令的处理器、可被访问的寄存器和存储器,可被使用的各种I/O设施和设备。这些是操作系统赖以工作的基础,也是操作系统设计者可以使用的功能和资源。操作系统层对硬件作扩充和改造,提供了操作系统接口,为编译程序、编辑程序、数据库系统等的设计者提供有力支撑。此外,操作系统还要做资源的调度和分配,信息的存取和保护,并发活动的协调和控制等许多工作。系统程序层建立在操作系统改造和扩充过的机器上,提供扩展指令集,实现各种语言处理程序、数据库管理系统和其他系统程序。提供种类繁多的实用程序,如连接装配程序、库管理程序、诊断排错程序、分类/合并程序等供用户使用。

应用层解决用户不同的应用问题,应用程序开发者借助程序设计语言来表达应用问题,开发各种应用程序,既快捷又方便。操作系统和硬件组成了一个运行平台,其他软件都运行在这个平台上。

操作系统的主要目标方便用户使用扩大机器功能管理系统资源提高系统效率构筑开放环境

1.1.2操作系统的作用与功能

操作系统的作用

OS作为用户与计算机硬件之间的接口

OS作为虚拟计算机

OS作为计算机系统的资源管理者

(2)OS为用户提供虚拟计算机(1)

如何把硬件复杂性与用户隔离开来?基本方法是在计算机裸机上加上一层又一层软件来组成整个计算机系统。每当在计算机上复盖一层软件,提供了一种抽象,系统的功能便增加一点,使用就更加方便一点,用户可用的运行环境就更加好一点。OS为用户提供虚拟计算机(2)

1)裸机极难使用,虽有很强的指令系统,从功能上来说局限性很大。加上软件后,就可在硬件基础上,对其功能和性能进行扩充和完善。

OS为用户提供虚拟计算机(3)

2)软件之间的关系,采用同样办法,一些软件的运行以另一些软件的存在并为其提供运行支撑作为基础,新添加的这些软件是在原来那些软件基础上的扩充和完善。

OS为用户提供虚拟计算机(4)

3)例1,在裸机上加上虚拟存储管理软件,用户就可有硕大的编程空间,不必涉及物理存储空间的容量、地址转换、程序重定位等物理细节。虚拟存储器是现代操作系统对计算机系统中多级物理存储体系进行高度抽象的结果。

OS为用户提供虚拟计算机(5)

4)例2,如果加上一层I/O设备管理软件,用户就可使用I/O命令来进行数据的I/O,不必涉及显示器、打印机、扫描仪、键盘和鼠标等的物理细节。

OS为用户提供虚拟计算机(6)

5)如果加上一层文件管理软件,它将磁盘抽象成一组命名的文件,用户通过文件操作,按文件名来存取信息,不必涉及诸如数据物理地址、磁盘记录命令、移动磁头臂、搜索物理块及设备驱动等物理细节,便于使用、效率又高。

OS为用户提供虚拟计算机(7)

6)例3,如果加上一层窗口管理软件,由该软件把一台物理屏幕改造成多窗口,每个应用可以在各自的窗口中操作,用户可以在窗口环境中方便地与计算机交互。OS为用户提供虚拟计算机(8)

操作系统是紧靠硬件的第一层软件,计算机上覆盖操作系统后,可扩展基本功能,为用户提供一台功能显著增强,使用更加方便,安全可靠性好,效率明显提高的机器,称为虚拟计算机,或操作系统虚机器(VirtualMachine)。(3)操作系统作为计算机系统的资源管理者(1)

在操作系统中,能分配给用户使用的硬件和软件设施总称为资源,包括两大类:硬件资源和信息资源。硬件资源又分:处理器、存储器、I/O设备等;信息资源又分:程序和数据等。操作系统作为计算机系统的

资源管理者(2)

操作系统如何来管理系统资源,哪些情况下需要对资源进行管理?来看几个例子:操作系统作为计算机系统的

资源管理者(3)

例1,用户想把一批信息存储到某个设备上,必须先弄清楚该设备的存储格式、读写命令和各种情况下的中断处理步骤。而让用户了解设备的物理细节将会十分困难,甚至束手无策。这些工作只能让操作系统代劳。操作系统作为计算机系统的

资源管理者(4)

例2,若内存中能装入两道程序并同时启动运行,不但可充分利用内存资源,当一道程序等待I/O完成时,可让另一道程序占有CPU运行,使得I/O设备和CPU同时保持忙碌,这类高效的工作方式,需要解决许多技术问题,这只有靠操作系统来做。操作系统作为计算机系统的

资源管理者(5)

例3,三个需要打印输出信息的应用程序在同时运行,打印机上三个程序的输出结果会交错夹杂、混乱不堪。一种解决方案:程序输出时,先把各自的结果存在磁盘上,等到某程序生成的输出全部存入后,才启动打印机输出,消除了杂乱无章的局面,这种做法只有操作系统才办得到。

操作系统作为计算机系统的

资源管理者(6)

也有人将操作系统定义为:是能使诸用户有效、方便地共享一套计算机系统资源的一种系统软件。

操作系统作为计算机系统的

资源管理者(7)操作系统的重要任务之一(1)

对资源进行抽象研究,找出各种资源共性和个性,有序地管理计算机中的硬件、软件资源,跟踪资源使用情况,监视资源的状态,满足用户对资源的需求,协调各程序对资源的使用冲突;操作系统作为计算机系统的

资源管理者(8)操作系统的重要任务之一(2)

研究使用资源的统一方法,让用户简单、有效的使用资源,最大限度地实现各类资源的共享,提高资源利用率,从而,使得计算机系统的效率有很大提高。

操作系统的功能

处理机管理存储管理设备管理文件管理网络与通信管理用户接口

处理机管理(1)

•处理器管理的第一项工作是处理中断事件,

•处理器管理的第二项工作是处理器调度。

处理机管理(2)处理器管理具体包括:进程控制和管理

进程同步和互斥

进程通信和死锁

线程控制和管理

处理器调度,分作业调度,中程调度,低级调度等

存储管理

存储管理具有四大功能:

存储分配

存储共享

地址转换与存储保护

存储扩充设备管理

设备管理具有以下功能:设备分配缓冲管理

设备驱动设备独立性实现虚拟设备文件管理

文件管理要完成以下任务:提供文件逻辑组织方法提供文件物理组织方法提供文件的存取方法提供文件的使用方法实现文件的目录管理实现文件的存取控制实现文件的存储空间管理

网络与通信管理

联网操作系统应具有以下管理功能:网上资源管理功能数据通信管理功能网络管理功能,包括:故障管理、安全管理、性能管理、记帐管理和配置管理。1.1.3操作系统的主要特性

第一个特性--并发性第二个特性--共享性第三个特性--异步性第四个特性--虚拟性操作系统的主要特性第一个特性--并发性(1)并发性(Concurrence)指两个或两个以上的事件或活动在同一时间间隔内发生发挥并发性能够消除系统中部件和部件之间的相互等待,有效地改善系统资源的利用率,改进系统的吞吐率,提高系统效率第一个特性--并发性(2)

内存中同时有多个用户程序,或内存中同时有操作系统程序和用户程序被启动交替、穿插地执行,都是并发性的例子。

第一个特性--并发性(3)

并发性使系统变得复杂化(1)

如何从一个活动切换到另一个活动?怎样将各个活动隔离开来,使之互不干扰,免遭对方破坏?怎样让多个活动协作完成任务?第一个特性--并发性(4)

并发性使系统变得复杂化(2)

怎样协调多个活动对资源的竞争?如何保证每个活动的资源不被其它进程侵犯?多个活动共享文件数据时,如何保证数据的一致性?第一个特性--并发性(5)

操作系统中很早就引入重要概念--进程,进程能清晰刻划操作系统中的并发性,实现并发活动的执行,因而,它已成为现代操作系统的一个重要基础。第一个特性--并发性(6)采用并发技术的系统称为多任务系统(Multitasking),并发的实质是一个物理CPU(也可以多个物理CPU)在若干道程序之间多路复用,并发性是对有限物理资源强制行使多用户共享以提高效率。

第一个特性--并发性(7)

结论:实现并发技术的关键之一是如何对系统内的多个活动(进程)进行切换的技术。第一个特性--并发性(8)

并行性(parallelism)指两个或两个以上事件或活动在同一时刻发生。

•在多道程序环境下,并行性使多个程序同一时刻可在不同CPU上同时执行。

•在分布式系统中,多台计算机并存使程序的并发性得到了更充分发挥,同一时刻每台计算机上都可以有程序在执行。第一个特性--并发性(9)

•并行的事件或活动一定是并发的,但反之并发的事件或活动未必是并行的。

•并行性是并发性的特例,而并发性是并行性的扩展。第二个特性-共享性(1)

共享指操作系统中的资源可被多个并发执行的进程所使用,可分成两种资源共享方式:互斥访问

:

系统中的某些资源同一时间内只允许一个进程访问,许多物理设备,以及某些数据和表格都是互斥共享的资源。第二个特性-共享性(2)

同时访问:

系统中还有许多资源,允许同一时间内多个进程对它进行访问,这里“同时”是宏观上的说法。典型的可供多进程同时访问的资源是磁盘,可重入程序也可被同时访问。与共享性有关的问题是资源分配、信息保护、存取控制等,必须要妥善解决好这些问题。第三个特性-异步性(1)操作系统中的异步性处处可见:一个进程在CPU上运行一段时间后,由于等待资源满足或事件发生,被暂停执行,CPU转让给另一个进程执行。系统中的进程何时执行?何时暂停?怎样的速度向前推进?进程总共要多少时间执行才能完成?这些都是不可予知的,或者说该进程是以异步方式运行的。第三个特性-异步性(2)

操作系统中异步性的其他例子:

(1)作业到达系统的类型和时间是随机的;

(2)操作员发出命令或按按钮的时刻是随机的;

(3)程序运行发生错误或异常的时刻是随机的;

(4)各种各样硬件和软件中断事件发生的时刻是随机的

。第三个特性-异步性(3)

•异步性给系统带来潜在危险,有可能导致与时间有关的错误。

•操作系统的一个重要任务是必须确保捕捉任何一种随机事件,正确处理可能发生的随机事件,正确处理任何一种产生的事件序列,否则将会导致严重后果。第四个特性--虚拟性(1)

虚拟性是指操作系统中的一种管理技术,它是把物理上的一个实体变成逻辑上的多个对应物,或把物理上的多个实体变成逻辑上的一个对应物的技术,显然,前者是实际存在的而后者是虚构假想的。第四个特性--虚拟性(2)

通过多道程序和分时使用CPU技术,物理上的一个CPU变成逻辑上的多个CPU。第四个特性--虚拟性(3)

通过Spooling技术可把物理上的一台独占设备变成逻辑上的多台虚拟设备,第四个特性--虚拟性(4)

通过窗口技术可把物理上的一个屏幕变成逻辑上的多个虚拟屏幕,IBM的VM技术把物理上的一台计算机变成逻辑上的多台计算机。第四个特性--虚拟性(5)

虚拟存储器则是把物理上的多个存储器(主存和辅存)变成逻辑上的一个(虚存)的例子。1.6嵌入式实时操作系统什么是嵌入式系统:

来自IEEE的定义:“Embeddedsystemisdevicesusedtocontrol,monitor,orassisttheoperationofequipment,machineryorplants”. ——IEEE上述定义主要从应用上加以定义。

可以看出:嵌入式系统是软硬件的综合体,还可以涵盖机械等附属装置。什么是嵌入式系统:

广义上嵌入式系统是一种应用系统,它至少包含一个可编程的计算机(通常是某种形式的微控制器、微处理器或数字信号处理芯片(DSP))且使用该系统的人一般并未意识到该系统是基于计算机的。什么是嵌入式系统:

国内的经典定义嵌入式系统是 “以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统”一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等部分组成,用于实现对其他设备的控制、监视或管理等功能。可以从以下几个方面来理解国内对嵌入式系统的定义:嵌入式系统是面向用户、面向产品、面向应用的,它必须与具体应用相结合才会具有生命力、才更具有优势。

即嵌入式系统是与应用紧密结合的,它具有很强的专用性,必须结合实际系统需求进行合理的裁减利用。嵌入式系统是将先进的计算机技术

温馨提示

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

评论

0/150

提交评论