北京邮电大学 嵌入式操作系统-第三章 陆月明
陆月明, 北京邮电大学
1.操作系统介绍
2.操作系统内核
3.嵌入式操作系统
①1983年11月:在纽约的Plaza饭店,Microsoft公司公布了他们的下一代操作系统
Microsoft Windows,该操作系统将为IBM计算机提供图形用户界面和多任务环境。
②1985年11月:Microsoft公司推出Windows 1.0。
③1988年10月:受雇的David Cutler与其以前的Digital同事一起开始NT的开发工作。
④1990年5月:Windows 3.0发布。代码名称为Chicago,该版本具有一个增强的程序管
理器和图标系统,一个新的文件管理器,支持16色,运行得更好且更快。这一年,该软件销售了3百万套。
⑤1992年4月:Windows 3.1发布。前两个月,软件的销售量为三百万套,直到1995年
Windows95接替其前,其一直保持为首号操作系统。
⑥1992年10月:推出NT的第一个Beta版本。
⑦1993年10月:Microsoft公司发布NT 3.1的首个补丁(Service Pack),其修复了90
处以上的错误。
⑧1993年12月:Motorola和Microsoft公司宣布将Windows NT引入PowerPC平台。
Microsoft公司推测装配了300000套NT。
⑨1995年5月:Microsoft公司宣布了一个小但很重要的升级(3.51),以允许NT与即
将出现的、专门为Windows95设计的应用程序兼容,这令用户感到很惊奇。
⑩1995年8月:Windows95发布,这是不要求MS-DOS的第一个Windows版本,且被看作是一个用户界面相当友好的操作系统。其包含了一个集成的TCP/IP堆栈、拨号网络和长文件名支持。
1.操作系统代码库时代-系统时代
①操作系统的历史在某种意义上来说也是计算机的历史。
②早期的计算机没有操作系统
?Punch Card
?打孔纸带
?代码库时代
2.操作系统的类型
①大型机操作系统(IBM 的OS/360、MFT、MVT、SVS、MVS、MVS/XA、MVS/ESA、OS/390和
z/OS)
②小型机和UNIX的崛起(由AT&T开发出UNIX)
③个人计算机时代(Apple, DOS 和Windows)
?IBM PC-DOS,OS/2
?Microsoft MS-DOS,Windows
?Apple Mac OS
④嵌入式操作系统
?Windows CE
?VxWorks
?iOS
?Android
1.操作系统(Operating System)
中负责支撑应用程序运行环境以及用户操作环境的
2.嵌入式操作系统的职责通常包括对各种计算资源
操作系统类型
操作系统类型单用户单任务单用户多任务多用户多任务
单用户单任务单用户多任务多用户多任务
单用户单任务单用户多任务多用户多任务
?单用户单任务:是指一台嵌入式系统同时只能有一个用户在使用,该用户一次只能提交一个作业,一个用户独自享用系统的全部硬件和软件资源。
?例如:MS-DOS、PC-DOS和Windows3.1等。
?MS-DOS是成功的一代操作系统,缺点无内核,是经常死机,但需要的空间下,Windows
3.1不好用,MS-DOS是Windos95以前的主要操作系统。(1981-1995)
1980年,西雅图电脑产品公司(Seattle Computer Products)的一名24岁的程序员蒂姆·帕特森(Tim Paterson)花费了四个月时间编写出了86-DOS操作系统。1981年7月,微软以五万美元的代价向西雅图公司购得本产品的全部版权,并将它更名为MS-DOS。
单用户单任务单用户多任务多用户多任务?单用户多任务:同一时间能运行多个作业,多个作业共享资源。
?例如:Windows95-2007,Mac OS8。
?Windows95-2007是成功的一代操作系统。(1990-今)
?几乎目前所有的单用户用的操作系统采用单用户多任务操作系统。
?大部分嵌入系统是单用户多任务系统。
单用户单任务单用户多任务多用户多任务
?单用户多任务:允许多个用户共享使用同一台计算机的资源,即在一台计算机上联接几台甚至几十台终端机,计算机按固定的时间片轮流为各个终端服务。
?例如:Windows Server,Linux,Unix。
?Linux是成功的一代操作系统。Linux可以运行在多种硬件平台上,如具有x86、680x0、SPARC、Alpha等处理器的平台。
?多个用户管理,远程管理,多个虚拟机器。
处理器存储器外设
设备管理
进程管理
系统调用应用程序
任务调度
存储管理
硬件:包含处理器、存储器与外设。我们称为裸机
操作系统组成:内核与系统调
用
处理器存储器外设
设备管理
进程管理
系统调用应用程序
任务调度
存储管理
操作系统内核是指操作系统的核心部分。它由操作系统中用于管理设备、存储、处理器的那些组成部分。操作系统内核通常运行进程,并提供进程间的通信。
操作系统组成:内核与系统调
用
处理器存储器外设
设备管理
进程管理
系统调用应用程序
任务调度
存储管理
操作系统系统调用:由操作系统实现的所有系统调用所构成的集合即程序接口或应用编程接口(Application Programming
Interface,API)。是应用程序同系统之间的接口。
操作系统组成:内核与系统调
用
1.进程是一个具有一定独立功能的程序在一个数据集合
上的一次动态执行过程,是操作系统分配资源的一个
基本单位。
2.进程和程序的区别:
①程序是静态的,进程是动态的;
②程序可以在存储设备上长期保存,而进程具有它的生命周期,
被创建后存在,被撤消后消失;
③一个程序对应多个进程,但一个进程只能对应一个程序。
3.每个进程可包含多个线程;
4.线程、应用程序都称为任务。
1.操作系统介绍
2.操作系统内核
3.嵌入式操作系统
操作系统内核任务调度内存管理进程管理
外设管理
任务调度进程管理内存管理外设管理
任务调度
进程管理
内存管理外设管理
就绪(Ready)
运行(Running)
等待(阻塞)(Blocked)
时间片完
进程调度
I/O 请求
I/O 完成
任务状态:(任务可以是一个进程(分配资源的最小单位))
①运行状态:当处理器正在执行某项任务时,该任务处于运行状态;
②就绪状态:任务在队列中等待处理器的执行时,该任务处于就绪状态;③
等待状态:如果任务正等待外部事件的发生,该任务处于等待状态;
任务调度
进程管理
内存管理外设管理
?任务调度类型:
抢先操作系统:当需求满足时,停止低优先级的任务并执行高优先级的任务。
非抢先操作系统:即使高优先级的任务准备好了,低优先级的任务仍然继续运行。
非抢先操作系统一般的操作系统进行时间片轮询,换句话说,一个程序的时间片用光
了就得停下来让其他的程序用,直到再次轮到这个程序的时候才能够运行。抢先式操作系统,反过来,由程序决定自己是否退出的就是非抢占式的操作系统。 抢先式操作系统一般为实时操作系统。
实时操作系统分硬实时操作系统与软实时操作系统。
软实时操作系统:软实时系统仅要求事件响应是实时的,并不要求限定某一任务必须
在多长时间内完成.
硬实时操作系统:不仅要求任务响应要实时,而且要求在规定的时间内完成事件的处
理。
抢先操作系统实时操作系统
硬实时操作系统
软实时操作系统
非抢先操作系统
操作系统
任务调度进程管理内存管理外设管理 任务调度算法:根据上下文(Context)、任务状态(Status)和优
先级(Priority) 不同分成四种任务调度算法(Scheduling
algorithm):
①先来先服务(FCFS, First Coming First Serving)调度算法;
先来先服务
任务调度
算法执行时间最短优先算法循环调度算法
基于优先级的调度算法
任务调度
进程管理
内存管理
外设管理
?先来先服务调度算法:根据任务进入队列的先后次序执行的调度算法。
1:23
1:211:101:231:21
1:10
1:501:23
1:211:50
?操作系统: MS-DOS、PC-DOS等;?编写嵌入式软件很困难,经常死机。
任务调度进程管理内存管理外设管理?执行时间最短优先算法:根据任务执行的时间长短排序并执行的
任务调度算法。
1:31
1:10
1:231:21
?大多数主机都采用这种调度算法。
?一般不适合嵌入式应用。(主要是执行时间的确定很难).