操作系统-one
这是你👱🏻的亡🐏补牢 因为你👱🏻马上就要被🐏了
你👱🏻今天知道数字逻辑不考中期了,所以必须转移焦点到操作系统,因为你👱🏻最开始听操作系统的时候觉得这是什么✔️8️⃣玩意,结果你👱🏻一做作业才发现💩🐴了,所以操作系统这块必须浪👱🏻回头。
(里面的很多图片都是你👱🏻搞的别处的,必须声明一下防止被🐏,你👱🏻只是个搬运工 但是你👱🏻还是发表点看法)
操作系统引论
操作系统是什么✔️8️⃣
操作系统为用户完成所有“硬件相关,应用无关“的工作,以给用户方便、高效、安全的使用环境
你👱🏻觉得确实无话可说,你👱🏻对于这种类似于文科的知识沾点无奈,必须观棋不语了。
定义
操作系统是一个大型的程序系统,它负责计算机的全部软、硬件资源的分配、调度工作,控制并协调多个任务的活动,实现信息的存取和保护。它提供用户接口,使用户获得良好的工作环境。
目标
(1)、方便性:配置OS后计算机系统更容易使用
(2)、有效性:改善资源利用率;提高系统 吞吐量
(3)、可扩充性:OSde结构(如层次化的结构:无结构发展->模快化结构->层次化结构->微内核结构)
(4)、开放性:OS遵循世界标准范围。
作用
(1)、OS作为用户与计算机硬件系统之间的接口(API/CUI/GUI)
即:OS处于用户与计算机硬件系统之间,用户通过OS来使用计算机系统。
(2)、OS是计算机系统资源的管理者(处理机、存储器、I/O设备、文件)
处理机管理是用于分配和控制处理机
存储器管理是负责内存的分配与回收
I/O设备管理是负责I/O设备的分配(回收)与操纵
文件管理是用于实现文件的存取、共享和保护
(3)、OS实现了对计算机资源的抽象(OS是扩充机/虚拟机)
操作系统发展历程
未配置操作系统的计算机系统(40年代 手工操作阶段)
(1)、人工操作方式:用户独占全机,资源空闲浪费。
缺点:
手工装卸、人工判断、手工修改与调试内存指令等造成CPU空闲;
提前完成造成剩余预约时间内的CPU完全空闲;
I/O设备的慢速与CPU的速度不匹配造成的CPU空闲等待时间
(2)、脱机输入输出(Off-Line I/O)方式。
优点:
减少了CPU的空闲时间
提高了I/O速度
单道批处理系统(50年代)
(1)、解决问题:
单道批处理系统是在解决人机矛盾和CPU与I/O设备速度不匹配矛盾的过程中形成的。批处理系统旨在提高系统资源的利用率和系统的吞吐量。(但单道批处理系统仍不能充分利用资源,故现在已很少用)
单道批处理分为:联机批处理、脱机批处理
联机批处理:CPU直接控制作业输入输出
脱机批处理:由外围机控制作业输入输出
(2)、缺点:
系统资源利用率低(因为内存中只存在一道程序,I/O请求成功前CPU都处于空闲状态)
(3)、特征
自动性。正常情况下,一批作业能自动依次运行,无需人工干预。
顺序性。各道作业是顺序进入内存,FCFS
单道性。内存中任何时候只能有一道作业。
多道批处理系统(60年代初)
目的:为了进一步提高资源利用率和系统吞吐量
该系统中,用户提交的作业都先存在外存中,在作业A在执行I/O请求时,CPU空闲,此时调用作业B,防止CPU空闲。同理按一定的算法调用作业,防止CPU空闲
PS:推动多道批处理系统形成和发展的动力是提高资源利用率和系统吞吐量。
优点:
资源利用率高(资源指CPU、存储器、设备、数据)
系统吞吐量大(系统吞吐量指系统在单位时间完成的总工作量(作业数量))
缺点:
平均周转时间长(作业的周转时间是指从作业进入系统开始,直至其完成并退出系统为止所经历的时间。)
无交互能力
特点:
多道:内存同时存在多个作业
宏观上并行:同时有多道程序在内存运行,某一时间段上,各道程序不同程度地向前推进。
微观上串行:任一时刻最多只有一道作业占用CPU,多道程序交替使用CPU
还需解决的问题:
处理机管理问题
内存管理问题(内存分配和保护)
I/O设备管理问题
文件管理问题(文件的组织和管理)
作业管理问题
用户与系统的接口(OS还应提供用户与OS的接口,方便用户操作)
分时系统(60年代中)
分时系统是指在一台主机上连接多个带有显示器和键盘的终端,同时允许多个用户通过自己的键盘,以交互的方式使用计算机,共享主机中的资源。
PS:推动分时系统形成和发展的主要动力是用户的需要:交互、共享主机、方便上机。
关键问题:
及时接收(多路卡和缓冲区):作业直接进入内存、不允许一个作业长期占用处理机
即时处理(划分时间片):多个用户分时使用主机,每一用户分得一个时间片,用完这个时间片后操作系统将处理机分给另一用户,如此循环,每一用户可以周期性地获得CPU使用权,这样每一用户都有一种独占CPU的感觉。
特征:
多路性:允许同一主机联接多台终端。
独立性:每一用户独占一个终端;每个用户感觉不到其他用户的存在。
及时性:用户请求能及时响应。
交互性:可进行广泛的人机对话。
实时操作系统(60年代中)
实时系统(Real-Time System)是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。
特征:
多路性
对实时处理系统,系统按分时原则为多个终端服务;
对实时控制系统,系统经常对多路现场信息进行采集;以及对多个对象或多个执行机构进行控制。
独立性
实时处理系统,每个终端用户向实时系统提出服务请求时,彼此独立;
实时控制系统,对信息的采集和对对象的控制彼此不干扰。
及时性(开始截止时间/完成截止时间)
交互性(仅限于访问专用服务程序)
可靠性(多级容错措施保障系统和数据安全)
微机操作系统
单用户单任务操作系统:CP/M(75年)、MS-DOS(81年)。
单用户多任务操作系统:OS/2(87年)、MS WINDOWS(90年windows 3.0)。
多用户多任务操作系统:UNIX(70年)
你👱🏻觉得后面这几个好像没前面几个重要,如果有人提醒你👱🏻要考,你👱🏻再补充
多处理机操作系统
网络操作系统
分布式操作系统
嵌入式操作系统
操作系统的基本特性
并发
并发是指在内存中放多道作业, 在一个时间段上来看,每一道作业都能不同程度地向前推进。但在任何一个时间点上只能有一道占用CPU。
两个概念:
串行:在内存中每次只能放一道作业,只有它完 全执行完后别的作业才能进入内存执行。
并行: 存在于有多个CPU的环境中, 在内存中放多道作业,在任一时间点上都可能有多道作业在不同的CPU上同时执行。
共享
系统中的资源可供多个并发的进程共同使用。
根据资源属性的不同,有两种资源共享方式:
互斥共享方式(临界/独占资源)
同时访问方式
你👱🏻:并发和共享是OS的两个最基本的特性,二者互为条件!
虚拟
通过某种技术将一个物理实体映射为若干个逻辑上对应物(如CPU;一个屏幕可看成多个屏幕-窗口)。或将多个物理实体映射为一个逻辑实体(如虚拟存储是内存和外存的虚拟)。
虚拟是操作系统管理系统资源的重要手段,可提高资源利用率。
CPU——多道程序设计技术/每个用户(进程)的“虚拟处理机"
存储器——每个进程都占有的地址空间(指令+数据+堆栈)
I/O设备——打印机、多窗口或虚拟终端
异步
不确定性:什么时候开始,执行多久时间,终止时间
操作系统的主要功能
处理机管理功能:进程控制、进程同步、进程通信、调度(作业调度、进程调度)
存储器管理功能:内存分配、内存保护、存储扩充、地址映射
设备管理功能:缓冲管理、设备分配、设备处理
文件管理功能:文件存储空间的管理、目录管理、文件的读 /写管理和保护
操作系统与用户之间的接口:命令接口、程序接口、图形接口
现代OS的新功能:
系统安全:为保障数据的保密性、完整性和可用性,常使用的技术:认证 技术、密码技术、访问控制技术、反病毒技术
网络功能和服务:网络通信、资源管理、应用互操作
支持多媒体
操作系统的结构设计
传统的操作系统结构
无结构OS
模块化OS结构
分层式OS结构
现代OS结构——微内核结构