操作系统引论
操作系统(Operating System,OS)是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。
其主要作用是管理好这些设备,提高它们的利用率和系统的吞吐量,并为用户和应用程序提供一个简单的接口,便于用户使用。
OS 是现代计算机系统中最基本和最重要的系统软件,而其它的诸如编译程序、数据库管理系统等系统软件,以及大量的应用软件,都直接依赖于操作系统的支持,取得它所提供的服务。
事实上 OS 已成为现代计算机系统、多处理机系统、计算机网络中都 必须配置 的系统软件。
1.1 操作系统的目标和作用
1.1.1 操作系统的目标
方便性
- 一个未配置OS的计算机系统是极难使用的,配置了OS,系统便可以使用编译命令将用户采用高级语言书写的程序翻译成机器代码,或者直接通过OS所提供的各种命令操纵计算机系统,极大地方便了用户,使计算机变得易学易用。
有效性
- 提高系统资源的利用率
- 提高系统的吞吐量
可扩充性
- 从早期的无结构发展成模块化结构,进而又发展成层次化结构,近年来OS已广泛采用微内核结构。微内核结构能方便地增添新的功能和模块,以及对原有的功能和模块进行改,具有良好的可扩充性。
开放性
- 随着Intemet的迅速发展,使计算机OS的应用环境由单机环境转向了网络环境,其应用环境就必须更为开放
1.1.2 操作系统的作用
OS 作为用户与计算机硬件系统之间的接口
- 用户通过三种方式使用计算机,即通过命令方式、系统调用方式、图标——窗口方式
OS 作为计算机系统资源的管理者
- 在一个计算机系统中,通常都含有多种硬件和软件资源。归纳起来可将这些资源分为四类:处理机、在储器、IO设备以及文件(数据和程序)。
OS 实现了对计算机资源的抽象(扩充机器)
- 在裸机上铺设的I/O软件隐藏了I/O 设备的具体细节,向上提供了一组抽象的 I/O 设备。
1.2 操作系统的发展过程
1.2.1 未配置操作系统的计算机系统
- 人工操作方式
- 通过打孔卡带
- 由于用户独占主机、CPU等待人工操作 ==> 效率低
- 为解决此人机矛盾 出现了 通道技术、缓冲技术 但是都没有很好的解决
- 脱机输入/输出技术 卡片=>磁带
- 减少了CPU的运行时间
- 提高了I/O速度
1.2.2 单批道处理系统
系统中的资源得不到充分的利用
CPU 与 I/O 不同时工作
1.2.3 多批道处理系统
为进一步提高资源利用率和吞吐量
资源利用率高(多道程序交替运行)、系统吞吐量大、平均周转时间长、无交互能力
1.2.4 分时系统
引入
为了满足 用户对人机交互的需求
人机交互 、共享主机
该系统允许多个用户同时通过自己的终端,以交互的方式使用计算机、共享主机中的资源
关键问题
在多批道处理系统中,用户无法与自己的作业进行交互的主要原因是:作业都先驻留在外存上,即使以后被调入内存,也要经过较长时间的等待后方能运行,用户无法与自己的作业进行交互。
特征
多路性、独立性、及时性、交互性
实时系统
实时系统多用于:工业(武器)控制系统、信息查询系统、多媒体系统、嵌入式系统
特征
多路性、独立性、及时性、交互性、可靠性
1.3 操作系统的基本特性
基本特性:并发、共享、虚拟、异步
并发性
并发与并行
操作系统并发性:指处理多个同时执行的程序的能力
并行:两个或多个事件在同一时刻发生;
并发:两个或多个事件在同一时间间隔内发生
进程
引入进程的目的是满足多个程序的并发执行。
程序是静态的,进程是动态的。
进程能支持并发,程序不能。
进程由一组机器指令、数据和堆栈组成,是一个能独立运行的活动实体。
进程是资源分配的独立单位。
多个进程能并发执行,进程运行时要占用一定的系统资源,如CPU、存储空间和I/O设备等。
线程
一个进程包含若干个线程
在具有线程的OS中,进程作为分配资源的基本单位,线程作为独立运行和独立调度的基本单位
基本上不拥有系统资源
共享性
(1)共享指操作系统中的资源(包括硬件资源和信息资源)可被多个并发执行的进程所使用。
(2)临界资源 在一段时间内只允许一个进程访问的资源称为临界资源,或独占资源
(3)互斥共享(互斥访问) 因为独占,才互斥访问 >> QQ VX 视频
(4)同时访问(磁盘)宏观上并行,微观上并发 QQ VX 传输文件
(1)资源的共享是因为运行程序的并发执行而引起的,若系统不允许运行程序并发执行,自然也就不存在资源共享问题。
(2)若系统不能对资源共享实施有效地管理,必然会影响到运行程序的并发执行,甚至运行程序无法并发执行,操作系统也就失去了并发性,导致整个系统效率低下。
虚拟技术
虚拟是指操作系统中的一种管理技术,它是把物理上的一个实体变成逻辑上的多个对应物。
异步性(不确定性)
(1)作业到达系统的类型和时间是随机的;
(2)操作员发出命令的时刻是随机的;
(3)程序运行发生错误或异常的时刻是随机的;
(4)各种硬件和软件中断事件发生的时刻是随机
并发 + 共享 →(造就) 虚拟 +异步 有并发性 才可能有异步性
小结
1.操作系统目标和作用
目标:有效性、方便性、可扩充性、开放性
作用:用户和机器之间的接口
管理资源,资源抽象
2.发展过程:人工操作→脱机方式→单批道→多批道→分时系统(多路性、交互性、独立性、及时性)→实时系统(可靠性)→网络操作系统
3.基本特征
并发性 并发:同一时间段;并行:同一时刻
虚拟性、共享性、异步性(不确定性-走走停停)
4.主要功能
处理机管理、存储管理、设备管理、文件管理、OS与用户接口
5.结构设计
传统:无结构→模块化(高内聚,低耦合)→层次化(无序有序)
6.微内核:足够小的内核、C/S、机制与策略、面向对象