一、操作系统是什么
1.常见的操作系统
2.操作系统的定义:
操作系统(OS)是一个大型的程序系统,它负责计算机的全部软、硬件资源的分配、调度工作,控制并协调多个任务的活动,
实现信息的存取和保护。它提供用户接口,使用户获得良好的工作环境。
3.操作系统的目标:
方便性:配置OS后计算机系统更容易使用
有效性:改善资源利用率,提高系统的吞吐量
可扩充性:OS的结构(如:层次化结构)
开放性:OS应遵循世界标准规范
4.操作系统的作用:
1)OS是用户与硬件系统之间的接口:命令方式、系统调用方式、图形窗口方式
2)OS是计算机系统资源的管理者:处理器、存储器、I/O设备、信息(文件、数据、程序等)
3)OS是扩充机/虚拟机:把覆盖了软件的机器称为扩充机或虚机器
OS包含了若干个层次,因此在裸机上覆盖OS后,便可获得一台功能显著增强,使用极为方便的多层扩充机或多层虚拟机。
5.操作系统的发展过程:
操作系统的产生:
手工操作阶段(40年代)
单道批处理阶段(50年代)
操作系统的形成
多道批处理(60年代初)
分时系统(60年代中)
实时操作系统(60年代中)
操作系统的发展
微机操作系统
多处理机操作系统
网络操作系统
分布式操作系统
嵌入式操作系统
6.各操作系统阶段详细概述
手工操作阶段:
概述:电子管计算机,无操作系统,由手工控制作业的输入输出,通过控制台开关启动程序运行。
用户使用计算机的过程大致如下:
先把程序纸带装上输入机,启动输入机把程序和数据送入计算机,
然后通过控制台开关启动程序运行,计算完毕后,用户拿走打印结果,并卸下纸带。
特点: (1) 程序设计直接编制二进制目标程序
(2) 输入输出设备主要是纸带和卡片
(3) 程序员上机必须预约机时
(4) 程序员自己上机操作
(5) 程序的启动与结束处理都以手工方式进行
(6) 程序员的操作以交互方式进行(控制台)
(7) 单用户方式
(8) 程序执行过程得不到任何帮助
缺点: (1)手工装卸、人工判断、手工修改与调试内存指令等造成CPU空闲;
(2)提前完成造成剩余预约时间内的CPU完全空闲;
(3)I/O设备的慢速与CPU的速度不匹配造成的CPU空闲等待时间。
单道批处理阶段:
概述:晶体管计算机,操作系统的雏形,称为监控程序。
单道批处理系统的工作过程:
用户将作业交到机房,操作员将一批作业输入到辅存(如磁带)上,形成一个作业队列。
当需要调入作业时,监控程序从这一批中选一道作业调入内存运行。
当这一作业完成时,监控程序调入另一道程序,直到这一批作业全部完成。
单道批处理分为:联机批处理、脱机批处理(如下图,上部分演示流程为联机批处理,下部分演示流程为脱机批处理)
联机批处理:CPU直接控制作业输入输出
脱机批处理:由外围机控制作业输入输出
特点: (1)自动性:作业(步)间不需要人的干预
(2)顺序性:各道作业是顺序进入内存,FCFS,监控程序常驻内存,开机后第一个进入内存,直到关机一直驻留在内存中
(3)专职操作员,程序员不在现场
(4)单道性:单道
(5)监控程序只为一个计算机系统设计
(6)开发过程可以使用FORTRAN等高级语言,程序的最后一条指令需是返回控制到监控程序
优缺点:(1)作业转换时间大大减小,系统运行效果提高(自动性、顺序性)
(2)存在I/O慢造成的CPU空闲等待时间(单道)
(3)程序员(和非编程用户)无法同计算机交互
(4)一个操作系统被设计成只能在一种机器上运行
多道批处理阶段:
概述:操作系统发展史上革命性变革。
多道程序设计技术:在内存中放多道程序,使它们在管理程序的控制下相互穿插地运行。
多道批处理系统的工作过程:
用户将作业交到机房,操作员将一批作业输入到辅存(如磁盘)上,形成一个作业队列。
当需要调入作业时,管理程序从这一批中选几道作业调入内存,让它们进入内存运行。
当一些作业完成时,管理程序调入另一些程序,直到这一批作业全部完成。
单道批处理和多道批处理工作流程比较:
特点: (1)多道:内存同时存在多个作业
(2)宏观上并行:同时有多道程序在内存运行,某一时间段上,各道程序不同程度地向前推进。
(3)微观上串行:任一时刻最多只有一道作业占用CPU,多道程序交替使用CPU 。
优缺点:(1)资源利用率高。资源指CPU、存储器、设备、数据。
(2)系统吞吐量大。系统吞吐量指系统在单位时间完成的总工作量(作业数量)。
(3)平均周转时间长。作业的周转时间是指从作业进入系统开始,直至其完成并退出系统为止所经历的时间。
(4)无交互能力。
分时系统阶段:(重点)
概述:推动多道批处理系统形成和发展的动力是提高资源利用率和系统吞吐量。
推动分时系统形成和发展的主要动力是用户的需要:交互、共享主机、方便上机。
分时系统是指在一台主机上连接多个带有显示器和键盘的终端,同时允许多个用户通过自己的键盘,以交互的方式使用计算机,共享主机中的资源。
分时系统实现中的关键问题:(1)实现人机交互:即使有多个用户同时通过自己的键盘键入命令,系统也应能全部地及时接收并处理。
(2)及时接收(多路卡和缓冲区)
(3)及时处理(划分时间片):多个用户分时使用主机,每一用户分得一个时间片,
用完这个时间片后操作系统将处理机分给另一用户,如此循环,每一用户可以周期性地获得CPU使用权,
这样每一用户都有一种独占CPU的感觉。
特点: (1)多路性:允许同一主机联接多台终端。
(2)独立性:每一用户独占一个终端;每个用户感觉不到其他用户的存在。
(3)及时性:用户请求能及时响应。
(4)交互性:可进行广泛的人机对话。
优缺点:(1)资源利用率高。资源指CPU、存储器、设备、数据。
(2)系统吞吐量大。系统吞吐量指系统在单位时间完成的总工作量(作业数量)。
(3)平均周转时间长。作业的周转时间是指从作业进入系统开始,直至其完成并退出系统为止所经历的时间。
(4)无交互能力。
实时操作系统阶段:(重中之重)
概述:实时系统:是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。
实时控制:如工业控制、武器的控制等。
实时信息处理:如联网订票系统。
硬实时任务:指系统必须满足任务对截止时间的要求,否则可能出现难以预测的结果。举例来说,运载火箭的控制等
软实时任务:指它的截止时间并不严格,偶尔错过了任务的截止时间,对系统产生的影响不大。举例:网页内容的更新、火车售票系统
特点: (1)多路性:对实时处理系统,系统按分时原则为多个终端服务;
对实时控制系统,系统经常对多路现场信息进行采集;以及对多个对象或多个执行机构进行控制。
(2)独立性:实时处理系统,每个终端用户向实时系统提出服务请求时,彼此独立;
实时控制系统,对信息的采集和对对象的控制彼此不干扰。
(3)及时性:(开始截止时间/完成截止时间)
(4)交互性:(仅限于访问专用服务程序)
(5)可靠性:(多级容错措施保障系统和数据安全)
优缺点:(1)资源利用率高。资源指CPU、存储器、设备、数据。
(2)系统吞吐量大。系统吞吐量指系统在单位时间完成的总工作量(作业数量)。
(3)平均周转时间长。作业的周转时间是指从作业进入系统开始,直至其完成并退出系统为止所经历的时间。
(4)无交互能力。
二、操作系统的特性
1.并发
所谓并发是指在内存中放多道作业, 在一个时间段上来看,每一道作业都能不同程度地向前推进。但在任何一个时间点上只能有一道占用CPU。
与并发相关的两个概念:
串行:在内存中每次只能放一道作业,只有它完 全执行完后别的作业才能进入内存执行。
并行: 存在于有多个CPU的环境中, 在内存中放 多道作业,在任一时间点上都可能有多道 作业在不同的CPU上同时执行。
由于并发性,故而引入了线程和进程
2.共享
系统中的资源可供多个并发的进程共同使用。
根据资源属性的不同,有两种资源共享方式:互斥共享方式(临界/独占资源)、同时访问方式
并发和共享是OS的两个最基本的特性,二者互为条件!
3.虚拟
通过某种技术将一个物理实体映射为若干个逻辑上对应物(如CPU:一个屏幕可看成多个屏幕-窗口)或将多个物理实体映射为一个逻辑实体(如虚拟存储是内存和外存的虚拟)。
虚拟是操作系统管理系统资源的重要手段,可提高资源利用率。
CPU——多道程序设计技术/每个用户(进程)的“虚拟处理机"
存储器——每个进程都占有的地址空间(指令+数据+堆栈)
I/O设备——打印机、多窗口或虚拟终端
4.异步
操作系统必须随时对以不可预测的次序发生的事件进行响应。
` 进程的运行速度不可预知:分时系统中,多个进程并发执行,“走走停停”,无法预知每个进程的运行推进快慢。
难以重现系统在某个时刻的状态(包括重现运行中的错误)。
三、操作系统的功能
1 处理机管理
处理机是最重要的资源,现代操作系统允许多个程序共享处理机,按照某种算法(分时、优先级)交替地使用处理机。
处理机管理包括以下几方面:进程控制、进程同步、进程通信、调度
2 存储器管理
存储器管理具备下列功能:
1.内存分配
2.地址映射:把程序中的逻辑地址映射为物理地址
3.存储保护:使多道程序间互不干扰
4.存储扩充:用辅存扩充主存,实现“虚拟存储器”
3 设备管理
最庞大、琐碎的部分,因为:物理设备品种繁多、用法各异、各种外设能和主机并行工作、主机与各类外设速度极不匹配,级差很大
1.缓冲管理:为设备提供缓冲区以缓和CPU同设备的I/O速度不匹配的矛盾。
2.设备分配
3.设备驱动:为设备提供驱动程序。
4.设备独立性和虚拟设备
4 文件系统管理
文件系统管理的功能:
1.文件存储空间管理。
2.目录管理:为了用户方便找到他所需的文件。
3.文件的读写管理和存取控制:存取控制就是防止文件被非法使用。
5 用户接口
1.命令接口:为了便于用户直接或间接地控制自己的作业。(联机用户接口与脱机用户接口)
2.程序接口:为用户程序在执行中访问系统资源而设置的。由一组系统调用组成。
3.图形接口。
6 现代OS的新功能
1.系统安全:为保障数据的保密性、完整性和可用性,常使用的技术:认证技术、密码技术、访问控制技术、反病毒技术
2.网络功能和服务:网络通信、资源管理、应用互操作
3.支持多媒体