操作系统的概念
操作系统(OperatingSystemOS)是指控制和管理整个计算机系统的硬件与软件资源,合理地组织、调度计算机的工作与资源的分配,进而为用户和其他软件提供方便接口与环境的程序集合。操作系统是计算机系统中最基本的系统软件。
操作系统的特征
操作系统是一种系统软件,但与其他系统软件和应用软件有很大的不同,它有自己的特殊性即基本特征。操作系统的基本特征包括并发、共享、虚拟和异步。
并发(Concurrence)
并发是指两个或多个事件在同一时间间隔内发生,这些事件宏观上是同时发生的,但微观上是交替发生的。
操作系统的并发性指计算机系统中同时存在着多个运行着的程序。
一个单核处理机(CPU)同一时刻只能执行一个程序,因此操作系统会负责协调多个程序交替执行(这些程序微观上是交替执行的,但宏观上看起来就像在同时执行)事实上,操作系统就是伴随着 “多道程序技术” 而出现的。因此,操作系统和程序并发是一起诞生的。
注意:并行性是指系统具有同时进行运算或操作的特性,在同一时刻能完成两种或两种以上的工作。并行性需要有相关硬件的支持,如多流水线或多处理机硬件环境。
共享(Sharing)
资源共享即共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。
共享可分为以下两种资源共享方式:
并发和共享是操作系统两个最基本的特征,两者之间互为存在的条件:
- 资源共享是以程序的并发为条件的,若系统不允许程序并发执行则自然不存在资源共享问题。
- 若系统不能对资源共享实施有效的管理,则必将影响到程序的并发执行,甚至根本无法并发执行。
虚拟(Virtual)
虚拟是指把一个物理上的实体变为若干逻辑上的对应物。物理实体(前者)是实的,即实际存在的,而后者是虚的,是用户感觉上的事物。
操作系统的虚拟技术可归纳为:
-
时分复用技术,如处理器的分时共享。 -
空分复用技术,如虚拟存储器。
异步(Asynchronism)
多道程序环境允许多个程序并发执行,但由于资源有限,进程的执行并不是一贯到底的,而是走走停停的,它以不可预知的速度向前推进,这就是进程的异步性。
操作系统的目标和功能
为了给多道程序提供良好的运行环境,操作系统应具有以下几方面的功能:处理机管理、存储器管理、设备管理和文件管理。为了方便用户使用操作系统,还必须向用户提供接口。同时,操作系统可用来扩充机器,以提供更方便的服务、更高的资源利用率。
1、操作系统作为计算机系统资源的管理者
2、操作系统作为用户与计算机硬件系统之间的接口
3、操作系统用作扩充机器
操作系统对硬件机器的扩展
操作系统的发展与分类
手工操作阶段(此阶段无操作系统)
用户在计算机上算题的所有工作都要人工干预,如程序的装入、运行、结果的输出等。随着计算机硬件的发展,入机矛盾(速度和资源利用)越来越大,必须寻求新的解决办法。
手工操作阶段有两个突出的缺点:
- 用户独占全机,不会出现因资源已被其他用户占用而等待的现象,但资源利用率低
- CPU等待手工操作,CPU的利用不充分。
唯一的解决办法就是用高速的机器代替相对较慢的手工操作来对作业进行控制。
批处理阶段(操作系统开始出现)
单道批处理系统:
引入脱机输入/输出技术,并由监督程序负责控制作业的输入、输出。
主要优点:缓解了一定 程度的人机速度矛盾, 资源利用率有所提升。
主要缺点:内存中仅能 有一道程序运行,只有 该程序运行结束之后才 能调入下一道程序。CPU有大量的时间是在 空闲等待I/O完成。资源 利用率依然很低。
多道批处理系统:
操作系统正式诞生,用于 支持多道程序并发运行,每次往内存中读 入多道程序。
主要优点:多道程序并发执行,共享计算机 资源。资源利用率大幅提升,CPU和其他资 源更能保持“忙碌”状态,系统吞吐量增大。
主要缺点:用户响应时间长,没有人机交互 功能(用户提交自己的作业之后就只能等待 计算机处理完成,中间不能控制自己的作业 执行。eg:无法调试程序/无法在程序运行过 程中输入一些参数)
分时操作系统
分时操作系统:计算机以时间片为单位轮流为各个用户/作业服务,各个用户可通过终端与计算机进行交互。
主要优点:用户请求可以被即时响应,解决了人机交互问题。允许多个用户同时使用一台计算机,并且用 户对计算机的操作相互独立,感受不到别人的存在。
主要缺点:不能优先处理一些紧急任务。操作系统对各个用户/作业都是完全公平的,循环地为每个用户/ 作业服务一个时间片,不区分任务的紧急性。
实时操作系统
主要优点:能够优先响应一些紧急任务,某些紧急任务不需时间片排队。 在实时操作系统的控制下,计算机系统接收到外部信号后及时进行处理,并且要在严格的时限内处理完事 件。实时操作系统的主要特点是及时性和可靠性
网络操作系统
是伴随着计算机网络的发展而诞生的,能把网络中各个计算机有机地结合起来,实现数据传 送等功能,实现网络中各种资源的共享(如文件共享)和各台计算机之间的通信。(如:Windows NT 就是 一种典型的网络操作系统,网站服务器就可以使用)。
其他几种操作系统
网络操作系统:是伴随着计算机网络的发展而诞生的,能把网络中各个计算机有机地结合起来,实现数据传 送等功能,实现网络中各种资源的共享(如文件共享)和各台计算机之间的通信。(如:Windows NT 就是 一种典型的网络操作系统,网站服务器就可以使用)
分布式操作系统:主要特点是分布性和并行性。系统中的各台计算机地位相同,任何工作都可以分布在这些 计算机上,由它们并行、协同完成这个任务。
个人计算机操作系统:如 Windows XP、MacOS,方便个人使用。
操作系统的运行环境
操作系统的运行机制
内核是计算机上配置的底层软件,是操作系统最基本、最核心的部分。实际操作系统内核功能的那些程序就是内核程序。
中断和异常
CPU 上会运行两种程序,一种是操作系统内核程序,一种是应用程序。
在合适的情况下,操作系统内核会把CPU的使用权主动让给应用程序(第二章进程管理相关内容) “中断”是让操作系统内核夺回CPU使用权的唯一途径,如果没有“中断”机制,那么一旦应用程序上CPU运行,CPU就会一直运行这个应用程序。
**内核态->用户态:**执行一条特权指令——修改PSW的标志位为“用户态”,这个动作意味着操作系统,将主动让出CPU使用权
**用户态->内核态:**由“中断”引发,硬件自动完成变态过程,触发中断信号意味着操作系统将强行夺回CPU的使用权。
系统调用
操作系统作为用户和计算机硬件之间的接口,需要向上提供一些简单易用的服务。主要包括命令接口和程序接口。其中,程序接口由一组系统调用组成。
操作系统的体系结构
|