如有错误,恳请告知,非常感谢!
思维导图如下:
一、定义
定义中需要注意的是操作系统是一个系统软件。负责为用户和用户程序完成所有与硬件相关、与软件无关的工作,高级程序设计语言的编译不是操作系统关心的主要问题。
二、操作系统的作用
- OS作为用户与计算机硬件系统之间的接口。以前的计算机体积大、线路复杂、开关众多,用户是直接对计算机硬件进行操作,过程十分复杂。而有了操作系统,用户即可通过操作系统这个“翻译”来操作计算机硬件等。类似于你用C语言来操作内存。
- 操作系统是计算机资源的管理者。比如说,操作系统要决定这段25M的数据是存放在分为200M的大块内存区域中还是存放在30M的小块内存区域中。
- 操作系统实现了对计算机资源的抽象。OS对计算机资源进行了三个层次的抽象:第一层,在裸机上覆盖一层I/O设备管理软件。即将I/O设备抽象为一组数据结构以及一组I/O操作命令。第二层,在I/O管理软件上再覆盖一层用于文件管理的软件。向上一层提供一组对文件进行操作的数据结构和命令。第三层,在文件管理软件上再覆盖一层面向用户的窗口软件。
三、操作系统的基本特性
这里主要讲并发性、异步性和共享性。
- 并发性:两个或多个事件在同一时间间隔内发生(有先后,不一定要同时)。
区别:并行
并行是指两个或多个事件在同一时刻发生。
- 共享性:系统中的资源可供多个并发执行的程序共同使用(资源复用)。目前主要的实现方式有两种:互斥共享和同时访问。
互斥共享的例子就如打印机,必须A使用完打印机,B才能使用。
而同时访问里的“同时”:是在宏观上人的肉眼看起来像同时进行,但在计算机中,对某资源的访问是交替进行的,是有时间间隔的,只是时间间隔真的太短,肉眼无法看出,如下图。
程序A到E在每隔15毫秒内分别运行了,肉眼上很难察觉,同时,这也是属于并发执行的。
并发性和共享性是操作系统最基本的特征。
- 异步性:程序的运行结果、运行次序以及多次运行的时间都不确定。
区别:同步
即,上一步完成后才能进行下一步。
参考文献:
[1] 百度百科. https://baike.baidu.com/item/%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/192?fr=aladdin.
[2] 机事本. https://www.zhihu.com/question/61861692/answer/575287870.
[3] 李运华. https://www.zhihu.com/question/33515481/answer/121050539.
[4] 汤小丹,梁红兵,哲凤屏,汤子瀛. 计算机操作系统(第四版).西安电子科技大学出版社,2014.