操作系统的功能和特性 操作系统的类型

操作系统的功能和特性

操作系统的功能

它是用户和计算机之间的接口
他是计算机系统资源的管理者
 处理器资源
 存储器管理(主要是内存管理)
  存储分配和存储无关性、存储保护、存储扩充
 输入输出设备管理
 信息管理

操作系统的特性

并行性:指能处理多个并发活动的能力
共享性:指多个极端任务对资源的共同享用
 CPU、主存、外部存储器、数据
 向各个用户分别提供充足的资源是十分浪费的
 多个用户共享一个程序的同一副本,而不是分别向每个用户提供一个副本,这样可以避免重复开发,节省人力资源
虚拟性
异步性

操作系统的类型

操作系统的性能指标

系统的可靠性:系统能发现、诊断和恢复硬件、软件故障的能力
系统吞吐率:系统在单位时间内所处理的信息量
系统响应时间:从系统接受数据到输出结果的时间间隔
系统资源利用率:系统中各个部件、各种设备的使用程度
可移植性:将一个OS从一个硬件环境转移到另一个硬件环境仍能正常工作的能力

多道批处理操作系统

与早期单道批处理系统相比
 作业道数
 作业处理方式
 用户同其作业间没有交互,不能直接控制其运行,一般称为脱机操作或批操作
多道批处理系统一般用于计算机中心较大的计算机系统中
多道批处理系统追求高的吞吐量

分时操作系统

分时技术(关键:时间片划分要合适)
把处理器时间划分成很短的时间片(如几百毫秒)轮流地分配给各个联机作业使用,如果某个作业在分配的时间片用完之前计算还未完成,该作业就暂时终端,等待下一轮继续计算。此时处理器让给另一个作业使用,这样,每个用户的各次要求都能得到快速响应,给每个用户的印象是:独占一台计算机。
分时:多个用户分享使用同一台计算机,也就是把计算机的系统资源进行时间上分割,从而将CPU工作时间分别提供给多个用户使用,每个用户依次轮流地使用时间片。
分时系统(time-sharing system)
多个用户分时:单个用户使用计算机的效率低,因而允许多个应用程序同时在内存中,分别服务于不同的用户。有用户输入时由CPU执行,处理完一次用户输入后程序暂停,等待下一次用户输入--时走时停
前台和后台程序(foreground & background)分时:后台程序不占用终端输入输出,不与用户交互--现在的图形用户界面(GUI),除当前交互的程序(输入焦点)之外,其他程序均作为后台
通常按时间片(time slice)分配:各个程序在CPU上执行轮换时间
特征
 多路性:众多练级用户同时使用一台计算机
 交互性
 独占性
主要目的
 及时响应和服务于联机用户

实时系统

实时,对发生在外部时间做出及时的响应并对其进行处理,在严格规定的时间内完成对该时间的处理,并控制所有实时设备和实时任务协调一致地工作
包括实时过程控制和实时信息处理两种系统
追求的目标:对外部请求在严格的时间范围内做出反应,具有高可靠性
实时操作系统应具有:实时时钟管理、过载保护、高可靠性和高安全性
与批处理系统和分时系统的区别
 通用系统与专用系统
 实时系统对外部事件的响应要及时、迅速
 高可靠性要求
 队列驱动设计、事件驱动设计
 实时系统同批处理系统结合为通用实时系统

网络操作系统

网络操作系统是在同城操作系统功能的基础上提供网络通信和网络服务功能的操作系统。网络操作系统为网上计算机进行方便而有效的网络资源共享,提供网络用户所需各种服务的软件和相关规程的集合
网络功能与操作系统的结合程度是网络操作系统的重要性能指标。早期的做法是通常操作系统附加网络软件,过度到网络功能成为操作系统的有机组成部分。他们区别在于:网络功能的强弱、使用是否方便等
除了通常操作系统应具有的
 处理器管理、存储器管理、设备管理、文件管理
还应具有一下两大功能
 提供高效、可靠的网络通信能力
 提供多种网络服务功能
 (通信接口终端处理程序、通信控制程序以及各级网络协议软件)

多处理操作系统

优点:
 可靠性
 高度平行性
 多重处理可增强单处理器系统的计算能力,而又不必显出增加费用、价格
在计算机系统中,多重处理系统提供了重要的灵活性,因为多重处理系统的模块化设计,使系统在需要时可十分容易地通过添加处理器使系统能力得到扩充
多处理器系统的两种模式
 对称多处理系统SMP:由两个或两个以上的处理器共享主存、1/O设备,这些处理器用总线或者其他内部链接模式相连接
 非对称多处理模式AM:主从模式,著处理器只有一个,配置操作系统。从处理器可有多个

对称式多机系统

系统中由多个处理器,所有的处理器处于同等地位
 每个处理器都可以运行操作系统和内核程序处理中断、调度进程或线程等
 每个处理器都同样可以控制I/O设备和系统中其他资源
系统中所有处理器共享主存储器。没有自己私有的主存储器

主从式多机系统

只有主处理器可以运行操作系统、接受设备终端,进行I/O操作,执行内核代码;而从处理器仅可执行用户程序
 缺点
  主处理器负载过重
  主处理器故障将引起整个系统故障,可靠性差
  一般从处理器的利用率不高

分布式操作系统

由一群分离的计算机通过网络相连接的多机系统
每个计算机都有自己的主存、辅存和I/O设备

