一:操作系统的基本概念
操作系统的基本概念
操作系统的概念
- 操作系统(Operating System, OS)是指控制和管理整个计算机系统的硬件与软件资源,合理地组织、调度计算机的工作与资源的分配,进而为用户和其他软件提供方便接口与环境的程序集合。操作系统是计算机系统中最基本的系统软件。
操作系统的特征
操作系统是一种系统软件,但与其他系统软件和应用软件有很大的不同,它有自己的特殊性即基本特征。操作系统的基本特征包括并发、共享、虚拟和异步。
并发
- 并发是指两个或多个事件在同一时间间隔内发生。操作系统的并发性是指计算机系统中同时存在多个运行的程序,因此它具有处理和调度多个程序同时执行的能力。在操作系统中,引入进程的目的是使程序能并发执行。
- 注意同一时间间隔(并发)和同一时刻(并行)的区别。在多道程序环境下,一段时间内, 宏观上有多道程序在同时执行,而在每个时刻,单处理机环境下实际仅能有一道程序执行,因此微观上这些程序仍是分时交替执行的。操作系统的并发性是通过分时得以实现的。
- 注意,并行性是指系统具有同时进行运算或操作的特性,在同一时刻能完成两种或两种以上的工作。并行性需要有相关硬件的支持,如多流水线或多处理机硬件环境。
共享
资源共享即共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。共享可分为互斥共享方式和同时访问方式。
互斥共享方式
- 系统中的某些资源,如打印机、磁带机,虽然可供多个进程使用,但为使得所打印或记录的结果不致造成混淆,应规定在一段时间内只允许一个进程访问该资源。
- 当进程A访问某个资源时,必须先提出请求,若此时该资源空闲,则系统便将之分配给进程A使用,此后有其他进程也要访问该资源时(只要A未用完)就必须等待。仅当进程A访问完并释放该资源后,才允许另一个进程对该资源进行访问。我们把这种资源共享方式称为互斥式共享,而把在一段时间内只允许一个进程访问的资源称为临界资源。计算机系统中的大多数物理设备及某些软件中所用的栈、变量和表格,都属于临界资源,它们都要求被互斥地共享。
同时访问方式
- 系统中还有另一类资源,这类资源允许在一段时间内由多个进程“同时”访问。这里所说的“同时”通常是宏观上的,而在微观上,这些进程可能是交替地对该资源进行访问即“分时共享”的。可供多个进程“同时”访问的典型资源是磁盘设备,一些用重入码编写的文件也可被”同时”共享,即允许若干个用户同时访问该文件。
注意
并发和共享是操作系统两个最基本的特征,两者之间互为存在的条件:
- ①资源共享是以程序的并发为条件的,若系统不允许程序并发执行,则自然不存在资源共享问题;
- ②若系统不能对资源共享实施有效的管理,则必将影响到程序的并发执行,甚至根本无法并发执行。
虚拟
- 虚拟是指把一个物理上的实体变为若干逻辑上的对应物。物理实体(前者)是实的,即实际存在的;而后者是虚的,是用户感觉上的事物。用于实现虚拟的技术,称为虚拟技术。操作系统中利用了多种虚拟技术来实现虚拟处理器、虚拟内存和虚拟外部设备等。
- 操作系统的虚拟技术可归纳为:时分复用技术,如处理器的分时共享;空分复用技术, 如虚拟存储器。
异步
- 多道程序环境允许多个程序并发执行,但由于资源有限,进程的执行并不是一贯到底的,而是走走停停的,它以不可预知的速度向前推进,这就是进程的异步性。
- 异步性使得操作系统运行在一种随机的环境下,可能导致进程产生与时间有关的错误(就像对全局变量的访问顺序不当会导致程序出错一样)。然而,只要运行环境相同,操作系统就须保证多次运行进程后都能获得相同的结果。
操作系统的目标和功能
为了给多道程序提供良好的运行环境,操作系统应具有以下几方面的功能:处理机管理、存储器管理、设备管理和文件管理。为了方便用户使用操作系统,还必须向用户提供接口。“同时, 操作系统可用来扩充机器,以提供更方便的服务、更高的资源利用率。
操作系统作为计算机系统资源的管理者
- 处理机管理
在多道程序环境下,处理机的分配和运行都以进程(或线程)为基本单位,因而对处理机的管理可归结为对进程的管理。并发是指在计算机内同时运行多个进程,因此进程何时创建、何时撤销、如何管理、如何避免冲突、合理共享就是进程管理的最主要的任务。进程管理的主要功能包括进程控制、进程同步、进程通信、死锁处理、处理机调度等。 - 存储器管理
存储器管理是为了给多道程序的运行提供良好的环境,方便用户使用及提高内存的利用率, 主要包括内存分配与回收、地址映射、内存保护与共享和内存扩充等功能。 - 文件管理
计算机中的信息都是以文件的形式存在的,操作系统中负责文件管理的部分称为文件系统。 文件管理包括文件存储空间的管理、目录管理及文件读写管理和保护等。 - 设备管理
设备管理的主要任务是完成用户的I/O请求,方便用户使用各种设备,并提高设备的利用率, 主要包括缓冲管理、设备分配、设备处理和虚拟设备等功能。
操作系统作为用户与计算机硬件系统之间的接口
为了让用户方便、快捷、可靠地操纵计算机硬件并运行自己的程序,操作系统还提供了用户接口。操作系统提供的接口主要分为两类:一类是命令接口,用户利用这些操作命令来组织和控制作业的执行;另一类是程序接口,编程人员可以使用它们来请求操作系统服务。
命令接口
- 使用命令接口进行作业控制的主要方式有两种,即联机控制方式和脱机控制方式。按作业控制方式的不同,可将命令接口分为联机命令接口和脱机命令接口。
- 联机命令接口又称交互式命令接口,适用于分时或实时系统的接口。
- 脱机命令接口又称批处理命令接口,适用于批处理系统,它由一组作业控制命令组成。
程序接口
- 程序接口由一组系统调用(也称广义指令)组成。用户通过在程序中使用这些系统调用来请求操作系统为其提供服务,如使用各种外部设备、申请分配和回收内存及其他各种要求。
操作系统实现了对计算机资源的扩充
没有任何软件支持的计算机称为裸机,它仅构成计算机系统的物质基础,而实际呈现在用户面前的计算机系统是经过若干层软件改造的计算机。裸机在最里层,其外面是操作系统。操作系统所提供的资源管理功能和方便用户的各种服务功能,将裸机改造成功能更强、使用更方便的机器;因此,我们通常把覆盖了软件的机器称为扩充机器或虚拟机
题目总结
- 操作系统管理计算机的硬件和软件资源,这些资源统称为计算机资源。注意,操作系统不仅管理处理机、存储器等硬件资源,而且也管理文件,文件不属于硬件资源,但属于计算机资源。
- 操作系统最基本的特征是并发和共享,两者互为存在条件。
- 并发性是指若干事件在同一时间间隔内发生,而并行性是指若干事件在同一时刻发生。
- 操作系统主要向用户提供命令接口和程序接口(系统调用),此外还提供图形接口;当然,图形接口其实是调用了系统调用而实现的功能。
- 系统调用是操作系统为应用程序使用内核功能所提供的接口。
- 操作系统为编程人员提供的接口是程序接口,即系统调用
- 系统调用的目的是请求系统服务。操作系统不允许用户直接操作各种硬件资源,因此用户程序只能通过系统调用的方式来请求内核为其服务,间接地使用各种资源。
- 程序接口、图形接口与命令接口三者并没有从属关系。按命令控制方式的不同,命令接口分为联机用户接口和脱机用户接口。
- 操作系统通过系统调用向用户程序提供服务,文件I/O需要在内核态运行。
- 广义指令就是系统调用命令,而命令解释器属于命令接口,shell是命令解析器,他也属于命令接口。系统中的缓存全部由操作系统管理,对用户是透明的,操作系统不提供管理系统缓存的系统调用。
- 引入多道程序设计后,程序的执行就失去了封闭性和顺序性。程序执行因为共享资源及相互协同的原因产生了竞争,相互制约。考虑到竞争的公平性,程序的执行是断续的。顺序性是单道程序设计的基本特征。
- 在单处理机系统中,同一时刻只能有一个进程占用处理机,因此进程之间不能并行执行。通道是独立于CPU的、控制输入/输出的设备,两者可以并行。显然,处理器与设备是可以并行的。设备与设备是可以并行的,比如显示屏与打印机是可以并行工作的。
- 库函数属于用户程序而非系统调用,是系统调用的上层。
- 系统开机后,操作系统的程序会被自动加载到内存中的系统区,这段区域是RAM。
- 操作系统为用户提供的接口主要有命令接口、程序接口和图形接口。
- 操作系统在计算机系统中位于计算机和用户之间,解决用户使用硬件困难等问题。
- 并发属于伪并行,是特殊的并行。
- 并发指多个程序在同一时间段内同时处于执行状态,通过较少硬件资源的时分复用实现。并行是同一时刻多个程序的同时运行,需要较多的硬件资源。
一:操作系统的基本概念
https://lzyjx.github.io.git/2023/05/11/操作系统的基本概念/