前言
参考王道书。
后续会进一步整理,包括添加笔记内容,标明参考资料。
更新中。。。
操作系统(Operating System,OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,进而为用户和其他软件提供方便接口与环境的程序集合 。 它是计算机系统中最基本的系统软件。
重要考点:
指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的,但微观上是交替发生的。
常考易混概念:
并行:指两个或多个事件在同一时刻同时发生。
操作系统的并发性指计算机系统中同时存在着多个运行着的程序。
一个单核处理机(CPU)同一时刻只能执行一个程序,因此操作系统会负责协调多个程序交替执行(这些程序微观上是交替执行的,但宏观上看起来就像在同时执行)
事实上,操作系统就是伴随着“多道程序技术”而出现的。因此,操作系统和程序并发是一起诞生的。
当今的计算机,一般都是多核CPU,比如Intel的第八代i3处理器就是4核CPU,但是操作系统的并发性依然必不可少,当代人使用计算机绝对有4个以上的程序需要同时工作。
共享即资源共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。
所谓的“同时”往往是宏观上的,而在微观上,这些进程可能是交替地对该资源进行访问的(即分时共享)
虚拟是指把一个物理上的实体变为若干个逻辑上的对应物。物理实体(前者)是实际存在的,而逻辑上对应物(后者)是用户感受到的。
空分复用技术
例:
问题:这些程序同时运行需要的内存远大于4GB,那么为什么它们还可以在我的电脑上同时运行呢?
答:这是虚拟存储器技术。实际只有4GB的内存,在用户看来似乎远远大于4GB
时分复用技术
微观上处理机在各个微小的时间段内交替着为各个进程服务
虚拟处理器
问题:既然一个程序需要被分配CPU才能正常执行,那么为什么单核CPU的电脑中能同时运行这么多个程序呢?
答:这是虚拟处理器技术。实际上只有一个单核CPU,在用户看来似乎有6个CPU在同时为自己服务
虚拟性和并发性的关系
如果失去了并发性,则一个时间段内系统中只需运行一道程序,那么就失去了实现虚拟性的意义了。因此,没有并发性,就谈不上虚拟性。
异步是指,在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的, 而是走走停停,以不可预知的速度向前推进,这就是进程的异步性。
与并发性的关系
显然,如果失去了并发性,则系统只能,串行地处理各个进程,每个进程的执行会一贯到底。只有系统拥有并发性,才有可能导致异步性。
并发性指计算机系统中同时存在着多个运行着的程序。
共享性是指系统中的资源可供内存中多个并发执行的进程共同使用。
例:使用QQ发送文件A,同时使用微信发送文件B。
两个进程正在并发执行(并发性)
如果失去并发性,则系统中只有一个程序正在运行,则共享性失去存在的意义
需要共享地访问硬盘资源(共享性)
如果失去共享性,则QQ和微信不能同时访问硬盘资源,就无法实现同时发送文件,也就无法并发
安全、高效
补充知识:进程是一个程序的执行过程。执行前需要将该程序放到内存中,才能被CPU处理。
方便用户使用
命令接口和程序接口统称为用户接口。
(允许用户直接使用)
联机命令接口
用户说一句,系统做一句(交互式命令窗口)
脱机命令接口
用户说一堆,系统做一堆(批处理命令接口)
(允许用户通过程序间接使用)
注:系统调用=系统调用命令=广义指令
图形用户界面(Graphical User Interface)
用户可以使用形象的图形界面进行操作,而不再需要记忆复杂的命令、参数。
例子:在Windows操作系统中,删除一个文件只需要把文件“拖拽”到回收站即可。
需要提供的功能和目标:实现对硬件机器的拓展
没有任何软件支持的计算机成为裸机。在裸机上安装的操作系统,可以提供资源管理功能和方便用户的服务功能,将裸机改造成功能更强、使用更方便的机器
通常把覆盖了软件的机器成为扩充机器,又称之为虚拟机
1、系统调用是由操作系统提供给用户的,它( ) 。
A. 直接通过键盘交互方式使用
B. 只能通过用户程序问接使用
C 是命令接口中的命令
D. 与系统的命令一样
答案:B
解析:
系统调用是操作系统为应用程序使用内核功能所提供的接口 。
2、为了方使用户直接或间接地控制自己的作业,操作系统向用户提供了命令接口,该接口又可进一步分为( )。
A.联机用户接口和脱机用户接口
B.程序接口和图形接口
C.联机用户接口和程序接口
D.脱机用户接口和图形接口
答案:A
解析:
程序接口、图形接口与命令接口三者井没有从属关系。按命令控制方式的不同,命令接口分为联机用户接口和脱机用户接口 。
3、操作系统与用户通信接口通常不包括( )。
A. shell
B. 命令解释器
C. 广义指令
D. 缓存管理指令
答案:D
解析:
广义指令就是系统调用命令,而命令解释器属于命令接口,shell 是命令解析器,它也属于命令接口 。系统中的缓存全部由操作系统管理,对用户是透明的,操作系统不提供管理系统缓存的系统调用 。
4、下列选项中,不属于多道程序设计的基本特征是( )。
A. 制约性 B. 问断性
C. 顺序性 D. 共享性
答案:C
解析:
引入多道程序设计后,程序的执行就失去了封闭性和顺序性。程序执行因为共享资源及相互协同的原因产生了竞争,相互制约。考虑到竞争的公平性,程序的执行是断续的。顺序性是单道程序设计的基本特征。
5、计算机开机后 , 操作系统最终被加载到( )。
A. BIOS
C. EPROM
B. ROM
D. RAM
答案:D 解析: 系统开机后,操作系统的程序会被自动加载到内存中的系统区,这段区域是RAM。熟悉了组成原理中的各类存储介质后选对这道题并不难 。