操作系统引论
前言
操作系统(Operating System,OS)是配置在计算机硬件上的第一层软件。其主要作用是管理计算机软硬件,提高他们的利用率和系统的吞吐量,并为用户和应用程序提供一个简单的接口,便于用户使用。其他的系统软件和大量的应用软件都直接依赖于操作系统的支持和服务。
一、操作系统的目标和作用
1.目标
- 方便性
- 有效性
①提高系统资源的利用率
②提高系统的吞吐量 - 可扩充性
(方便添加新功能和模块或者对原功能和模块进行修改) - 开放性
2.作用
- OS作为用户和计算机硬件系统之间的接口
实现与操作系统的通信方式:
①命令方式;②系统调用;③图标-窗口 - OS作为计算机系统资源的管理者
- OS实现了对计算机资源的抽象
二、操作系统的发展过程
1.未配置操作系统的计算机系统
- 人工操作方式
用户独占全机 CPU等待人工操作 严重降低了计算机资源的利用率
- 脱机输入/输出(Off–Line I/O)方式
减少了CPU的空闲时间 提高了I/O速度 效率仍然不理想
2.单道批处理系统
减少了CPU的空闲时间 但内存中始终只保持一道作业,仍然不能充分地利用系统资源,会造成内存浪费。
3.多道批处理系统
- 资源利用率高
- 系统吞吐量大
- 平均周转时间长
- 无交互能力
4. 分时系统
实时系统:系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有的实时任务协调一致地运行。
- 特征:
1.多路性
2.独立性
3.及时性
4.交互性
5. 实时系统
分时系统:在一台主机上连接多个配有显示器·和键盘的终端并由此所组成的系统允许多个用户同时通过自己的终端,以交互的方式使用计算机,共用主机的资源
- 特征:
1.多路性
2.独立性
3.及时性
4.交互性
辨析:实时系统和分时系统的特征比较
三、操作系统的基本特性
1.并发concurrence
- 区别并行和并发
- 并行性是指两个或多个事件在同一时刻发生→宏观
- 并发性是指两个或多个事件在同一时间间隔内发生→宏观
并发是进程宏观一起运行,微观上交替运行,而并行是指同时运行
- 引入进程
进程是指在系统中能独立运行并作为资源分配的基本单位,它是由一组机器指令,数据和堆栈等组成的,是一个能独立运行的活动实体
2.共享sharing
1.互斥共享方式
(在一段时间内,只允许一个进程访问该资源,该资源成为“临界资源”)
2.同时访问方式
(宏观上这类资源允许在一段时间内,多个进程同时进行访问,微观上是这些进程对该资源进行交替访问)
并发和共享是多用户(多任务)OS的两个最基本的特征。它们又是互为存在的条件
3.虚拟virtual
- 时分复用技术
(利用处理机的空闲时间运行其他程序,提高了处理机的利用率) - 空分复用技术
(利用存储器的空闲时空区域存放和运行其他的多道程序,提高了内存的利用率)
4.异步asynchronism
四、操作系统的主要功能
1.处理机管理功能
- 进程控制
- 进程同步
① 进程互斥方式
② 进程同步方式(协同) - 进程通信
- 调度
① 作业调度
(从后备队列中按照一定的算法选择出若干作业,为他们分配运行所需的资源,在将这些作业调入内存后,分别为他们建立进程,使他们都成为可能获得处理机的就绪进程,并将他们插入就绪队列中)
②进程调度
(从进程的就绪队列中按照一定算法选择出一个进程,将处理机分配给它,并为他设置运行现场,使其投入执行)
2.存储器管理功能
- 内存分配
- 静态分配
- 动态分配
- 内存保护
- 地址映射
- 内存扩充
(借助虚拟存储技术,从逻辑上扩充内存容量,使用户感觉上内存容量比实际内存容量更大了)
3.设备管理功能
- 缓冲管理
- 设备分配
- 设备处理
- 设备处理程序又称设备驱动程序
4.文件管理功能
- 文件存储空间的管理
- 目录管理
- 文件的读写管理和保护
5.操作系统与用户之间的接口
- 用户接口
- 程序接口
6.现代操作系统的新功能
- 系统安全
- 网络的功能和服务
- 支持多媒体
五、OS结构设计
传统操作系统结构
- 无结构操作系统
- 模块化OS
- 内聚性:模块内部各部分间联系的紧密程度。内聚性越高,模块独立性越强。
- 耦合度:模块间相互联系和相互影响的程度。耦合度越低,模块独立性越好。
- 分层式结构OS
微内核os结构
- 客户/服务器模式(C/S模式)
- 面对对象的程序设计
微内核技术是把操作系统中更多成分和功能放到更高层次(用户模式)中运行,而留下一个尽量小的内核,用它来完成操作系统最基本的核心功能。