操作系统是管理硬件和软件的一种应用程序。操作系统是运行在计算机上最重要的一种软件,它管理计算机的资源和进程以及所有的硬件和软件。它为计算机硬件和软件提供了一种中间层,使应用软件和硬件进行分离,让我们无需关注硬件的实现,把关注点更多放在软件应用上。
操作系统引论
1 操作系统的目标和作用
1.1 目标
①方便性——便于理解计算机;通过接口方便地使用
②有效性——提高系统资源利用率;提高系统吞吐量
③开放性——OS应提供统一的开放环境,以实现应用的可移植性和互操作性不同的设备能通过网络加以集成,并能正确、有效地协同工作。
④可扩充性——OS应方便修改、增加新模块或功能,以适应计算机硬件、 体系结构以及应用发展的要求。
1.2 作用
①提供用户与计算机硬件系统之间的接口
(1)命令方式:指由OS提供了一组联机命令 (语言), 用户可通过键盘输入有关命令,来直接操纵计算机系统。
(2)系统调用方式:OS提供了一组系统调用,用户可在自己的应用程序中通过相应的系统调用,来操纵计算机。
(3)图标–窗口方式:用户通过屏幕上的窗口和图标来操纵计算机系统和运行自己的程序。
(4)其他方式
②计算机系统资源的管理者
在一个计算机系统中,硬件和软件资源归纳起来可分为四类:处理器、存储器、 I/O设备以及文件(数据和程序)。相应地,OS的主要功能也正是针对这四类资源进行有效的管理。
②实现了对计算机资源的抽象
一台完全无软件的计算机系统(即裸机),即使其功能再强,也必定是难于使用的。比如打印,只要点击打印即可,不用管打印的资源管理。
2 操作系统发展过程
2.1 单道批处理系统
批处理是指用户将一批作业提交给操作系统后就不再干预,由操作系统控制它们自动运行。单道批处理系统在内存中只保持一道作业的批处理系统。
特征:(1) 自动性 (2) 顺序性 (3) 单道性
缺点: 系统资源利用不充分。这是因为在内存中仅有一道程序,每逢该程序在运行中发出I/O请求后,CPU便处于等待状态,必须在其I/O完成后才能继续运行。又因I/O设备的低俗性,更使CPU的利用率显著降低。
2.2 多道批处理系统
多道程序设计:多个作业存放在主存中,使它们同时处于运行状态,这些作业共享处理机时间和外围设备等资源。
好处: 提高CPU的利用率;可提高内存和I/O设备利用率;增加系统吞吐量。
缺点:周转时间变长;无交互能力(比如有一个在打印,另一个打印只能等待。
2.3 分时系统
在操作系统中加入了分时技术:即将处理机的运行时间分为时间片,将时间片轮流分配给各联机作业使用。
用户的需求表现:人机交互(批处理系统做不到)。共享主机。便于用户上机。
特征:1.多路性 2.独立性 3.及时性 4.交互性
2.4 实时系统
所谓“实时”,是表示“及时”,而实时系统(RealTime System)是指系统能及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。
3 操作系统基本特性
3.1 并发
并行是指这一个时刻上面有着多个事件在执行,是一个瞬间的状态。
并发是指在某一段时间间隔以内有着多个事件同时进行。
3.2 共享
3.3 虚拟
是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。物理实体(前者)是实的, 即实际存在的;而后者是虚的,是用户感觉上的东西。相应地,用于实现虚拟的技术,称为虚拟技术。在OS中利用了多种虚拟技术,分别用来实现虚拟处理机、虚拟内存、 虚拟外部设备和虚拟信道等。
3.4 异步
由于资源等因素的限制,使进程的执行通常都不是“一气呵成”, 而是以“停停走走”的方式运行。
内存中的每个进程在何时能获得处理机运行,何时又因提出某种资源请求而暂停,以及进程以怎样的速度向前推进,每道程序总共需多少时间才能完成,等等,都是不可预知的。
由于各用户程序性能的不同,比如,有的侧重于计算而较少需要 I/O;而又有的程序其计算少而I/O多,这样,很可能是先进入内存的作业后完成;而后进入内存的作业先完成。或者说,进程是以人们不可预知的速度向前推进,此即进程的异步性。
四大特征之间的联系:
并发在操作系统诞生之初就被设计了,用来解决单核CPU运行多个进程。
共享与并发互为存在意义
没有并发,虚拟就没有意义。
没有并发,就无法产生异步
4 操作系统运行环境
特权指令:是指计算机中不允许用户直接使用的指令,如 I/O指令、置中断指令,存取用于内存保护的寄存器、送程序状态字到程序状态字寄存器等的指令。
非特权指令:“管理程序”(即用户自编程序)出于安全考虑不能执行的指令。应用程序只能使用“非特权指令”,如:加法指令、减法指令等。
CPU 有两种状态,“内核态”和“用户态”
处于内核态时,说明此时正在运行的是内核程序,此时可以执行特权指令
处于用户态时,说明此时正在运行的是应用程序,此时只能执行非特权指
内核态、用户态 的切换
内核态→用户态:执行一条特权指令——修改 PSW 的标志位为“用户态”,这个动作意味着操作系统将主动让出CPU使用权
用户态→内核态:由“中断”引发,硬件自动完成变态过程,触发中断信号意味着操作系统将强行夺回CPU的使用权。
内核程序和应用程序。前者是后者的管理者,因此“管理程序”(即内核程序)要执行一些特权指令,而“被管理程序”(即用户自编程序)出于安全考虑不能执行这些指令。
5 操作系统的主要功能
处理器管理(进程管理):主要控制和管理CPU的工作。
处理器管理最基本的功能是处理中断事件。处理器只能发现中断事件并产生中断而不能进行处理。配置了操作系统后,就可对各种事件进行处理。处理器管理的另一功能是处理器调度。处理器可能是一个,也可能是多个,不同类型的操作系统将针对不同情况采取不同的调度策略。也叫进程管理。
存储管理:主要进行内存的分配和管理
存储器管理主要是指针对内存储器的管理。主要任务是:分配内存空间,保证各作业占用的存储空间不发生矛盾,并使各作业在自己所属存储区中不互相干扰。
设备管理:主要管理基本的输入输出设备
设备管理是指负责管理各类外围设备(简称:外设),包括分配、启动和故障处理等。主要任务是:当用户使用外部设备时,必须提出要求,待操作系统进行统一分配后方可使用。当用户的程序运行到要使用某外设时,由操作系统负责驱动外设。操作系统还具有处理外设中断请求的能力
文件管理:负责对计算机文件的组织、存储、操作和保护等。
文件管理是指操作系统对信息资源的管理。在操作系统中,将负责存取的管理信息的部分称为文件系统。文件是在逻辑上具有完整意义的一组相关信息的有序集合,每个文件都有一个文件名。文件管理支持文件的存储、检索和修改等操作以及文件的保护功能。操作系统一般都提供功能较强的文件系统,有的还提供数据库系统来实现信息的管理工作。
作业管理:是指对计算机所进行的操作进行管理
作业是指独立的、要求计算机完成的一个任务。操作系统的作业管理功能包括两点尸是在多道程序运行IC现货商时,使得备用户合理地共享计算机系统资源22是提供给操作人员一套控制命令用来控制程序的运行
6 操作系统的结构
典型的大内核/宏内核/单内核 操作系统: Linux、UNIX
典型的 微内核 操作系统: Windows NT
7 系统调用
参考资料:操作系统王道考研复习——第一章(计算机系统概述)-CSDN博客
讨论问题
操作系统的目标方便性和高效性是否一致?
方便性:便于理解计算机;通过接口方便地使用
有效性:提高系统资源利用率;提高系统吞吐量
多道程序设计技术和分时技术的联系和区别?
并发和并行的区别是什么?
相同点:并发和并行的目标都是最大化CPU的使用率,将cpu的性能充分压榨出来。
不同点:
(1)并行在多处理器系统中存在,而并发可以在单处理器和多处理器系统中都存在
(2)并行要求程序能够同时执行多个操作,而并发只是要求程序“看着像是”同时执行多个操作,其实是交替执行。
哪些指令是特权指令?
特权指令有以下几种:
1)允许和禁止中断,控制中断禁止屏蔽位
2)在进程间切换处理
3)存取用于主存保护的寄存器
4)执行I/O操作
5)停止一个中央处理器的工作
6)清理内存
7)设置时钟
8)建立存储键
9)加载PSW
5、请讨论操作系统各个功能中,最为重要的功能是什么?
处理器管理(进程管理):主要控制和管理CPU的工作。
处理器管理最基本的功能是处理中断事件。处理器只能发现中断事件并产生中断而不能进行处理。配置了操作系统后,就可对各种事件进行处理。处理器管理的另一功能是处理器调度。处理器可能是一个,也可能是多个,不同类型的操作系统将针对不同情况采取不同的调度策略。也叫进程管理。
OS的作用主要表现在哪几个方面?
有效性 方便性 可扩展性 开放性
什么是微内核OS?它具有哪些优点?
微内核操作系统,即实现了一个可在其上构建通用 OS 的基础内核,该内核程序运行在核心态,开机常驻内存。
当前微内核操作系统结构仍没有一致公认的定义,但可从以下4方面进行描述:
足够小的内核:微内核并非一个完整的OS。与硬件紧密相关,实现较基本功能,复杂客户和服务器通信
应用机制与策略分离原理:机制用于实现某一功能的具体执行机构,位于基层;策略借助某些参数和算法实现功能优化或达到不同功能目标,位于高层
采用面向对象技术
基于 C/S 模式
微内核包含的基本功能有:进程管理、低级存储管理、中断和陷入处理等,调度算法、虚拟内存的页面置换算法等都放入外部服务器中实现
优点
1) 灵活性高易扩展
2) 可靠性强
3) 可移植强
4) 提供了对分布式系统的支持
5) 便于维护