这是计算机操作系统这门课程的学习总结笔记,一共五个部分,包括:
- 一、操作系统概述
- 二、进程管理
- 三、内存管理
- 四、文件管理
- 五、输入输出(I/O)管理
1.操作系统的概念、特征、功能和提供的服务
没有配置任何软件的计算机称为裸机,裸机仅仅构成了计算机系统的硬件基础。引入操作系统的目的是:
- 1.提供一个计算机用户与计算机硬件之间的接口,是计算机系统更加易于使用。
- 2.有效地控制和管理计算机系统中的各种软件和硬件资源,使得这些资源能够更加有效地被利用。
- 3.合理地组织计算机系统地工作流程,以改善计算机系统的性能。
1.1操作系统的概念
操作系统的概念可以从四个角度来理解,这四个角度的理解观点彼此不冲突,只是站在不同角度对计算机操作系统进行分析产生的结果。
- 1.用户观点:操作系统的用户观点,就是根据不同用户所使用操作系统的不同需求而设计出不同的操作系统。例如对于普通办公用户来说,他们一般使用个人PC,操作系统一般为Windows,在这种情况下操作系统的目的一般是方便用户使用,并且由于电脑较为好的硬件配置,资源利用率显得不是很重要。而对于使用手机操作系统等的嵌入式设备来说,由于硬件资源紧张,它们的操作系统应当追求较高的效率,即资源使用率最大化,耗电较低,使用便捷等。
- 2.系统观点:系统观点即资源管理的观点。操作系统是计算机系统的资源管理程序,在计算机系统中有两类资源:硬件资源和软件资源。按其作用又可以分为处理器、存储器、外设以及信息(程序和数据)等四类资源,这些资源构成了操作系统本身和用户作业赖以活动的物质基础和工作环境。
- 3.进程观点:这种观点把操作系统看成若干个可以独立运行的程序和一个可以对这些程序进行协调的核心所组成的。这些运行的程度称为进程,每个进程完成一项特定的任务。而操作系统的核心则是控制和协调这些进程的运行。
- 4.虚拟机观点:虚拟机观点也称为机器扩充的观点。操作系统为用户使用计算机提供了许多服务功能和良好的工作环境。用户不再直接使用硬件机器(裸机),而是通过OS来控制和使用计算机。
1.2操作系统的特征
不同的操作系统可能有不同的特征,但是它们都具有以下四个基本特征:
- 1.并发性:在多道程序环境下,并发性是指在一段时间内有多道程序在同时运行,但是在单处理器的系统中,每个时刻只能有一个程序被运行,所以在微观上这些程序是交替执行的。(程序的并行指多个事件在同一时刻发生,并发指多个事情在同一段时间内发生。)
- 2.共享性:资源共享指计算机系统中的软件资源和硬件资源不为某个程序独占,而是供多个用户使用。资源共享的方式可以分成两种:互斥共享(系统中的资源一段时间内只能被一个程序使用,并且只有当前作用使用完毕释放该资源后才能被其他作业使用)和同时访问(系统中的资源可以供多个作业同时访问)。操作系统的并发性和共享性是最基本的特征。
- 3.虚拟性:虚拟是指把一个物理机上的实体变成若干个逻辑上的对应物,前者是实际存在的,后者是虚拟的。
- 4.异步性:在多道程序的环境中,由于资源等因素的限制,程序是以“走走停停”的方式运行的。系统中每个程序何时执行,多道程序的执行顺序等都是不确定的,因而也是不可预知的。
1.3操作系统的功能和提供的服务
操作系统的职能是负责系统中软硬件资源的管理,合理地组织计算机的工作流程,为用户提供一个良好的工作环境和友好的使用界面。操作系统包括五大基本功能:
- 1.处理器管理
- 2.存储器管理
- 3.设备管理
- 4.文件管理
- 5.用户接口
处理器管理:
处理器管理的主要任务是对处理器的分配和运行实施有效地管理。在多道程序环境下,处理器的分配和运行是以进程为基本单位的,因此对处理器的管理进程管理可以归结为对进程的管理。进程管理应实现下述主要功能:
- 进程控制: 负责进程的创建、撤销及状态转换。
- 进程同步:对并发执行的进程进行协调。
- 进程通信:负责完成进程间的信息交换。
- 进程调度:按一定算法进行处理器分配。
存储器管理:
存储器管理的主要任务是对内存进行分配、保护和扩充。存储器管理应实现下述主要功能:
- 内存分配:按一定的策略为每道程序分配内存。
- 内存保护:保证各程序在自己的内存区域内运行而不相互干扰。
- 内存扩充:为允许大型作业或多作业的运行,必须借功虚拟存储技术去获得增加内存的效果。
设备管理:
计算机外设的管理是操作系统中最庞杂、琐碎的部分。设备管理的主要任务是对计算机系统内的所有设备实施有效管理。设备管理应具有下述功能:
- 设备分配:根据一定的设备分配原则对设备进行分配。为了使设备与主机并行工作,还需采用缓冲技术和虚拟技术。
- 设备传输控制:实现物理的输入输出操作,即启动设备、中断处理、结束处理等。
- 设备独立性:即用户程序中的设备与实际使用的物理设备无关.
文件管理:
操作系统中负责信息管理的部分称为文件系统,因此称为文件管理。文件管理的主要任务就是有效地支持文件的存储、检索和修改等操作,解决文件的共享、保密和保护问题。文件管理应当实现下面这些功能:
- 文件存储空间的管理:负责对文件的存储空间进行管理,包括存储空间的分配与回收等功能。
- 目录管理:目录是为方便文件管理而设置的数据结构,它可以提供按文件名存取的功能。
- 文件操作管理:实现文件的操作,负责完成数据的读写。
- 文件保护:提供文件保护功能,防止文件遭到破坏。
用户接口:
为方便用户使用操作系统,操作系统还提供了用户接口。通常,操作系统以如下3种接口方式提供给用户使用:
- 命令接口:提供一组命令供用户直接或间接控制自己的作业。主要有两种命令接口控制方式,即联机命令接口和脱机命令接口。
- 程序接口:也称为系统调用,是程序级的接口,由系统提供一组系统调用命令供用户程序和其他系统程序调用。用户在程序中可以直接使用这组系统调用命令向操作系统提出各种服务要求,如使用外设、申请分配内存、磁盘文件的操作等。
- 图形接口:近年来出现的图形接口(也称图形界面)是联机命令接口的图形化。
由操作系统的功能可以知道操作系统提供哪些服务:操作系统提供了一个用以执行程序的环境,提供的服务有程序执行、IO操作、文件操作、资源分配与保护、错误检测与排除等。
附:
- 联机命令接口又称交互式命令接口,适用于分时或实时操作系统,它由组键盘操作命令组成,用户通过控制台或终端输入操作命令,向系统提出各种服务要求,用户每输入完一条命令,控制权就转入操作系统的命令解释程序,然后由命令解释程序对输入的命令解释并执行,完成执行的功能。之后控制权又转回到控制台或终端,此时用户又可以输入下一条命令。
- 脱机命令接口又称批处理命令接口,即适用于批处理系统,它由组作业控制命令 (或称作业控制语句)组成,脱机用户不能直接干预作业的运行,应事先用相应的作业控制命令写成一份作业操作说明书,连同作业一起提交给系统。当系统调度到该作业时,由系统中的命令解释程序对作业说明书上的命令或控制语句逐条解释执行从而间接地控制作业的运行。