目录
三. 单道批处理系统(Simple Batch Processing System)
四. 多道批处理系统(Multiprogramed Batch System)
七. 网络操作系统(Network Operating System)
八. 分布式操作系统 (Distributed Operating System)
9.2 EOS(Embedded Operating System)在嵌入式系统中的OS
一. 操作系统的发展过程
- 无操作系统的计算机系统;
- 单道批处理系统;
- 多道批处理系统;
- 分时系统;
- 实时系统;
- 网络操作系统;
- 分布式操作系统;
- 嵌入式系统;
二. 无操作系统的计算机系统
2.1 人工操作方式
1946-50年代中期(电子管,第一代计算机),集中计算(计算中心),计算机资源昂贵,计算机上的所有工作都要用户人工干预,如程序装入、运行、结果输出等。
- 工作方式:
- 用户:用户既是程序员,又是操作员(计算机专业人员);
- 编程语言:机器语言;
- 输入输出:纸带或卡片;
- 计算机的工作特点:
- 用户独占全机:不出现资源被其他用户占用,资源利用率低;
- CPU等待用户:计算前,手工装入纸带或卡片;计算完成后,手工卸取纸带或卡片;CPU利用率低;
此时的人机矛盾严重降低了计算机资源的利用率;
2.2 脱机输入/输出(Off-Line I/O)方式
发展背景:硬件不断发展,CPU速度提高、系统规模扩大,人机矛盾严重,如何解决?
事先将用户程序或数据的纸带或卡片放入纸带输入机,在外围机的控制下输入到磁带上,CPU从磁带上读入数据;输出过程正好相反。
这种脱机I/O方式的主要优点如下:
- 减少了CPU的空闲时间。
- 提高I/O速度。
2.3 无操作系统的主要问题
- 主要矛盾:
- 计算机处理能力的提高,手工操作的低效率(造成浪费);
- 用户独占全机的所有资源;
- 提高效率的途径:批处理
三. 单道批处理系统(Simple Batch Processing System)
3.1 批处理系统理解
- 批处理系统主要是采用了批处理技术。批处理技术是指计算机系统对一批作业自动进行处理的一种技术。
- 所谓批处理系统是指加载在计算机上的一个系统软件,在它的控制下,计算机能够自动地成批地处理一个或多个用户的作业。
- 所谓中断是指当主机接到外界硬件发来的中断信号时,停止原来的工作,转去处理中断的事件。在处理中断完成以后,主机又回到原来的工作点继续工作。这样可以使用户程序的I/O申请完成后,主机能自动在原中断点之后继续运行,同时为多道程序并发执行打下了基础。
- 批处理中的作业的组成:用户程序、数据、作业说明书(作业控制语言) ;
- 批:供一次加载的磁带或磁盘,通常由若干个作业组装成,在处理中使用一组相同的系统软件(系统带)
3.2 单道批处理系统的处理过程
3.3 单道批处理系统的特征
单道批处理系统是最早出现的一种OS,严格地说,它只能算作是OS的前身,而并非是现在人们所理解的OS。尽管如此,该系统比起人工操作方式的系统已有很大进步。该系统的主要特征如下:
- 自动性:在顺利的情况下,磁带上的一批作业能自动地逐个地依次运行,而无需人工干预;
- 顺序性:磁带上的各道作业是顺序地进入内存,完成顺序与进入内存顺序相同;
- 单道性:内存中只有一道程序运行;
CPU和I/O设备使用忙闲不均(取决于当前作业的特性):
- 对计算为主的作业,外设空闲;
- 对I/O为主的作业,CPU空闲;
四. 多道批处理系统(Multiprogramed Batch System)
4.1 多道程序设计的基本概念
在单道批处理系统中,内存中仅有一道作业,它无法充分利用系统中的所有资源,致使系统性能较差。为了进一步提高资源的利用率和系统吞吐量,在60年代中期又引入了多道程序设计技术,由此而形成了多道批处理系统。
在该系统中,用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”;然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源。
4.2 多道批处理系统的特征
- 多道性:
- 多道程序驻留内存:提高了资源的利用率;
- 程序并发执行:提高了系统的吞吐量;
- 无序性:作业完成的先后顺序与进入内存的顺序间无严格对应关系。
- 调度性:提交给系统需经过两次调度:
- 作业调度,从后备队列进入内存;
- 进程调度,分配处理机运行。
- 宏观上并发、微观上串行;
4.3 多道批处理系统的优缺点
优点:
- 资源利用率高:CPU、内存和I/O设备利用率较高;
- 系统吞吐量大:单位时间内完成的工作总量大;
缺点:
- 作业平均周转时间长:
- 由于作业要依次排队进行处理,因而作业周转时间长;
- 短作业的周转时间显著增长;
- 用户交互性差:整个作业完成后或中间出错时,才与用户交互,不利于调试和修改;
4.4 多道批处理系统需要解决的问题
- 处理机管理问题:分配(回收)处理机共享资源,既满足程序需要,又提高利用率;
- 内存管理问题:分配内存以”各得其所”,且不因相互重迭而丢失信息;
- I/O设备管理问题:既方便用户使用I/O设备,又提高设备利用率;
- 文件管理问题:组织程序和数据,便于用户使用,保证数据的安全性和一致性;
- 作业管理问题:对各种应用程序进行组织;
4.5 单道批处理系统与多道批处理系统的比较
五. 分时系统 (Time-Sharing System)
5.1 分时系统的产生
如果说,推动多道批处理系统形成和发展的主要动力,是提高资源利用率和系统吞吐量,那么,推动分时系统形成和发展的主要动力,则是用户的需求。
用户的需求具体表现在以下几个方面:
- 人机交互(对程序进行调试、修改等直接控制);
- 共享主机(主机贵,提高资源利用率);
- 便于用户上机(作业直接从终端进入,并能控制);
分时系统是为了满足用户需求所形成的一种新型OS。它与多道批处理系统之间,有着截然不同的性能差别。
5.2 分时系统定义
分时系统:指在一台计算机上连接了多个带有显示器和键盘的终端,同时允许多个用户共享主机中的资源,每个用户都可通过自己的终端以交互方式使用计算机,共享主机中的资源。
"分时":
- 多个用户分享使用同一台计算机;
- 多个程序分时共享硬件和软件资源;
- 多个用户分时:单个用户使用计算机的效率低,因而允许多个应用程序同时在内存中,分别服务于不同的用户。有用户输入时由CPU执行,处理完一次用户输入后程序暂停,等待下一次用户输入--时走时停;
- 前台和后台程序(foreground & background)分时:后台程序不占用终端输入输出,不与用户交互--现在的图形用户界面(GUI),除当前交互的程序(输入焦点)之外,其他程序均作为后台;
- 按时间片(time slice)分配:各个程序在CPU上执行的轮换时间;
5.3 分时系统实现中的关键问题
问题:为实现分时系统,其中,最关键的问题是如何使用户能与自己的作业进行交互?
即使有多个用户同时通过自己的键盘键入命令,系统也应能全部地及时接收并及时处理。
- 及时接收:只需配置多路卡(分时多路复用),同时接收各终端数据;
- 及时处理:作业直接进入内存,CPU只能处理内存中的信息;
5.4 分时系统的特征
- 多路性:宏观上多个用户同时工作,微观上多个终端轮转时间片;
- 独立性:每个用户一台终端,互不干扰,感觉像一个人独占计算机;
- 及时性:用户请求应尽快得到响应(2-3秒);
- 交互性:用户可通过终端与系统进行广泛的人机对话;
六. 实时系统(Real-Time System)
6.1 实时系统的定义
所谓“实时”,是表示“及时”,而实时系统是指系统能及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。
系统要求:
- 及时性;
- 高可靠性;
6.2 应用需求
- 实时控制:包括:生产控制和武器控制。
- 实时信息处理:例:信息采集和订票
6.3 实时任务
1)按任务执行时是否呈现周期性来划分:
- 周期性实时任务;
- 非周期性实时任务;
外部设备所发出的激励信号并无明显的周期性,但都必须联系着一个截止时间(Deadline)。
它又可分为:
- 开始截止时间(最晚开始时间)——任务在某时间以前必须开始执行;
- 完成截止时间(最晚完成时间)——任务在某时间以前必须完成。
2)根据对截止时间的要求来划分:
- 硬实时任务(hard real-time task):系统必须满足任务对截止时间的要求,否则可能出现难以预测的结果。
- 软实时任务(Soft real-time task):它也联系着一个截止时间,但并不严格,若偶尔错过了任务的截止时间,对系统产生的影响也不会太大。
6.4 通用操作系统
通常把兼有分时、实时和批处理三者或其中两者的操作系统,称作通用操作系统。可适用于计算、事务处理等多种领域,能运行在多种硬件平台上,如 UNIX系统、Windows NT等。--通用化、小型化
6.5 实时系统与分时系统的比较
七. 网络操作系统(Network Operating System)
- 计算任务由大量独立而又相互联结的计算机共同完成。某一台计算机上的用户可以使用其它计算机上的资源。这就形成了计算机网络技术。
- 20世纪90年代初,在各种计算机操作系统上,按网络体系结构协议标准开发的软件。包括网络管理、通信、安全、资源共享和各种网络应用。
- 与其他操作系统区别,网络操作系统增加了2个功能:实现各台计算机之间的通信以及网络中各种资源的共享。
7.1 计算机网络
通过通信设施将物理上分散的具有自治功能的多个计算机系统互连起来的实现信息交换、资源共享、可互操作和协作处理的系统。
7.2 计算机网络的类型
- 按网络拓扑结构分类:星型、树型、总线型、环型、网状型;
- 按网络地理范围分类:广域网、局域网;
7.3 网络OS的模式
- 客户/服务器(C/S)模式:网络中各站点分两大类:
- 服务器;
- 客户;
- 对等模式:各站点是对等的,既是“客户”,又是“服务器”;
7.4 网络OS的功能
- 网络通信:
- 建立/拆除通信链路;
- 传输控制;
- 差错控制;
- 流量控制;
- 路由选择;
- 网络资源管理:对共享资源(硬盘、打印机、文件和数据等)的管理和协调使用。
- 网络服务:主要有电子邮件服务、文件传输存取、共享硬盘及打印机等。
- 网络管理:最基本的是安全管理;
- 互操作能力;
八. 分布式操作系统 (Distributed Operating System)
8.1 分布式操作系统的概念:
- 分布式处理系统是指由多个分散的处理单元经互联网络的连接而形成的系统。
- 将大量计算机通过网络连接在一起,以获得极高的运算能力和数据共享的系统称为分布式系统(Distributed System)。能使分布式计算机系统中若干台计算机相互协作完成一个共同任务的系统软件称为分布式操作系统。
- 基于两种环境:
- 多处理器系统;
- 多计算机系统;
- 是网络操作系统的更高级的形式;
- 保持了网络操作系统的全部功能;
8.2 分布式OS与网络OS的比较
网络和分布式的区别:
- 分布式具有各个计算机间相互通讯,无主从关系;
- 网络有主从关系 分布式系统资源为所有用户共享,而网络有限制地共享;
- 分布式系统中若干个计算机可相互协作共同完成一项任务;
九. 嵌入式系统
9.1 嵌入式系统介绍
- 在各种设备、装置或系统中,完成特定功能的软硬件系统;
- 它们是一个大设备、装置或系统中的一部分,这个大设备、装置或系统可以不是“计算机”;
- 由于它们被嵌入在各种设备、装置或系统中,因此称为嵌入式系统;
9.2 EOS(Embedded Operating System)在嵌入式系统中的OS
- 是运行在嵌入式智能芯片环境中;
- 对整个智能芯片以及它所操作、控制的各种部件装置等等资源进行统一协调、调度、指挥和控制的系统软件;
- 国际上有名的嵌入式操作系统有Windows CE 、Palm OS 、Linux 、VxWorks 、pSOS、QNX、OS-9 、LynxOS等。
9.3 典型嵌入式操作系统的特性
- 完成某一项或有限项功能;不是通用型的;
- 在性能和实时性方面有严格的限制;
- 能源、成本和可靠性通常是影响设计的重要因素;
- 占有资源少、易于连接;
- 系统功能可针对需求进行裁剪、调整和生成,以便满足最终产品的设计要求;
9.4 嵌入计算的各种应用特点
- 掌上电脑:
- 运算速度: 100 KIPS;
- 在大小上优化、支持手写、低能耗;
- 工业设备:
- 运算速度: 1 MIPS;
- 安全优先,控制流程为主;
- 军事装备:
- 运算速度 :1 GIPS;
- 可靠性最重要;