多道程序设计的概念

多道程序设计的引入

中断和通道技术出现以后,1/0设备和中央处理器可以并行操作,初步解决了告诉处理机和低速外部设备的矛盾,提高了计算机的工作效率
但,这种从星是由限度的,并不能完全消除中央处理机对外部传输的等待
根本目的:提高CPU的利用率,充分发挥并行性

多道程序设计的概念

把一个以上的作业存放在主存中,并且同时处于运行状态,这些作业共享处理器时间和外部设备等其他资源
多道程序运行的特征
 多道:即计算机主存中同时存放几道相互独立的程序
 宏观上并行:它们先后开始了各自的运行,但都未运行完毕
 微观上穿行:轮流或分时地占有处理机,交替执行

单道程序工作示例

多道程序设计的概念插图

多道程序工作示例

多道程序设计的概念插图1

操作系统的形成和发展

计算机的发展过程

1946-1955:第一代 电子管时代
1955-1965:第二代 晶体管时代
1965-1980:第三代 集成电路时代
1980-1990:第四代 大规模集成电路时代
1990-至今:第五代 (有说法称为智能计算机)

操作系统的发展阶段

第一代计算机:手工操作阶段(无操作系统)
第二代计算机:批处理系统(早期)、执行系统
第三代计算机:操作系统形成-批处理操作系统、分时操作系统
第四代计算机:个人计算机操作系统、网络操作系统、分布式操作系统

手工操作阶段

第一代计算机,主要原件是电子管,运算速度较慢,由主机(运控部件、主存)、输入设备(如直戴输入机、卡片阅读机)、输出设备(如打印机)和控制台组成
这种情况下,用户一个挨一个地轮流使用计算机,每个用户的使用过程大致如下:
把程序纸带(或卡片)装上输入机
经手工操作把程序和数据输入计算机
通过控制台开关启动程序运行
计算完毕,用户拿走打印结果,并卸下纸带(或卡片)

人-机矛盾的严重性

操作系统和运行时间的关系

机器速度作业在计算机上计算所需时间人工操作时间机器有效运行时间与操作时间之比
1万次/秒1小时3分钟20:1
60万次/秒1分钟3分钟3:1

早期批处理系统

计算机具备了批处理程序补充的能力

用户作业可以用批的方式提交给计算机。同时计算机系统中有一个监控程序对提交的作业进行处理。

多道程序设计系统

通道技术的引进和终端技术的发展,是的通道具有中断主机工作的能力。

将内存分几个部分,每一部分存放不同的作业,当一个作业等待I/O操作完成时,另一个作业可以使用CPU;如果内存中可以存放足够多的作业,则CPU的利用率可以接近100%

网络操作系统和分布式操作系统

在网络操作系统中,用户知道堕胎计算机的存在,能登录到一台远程机器并将文件从一台机器拷贝到另一台机器上,每台计算机都运行自己本地的操作系统,有自己本地用户

分布式操作系统在用户看起来就像一个传统的单处理器系统,尽管它实际上由多个处理器组成。分布式系统中,用户不会感知到他们的程序在那个处理器上运行,或者他们的文件存放在哪里,所有这些都是由操作系统自行高效地完成。

计算机系统概述

硬件部分:指其物理装置本身,包括各种处理器(如中央处理器、输入输出处理器和该系统中的其他处理器)、存储器、输入输出设备和通信装置
软件部分:指由计算机硬件执行以完成一定任务的所有程序及其数据。
 
说明
 最底层是硬件
  最底层是物理设备
  其次是直接控制设备并向上一层提供更清晰的接口的很原始的软件—微程序
  由微程序解释执行的一套指令集称为机器语言
 系统程序
  操作系统:隐藏复杂性,受硬件保护而面操用户篡改
  其他系统软件:这些程序本身并不是操作系统的部分
 应用程序
 
系统软件与应用软件
 系统软件:用于管理计算机本身及应用程序
 应用软件:实现用户所需的功能
 操作系统是最基本的系统软件,它控制计算机的所有资源并提供应用程序开发的基础。
 
计算机的硬件组织
 冯诺伊曼结构
  主机部分:运算器、控制器、存储器
  外设部分:输入设备、输出设备
 存储程序式计算机(Von Neumann计算机)
  必须有存储器,用来存储程序和数据;有运算器,用以执行指定的操作;有控制部件以便实现自动操作;有I/0部件以便于输入原始数据和输出计算结果。
 并行性—推动计算机系统结构的发展
  使原有部件尽可能并行运行-通道
  把一件工作分为若干相互联系的部分

多处理器系统
 具有两个或两个以上CPU
 共享存储器、I/O通道和I/O设备
 由一个操作系统控制

软件的层次与操作系统虚拟机
 软硬件及软件各部分之前,是一种层次结构的关系(裸机->扩充后的机器->应用程序)
  软件在硬件的基础上对硬件的功能进行扩充和完善
  一个软件可以对其他软件的功能进行扩充和完善

硬件与软件的关系
 硬件是计算机系统的物质基础,没有硬件就不能执行指令和实施最原始、最简单的操作,软件也就失去了效用
 若只有硬件,没有配置相应的软件,计算机也不能发挥它的潜在能力,硬件资源也就没有活力
 硬件与软件是相互依赖、互相促进的
 没有软件的裸机像一具僵尸;而没有硬件的软件则像一个幽灵