操作系统概述
-
操作系统是管理系统资源,控制程序执行,改善人机界面,提供各种服务,合理组织计算机工作流程和胃用户使用计算机提供良好的运行环境的一种系统软件。
-
计算机硬件->操作系统->系统程序->应用程序->用户
-
操作系统的作用与功能操作系统定义:操作系统是计算机系统中的一个系统软件,管理控制计算机系统中的硬件和软件资源,合理地组织计算机的工作流程,一边有效利用这些资源为用户提供一个功能强大使用方便的工作环境,从而在计算机与用户之间起到接口的作用
- 操作系统是用户与计算机硬件之间的接口
- 操作系统为用户提供了虚拟计算机
- 操作系统的是计算机系统的资源管理者
- 资源:硬件资源和信息资源
- 资源管理的角度看待计算机
- 处理机管理
- 处理中断事件
- 处理器调度
- 存储管理
- 设备管理
- 文件管理
- 网络与通信管理
- 用户接口
- 处理机管理
- 监视资源,分配/回收资源、保护资源
- 操作系统是计算机系统工作流程的组织者
-
操作系统的形成和发展
- 操作系统简历
- 简单批处理程序
- 多道程序批处理系统
- 分时系统,实时系统
- 微机及网络操作系统
- 推动操作系统发展的因素
- 计算机硬件升级和新硬件的出现
- 提供新的服务,方便使用
- 提高计算机资源利用效率
- 更正软件错误
- 计算机体系结构的发展:单处理机系统、多处理系统,分布式系统,计算机网络
- 单道批处理系统
- 多道批处理系统
- 多道:允许多个程序挺尸存在于主存中
- 批处理:作业存放在外存,并排成队列,有作业调度程序按照一定的算法从该队列中选取一个或者多个作业装入内存中执行
- 处理机自动切换:输入输出非常耗时
- 多道程序设计技术引发的问题
- 处理机的分配与回收
- 内存的分配与保护
- I/O设备的共享与效率
- 文件的有效管理
- 作业的组织
- 分时系统-联机系统
- 前台和后台
- 分时系统:分时+批处理功能
- 内存:前台区和后台区,前台区存放按时间片调入和调出的作业流,后台区存放批处理作业
- 仅当前台作业调入/调出,或者前台无作业可运行时,方才运行后台区的作业
- 提供交互式快速的服务,同时在处理机空闲时运行后台较大的批作业
- 单道分时系统
- 内存中一个时间只存放一个作业
- 多道分时系统
- 允许在内存中存放多道作业,并把具备运行条件的所有作业排成一个队列,让他们一次轮流的获得一个时间片来运行
- 较好的系统性能
- 现在的分时系统都属于多道分时系统
- 实时系统
- 分时系统为交互式作业提供了快速相应服务,但还不能满足某些对响应时间要求非常严格的任务需要
- 例如:炼钢/炼油控制系统、航空网络售票系统,对任务的相应时间有更严格的要求
- 操作系统的进一步发展
- 个人计算机操作系统
- 网络操作系统
- 分布式操作系统
- 嵌入式操作系统
- 操作系统简历
-
操作系统的功能
- 操作系统的主要任务
- 管理处理机
- 管理存储器
- 管理输入/输出设备
- 管理数据文件
- 管理接口服务
- 接口功能
- 操作系统为用户提供的人机交互界面
- 命令接口:Unix、DOS
- 图形化用户接口:Windows
- 程序接口:系统调用的形式共用户编程使用。
- 处理机管理
- 进程控制:创建和撤销进程以及控制进程的状态转换
- 进程同步:协调、互斥访问临界资源,协调执行进度
- 进程通信:进程间的信息交换
- 进程调度:按一定的算法从进程就绪队列中选出一个进程,把处理机分配给它,使之运行
- 存储器管理任务
- 为多道程序的并发执行提供良好的环境
- 便于用户使用存储器
- 提高存储器的利用率
- 为尽量多的用户提供足够大的存储空间
- 内存分配:静态分配/动态分配、连续分配、费连续分配
- 内存保护:系统内存空间、用户内存空间
- 地址映射:逻辑地址->物理地址
- 内存扩充:虚拟存储技术
- 设备管理任务
- 为用户分配I/O设备
- 完成用户程序请求的I/O操作
- 提高处理机和I/O设备的利用率
- 改善人机界面
- 缓冲管理
- 设备分配
- 设备处理:启动设备,中断处理
- 虚拟设备功能
- RAID技术,磁盘调度
- 文件管理任务
- 管理用户文件和系统文件
- 管理文件的存储空间
- 保证文件数据的安全
- 方便用户使用文件
- 文件目录管理
- 文件的逻辑组织与访问方式
- 存储空间的管理:文件的物理组织,空闲磁盘空间的管理
- 文件共享与安全
- 操作系统的主要任务
-
现代操作系统的特征及基本概念
- 特征
- 任务共行性
- 宏观:系统中有多个任务同时运行
- 微观:但处理机系统的任务并发,即多个任务在单个处理机上交替运行;或多处理机系统中的任务并行,即多个任务在多个处理机上同时运行
- 资源共享性:宏观:多个任务可以同时使用系统资源;微观上,指多个任务可以交替互斥的使用系统中的某个资源
- 虚拟性:将一个物理上的实体变为若干个逻辑上的对应物(虚拟机,虚拟设备,虚拟通道,虚拟文件,虚拟用户组,虚拟网络)
- 不确定性:程序执行的结果不确定,程序不可再现。多道程序环境下,进程以异步方式执行
- 任务共行性
- 基本概念
- 多道程序设计
- 进程与线程
- 进程:程序的一次执行,包含可执行程序,程序所需的数据和相关状态信息。进程是拥有资源的最小实体,在传统OS中,进程同时也是系统调度的最小单位
- 线程:程序的一次相对独立的运行过程,在现代OS中,线程是系统调度的最小单位
- 作业:作业是指,计算机用户再一次上机过程中,要求计算机系统为其所作工作的集合,作业中的每项相对独立的工作称为作业步。通常,人们用一组命令来描述作业;其中每个命令定义一个作业步。基本类型{脱机作业,联机作业}
- 任务:从系统资源分配的角度描述程序在系统中的运行;进程从处理器利用和工作流程控制的角度描述程序的执行;程序员习惯称进程,工程师习惯称任务
- 系统调用:操作系统提供的最基本的一级服务,供用户程序调用;只能在程序中作为程序语句使用,不能单独使用
- 接口:描述系统硬件之间的连接关系,以及软件和程序模块之间的调用关系,如总线接口,打印机接口
- 虚拟存储:在有限内存空间中运行更大更多的进程(程序),可以将一部分磁盘空间虚拟为逻辑内存,使用户感觉到一个比物理内存空间大得多的逻辑内存空间,即实际物理内存空间与虚拟的那部分逻辑内存空间的综合,统称为虚拟内存空间
- 文件:文件是若干数据的集合,有的操作系统将程序,数据以及外部设备通通称为文件;概括地说,文件就是命名了的字节流,他是现代操作系统对计算机系统中种类繁多的外部设备进行高度抽象的结果
- 特征
-
操作系统的分类
- 按照硬件平台系统结构不同
- 单机操作系统
- 嵌入式操作系统
- 多机操作系统(并行操作系统,分布式操作系统,网络操作系统,机群操作系统)
- 操作系统在用户界面的使用环境和功能特性的不同
- 批处理系统
- 分时系统
- 实时系统
- 现代操作系统通常兼有分时和批处理的功能
- 按照硬件平台系统结构不同
-
批处理操作系统
- 工作方式
- 一批作业首先在外存上排成一个队列
- 然后,由作业调度程序负责从该队列中选取一个或者多个进入内存,并分贝为他们建立进程,使若干进程共享包括处理机、内存空间在内的系统资源,以提高资源利用率和系统吞吐量
- 优点:多道程序由操作系统自动调度执行,大大降低了人工干预对系统性能的影响,资源利用率高,系统吞吐量大
- 缺点
- 交互性很差,修改和调试程序极其困难
- 增加了作业的平均周转时间,作业在外存排队,等待调度进入内存。进程在内存排队,等待获取系统资源
- 工作方式
-
分时操作系统
- 提供了一个多用户工作环境,一台主机连接若干台终端,每台终端供一个用户使用,连接若干台终端,每台终端供一个用户使用
- 用户交互式的向系统提出联机命令请求,系统接收所有的用户的命令,采用分时原则处理服务请求,再通过交互式终端显示执行结果
- 特点:
- 多路性:一台主机上同时连接多台终端
- 独立性:每个用户各自通过自己的终端进行输入输出,互不干扰,用户感觉自己独占终端和主机资源
- 交互性
-
实时操作系统
- 能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致的运行的操作系统
- 设计目标:对外部请求必须及时响应,在严格规定的时间内完成某时间,要求系统具有极高的可靠性和完整性
-
网络操作系统
- 在计算机网络环境中提供网络管理通信安全资源共享的各种网络应用等功能的操作系统
- 目标:为了实现网络中各计算机之间的通信和网络资源共享,提高网络资源的利用率和网络的吞吐量
-
分布式操作系统
- 多个处理机通过通信线路互联而构成的系统,系统的处理和控制功能分布在各个处理机上
- 配置在分布式系统上的操作系统称为分布式操作系统,他负责分布式系统中的任务分配,资源管理等功能服务
-
分布式系统与计算机网络
- 分布式系统中的所有资源都是共享的,由分布式操作系统进行集中统一管理,整个系统对用户透明
- 计算机网络中允许每台计算机配置自己的操作系统,通过网络协议实现网络资源的统一管理,网络操作系统可以构架与不同的操作系统之上,范围很广,网络操作系统也不要求对网络资源进行透明访问,用户可以清楚的知道提交的任务在哪台计算机上完成的
-
嵌入式操作系统
- 运行在嵌入式系统环境中,对整个嵌入式系统以及他所操作控制的各种部件装置等资源进行协调调度指挥和控制的系统软件。
- 嵌入式操作系统在工业控制,军事及民用设施中有着广泛的应用前景