第1章 操作系统引论
计算机系统
计算机系统是由硬件资源和软件资源组成的。
计算机系统的构成
从最小层到最外层依次是
- 裸机
- 操作系统
- 其他系统软件
- 应用程序
全部的组合形成了计算机系统
操作系统
操作系统(俗称OS)是计算机系统中最重要的系统软件,管理者整个计算机的软件资源和硬件资源。
为了提高计算机的利用率配置的系统软件
硬件包括中央处理器(CPU),存储器,输入与输出设备。没有软件的计算机则称为裸机。
软件包括程序,数据和研发过程的中形成的各种文档资料
软件又包括系统软件,应用软件和工作软件。
现在计算机都是以冯诺依曼提出的“存储程序控制”原理基础开发的
在计算机系统中,OS处于计算机硬件和软件之间(第二层)。操作系统与各层的关系分为两点:
- 操作系统对各层的管理和控制
- 计算机系统各层对操作系统的制约,分别是计算机系统结构和用户和用户程序需求的制约
操作系统对计算机系统的各层进行管理和控制的同时,也收到各层对操作系统的制约。制约来自计算机系统的结构本身和用户需求的制约。
可以比喻成,我们给予操作系统权力去管理控制计算机系统其他层,同时又被计算机系统其他层和我们作为操控者(用户)的制约
操作系统的作用
1. 作为用户与计算机的接口
计算机不仅是计算机和用户的接口,同时也是计算机硬件和其他软件的接口。
对上屏蔽硬件的物理特性和操作细节,对下使用户更加方便,快捷,可靠操纵计算机硬件和运行自己的程序。
对用户提供了三种类型是界面,分别是命令界面,程序界面和图形界面
2. 作为系统资源的管理者
管理,合理分配系统资源,提高资源的利用率
操作系统的历史发展
穿孔卡片
一开始采用手工操作的方式,将程序和数据的已穿孔的卡片装入输入机。
缺点:
用户独占全机,CPU利用率低下
简单批处理系统
设置了外围计算机,将作业一批一批完成。因为操作是属于串行操作,所以也叫单道批处理。作业的输入和输出都是联机的(在主机控制下进行的输入和输出操作) ,用户的输入输出也叫做联机输入输出。
是为了解决CPU和I/O设备速度不匹配的矛盾中发展起来的。
缺点:
输入输出和CPU是串行工作,内存中只有一个任务,CPU利用率依然很低
多道批处理系统
随着时代的发展,计算机变得以主存为中心,内存装入多个作业成为可能,我们称为多道,但由于作业是一批批进去的,用户无法干涉,因此称为成批。
多道程序设计即允许多个作业(程序)同时进入计算机系统主存并启动交替计算的方法。特点:
- 提高了CPU和设备和主存的利用率
- 提高系统的吞吐率,使单位内完成作业数增加
- 发挥了系统的并行性
多道批处理的特点:允许多个程序同时进入内存并运行,共享计算机的硬件和软件资源,宏观并行,实际上多个任务轮流使用CPU,交替运行。
缺点:
1. 没有交互性,用户一旦提交作业就失去了其运行的控制能力。
2. 同时因为是批处理,作业的周转时间长,用户使用不方便
分时系统
为了解决用户在程序运行时候无法干涉的特点,增加操作系统的交互能力,产生了分时操作系统。
思想是在一台主机上连接多个带有显示器和键盘的终端,允许多个用户通过自己的终端,以交互的方式使用计算机,共享主机资源。分时处理技术将时间片分的很短,在一个短时间间隔内,每个用户都能得到快速响应。
多道批处理系统和分时系统都使用多道程序设计。而且交互是指用户和系统的交互,而不是内外存的交互。
分时系统中的响应时间是衡量一个分时系统性能的重要指标。
特点:
- 多路性:允许一台主机同时连接多个终端
- 独立性:每个用户一个终端
- 及时性:短时间内得到响应
- 交互性:人机对话
三和四都是为了解决批处理的缺点而被开发出来的,而一二是在开发过程为了满足条件而设置开发的
在分时技术让用户感受他在独占计算机资源,但他并不是独占。这里的独占性我们是指每个用户独占应该终端,并非用户独占整个计算机资源。
分时系统为了使多个用户同时和系统进行交互,最关键的问题是能够及时接收多个用户的输入
实时系统
实时系统包括过程控制系统,信息查询系统,事物处理系统。
特点:但外界事件或数据产生的时候,能够接收并以足够快的速度快速响应,要求处理结果能在规定时间内控制监控的生产过程或对处理系统做出快速响应,即要求向用户反馈信息,但不强求资源的利用率。
操作系统又分为硬实时和软实时:
- 硬实时要求在规定的时间内必须完成操作
- 软实时要求按照任务优先级尽快完成操作
操作系统的功能和特征
每一个操作系统都具有处理机管理,存储管理,设备管理,文件系统管理和用户接口管理
操作系统的功能
- 处理机管理:关于CPU的资源管理
- 存储管理:内存是能被CPU和输入输出设备共同访问的数据空间且是CPU直接寻址访问的大容量存储器
- 文件系统管理:对软件资源的管理,操作系统将它组织成文件的格式
- 设备管理
- 用户接口管理(特别注意:是用户接口管理,表示用户管理):提供两个接口,一个是操作界面一个是操作系统的功能服务界面
操作系统的特征
现代操作系统的两个基本特征是资源共享和程序并发执行
除此还有虚拟性和异步性。内存中进程在何时进执行何时暂停,以什么方式前进和花多少时间完成我们是未知的。但最后我们都会得到完全相同的结果。因此我们也称:异步性是并发性的表现特征,并发性是异步性的内在原因。
操作系统体系结构
单体结构
单体结构是早期计算机的结构,单体结构操作系统的设计思想是:把模块当作操作系统的基本单位,按照功能分块。
缺点:填充性低,改一增一则改多
层次式结构
把操作系统功能模块按照功能调用分成若干层,各层只能单向依赖或者调用,只允许上层或外层模块调用下层模块。也是现代计算机操作系统结构
虚拟机结构
所谓的虚拟机只是精准复制的裸机硬件,包括核心态/用户态,输入输出设备,终端等其他真实硬件所具有的功能。因此每台虚拟机和裸机相同。
C/S结构
C/S的结构的基本原则是将计算机应用任务分为多个子任务,由多台计算机分工完成,采用“功能分布”原则。即客户请求服务、服务器提供服务的处理方式。
微内核架构
即提供必要服务操作系统内核,包括任务、线程、交互进程通信和内存管理等。所有的服务在用户模式下允许,处理这些服务同处理其他任何一个程序一致,每个服务都在自己的地址空间运行,彼此都收到保护
操作系统的类别
(1)批处理操作系统:早期的一种大型计算机操作系统。可对用户作业成批处理,分为单道批处理系统和多道批处理系统。目的是提高系统吞吐量和资源的利用率。
(2)分时操作系统:利用分时技术的一种联机的多用户交互式操作系统,每个用户可以通过自己的终端向系统发出各种操作控制命令,完成作业的运行。目的是为了体现交互性。
(3)实时操作系统:一个能够在指定或者确定的时间内完成系统功能以及对外部或内部事件在同步或异步时间内做出响应的系统,实时的意思就是对响应时间有严格要求。
以上这三个是操作系统的基本类型。有操作系统能兼容其中三者或两者,我们称为通用操作系统。
(4)网络操作系统(服务器操作系统):一种在通常操作系统功能的基础上提供网络通信和网络服务功能的操作系统。
(5)分布式操作系统:一种以计算机网络为基础的,将物理上分布的具有自治功能的数据处理系统或计算机系统互连起来的操作系统。
在个人计算机上配置的系统我们称为个人计算机系统
总结
什么是操作系统
- 操作系统(俗称OS)是计算机系统中最重要的系统软件。
- 是管理整个计算机的软件资源和硬件资源,合理组织计算机工作流程和方便使用的程序集合。
- 每一个操作系统都具有处理机管理,存储器管理,设备管理,文件管理和用户接口五大功能。
练习错题补充知识
- 个人计算机操作系统主要是单用户操作系统
- 强调并行计算的操作系统是分布式操作系统
- Windows NT是网格操作系统
- CPU执行系统程序的时候,CPU处于系统态和管态
- 操作系统为用户提供给界面分别是命令界面,程序界面和图形界面
- 有操作系统能兼容其中三者或两者(分时,实时,批处理),我们称为通用操作系统。
- 中断机构是多道操作系统不可缺失的硬件支持
- 单道批处理系统是解决CPU和I/O设备速度不匹配,到了多道批里面是为了实现CPU和外围设备的并行工作能力
- 实时和分时操作系统都是属于多道程序系统,是拥有交互性的