第一章 操作系统引论
OS的目标:
方便性:用户无需了解底层硬件,无需用0、1机器语言操作。
有效性:CPU、I/O、存储等的管理专门、合理地被组织管理起来,提高资源的利用率。
可扩充性:扩充应用软件;适应硬件和体系结构发展,扩充底层管理功能模块等。
开放性:网络环境,遵循开放互联标准
OS的作用:
作为用户与计算机硬件系统之间的接口
OS作为计算机系统资源的管理者
OS用作扩充机器
发展:
动力:
方便用户
提高计算机资源利用率
硬件器件不断更新换代:8bit ->16,32
计算机体系结构的不断发展:单CPU,多CPU,网络
过程:
人工操作方式:电子管时代 特点:计算机速度慢,无操作系统,计算机资源昂贵;
脱机输入/输出 特点:减少了CPU的空闲时间,提高I/O速度,系统开销大
单道批处理系统 特征:单道性,顺序性,自动性一定程度解决人机矛盾,CPU与I/O速度矛盾;提高了资源利用率和系统吞吐量;
多道批处理系统 CPU利用率提高:减少了CPU等待时间;内存利用率提高:资源尽可能多的被利用 ;平均周转时间长 整个作业完成后或中间出错时,才与用户交互,不利于调试和修改;
操作系统是一组控制和管理计算机硬件和软件资源,合理地对各类作业进行调度,方便用户使用的程序的集合。
分时系统:多路、独立、及时、交互
实时系统 系统能及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。例如:订票系统
操作系统的基本特征 并发、共享 、虚拟、异步
并发和进程是现代OS最重要的基本概念
操作系统的主要功能
处理机管理功能
进程控制
进程同步
进程通信
调度
存储器管理功能
内存分配
内存保护
地址映射
内存扩充
设备管理功能
缓冲管理
设备分配
设备处理
文件管理功能
存储空间的管理
目录管理
文件的读写管理和保护
用户接口
命令接口
程序接口
图形接口
操作系统的结构
传统的OS结构
无结构OS
模块化OS结构,优点:提高设计的正确性、可理解性和可维护性;增强了OS的可适应性,可选用相应功能模块,也可进行增减和修补以满足新需求;加速了开发过程;
分层式OS结构,易保证系统正确性,易扩充和维护。分层单向依赖,执行一个功能,总要自下而上地穿越多层,增加系统通信开销,降低了效率。
微内核OS结构 客户/服务器技术 面向对象技术 微内核
微内核的优点
灵活、可扩充:可选配功能服务器模块
增强可靠性:内核是稳定的核心,只有它能直接访问硬件。服务器在用户态出错绝不会导致系统瘫痪。
可移植性:操作系统绝大部分(各种服务器程序)与硬件平台无关,在不同硬件平台间移植时修改比较小。
该机制尤其适用于分布式系统
采用面向对象技术,减少开发开销