计算机操作系统复习系列文章传送门:
第一章 计算机系统概述
第二章 进程管理
第三章 进程同步
第四章 内存管理
第五章 文件管理
第六章 输出输出I/O管理
文章目录
- 前言
- 一、计算机系统概述
-
- [1.1 操作系统的概念](#1.1 操作系统的概念)
- [1.2 操作系统的四个特征](#1.2 操作系统的四个特征)
- [1.3 分时操作系统和实时操作系统的对比](#1.3 分时操作系统和实时操作系统的对比)
- [1.4 操作系统的目标和功能](#1.4 操作系统的目标和功能)
-
- [1.4.1 库函数与系统调用的区别与联系](#1.4.1 库函数与系统调用的区别与联系)
- [1.5 操作系统的运行环境](#1.5 操作系统的运行环境)
- [1.6 中断和异常](#1.6 中断和异常)
-
- [1.6.1 中断机制](#1.6.1 中断机制)
- [1.6.2 访管指令](#1.6.2 访管指令)
- [1.6.3 通道机制](#1.6.3 通道机制)
- [1.7 系统调用](#1.7 系统调用)
- [1.8 操作系统的体系结构](#1.8 操作系统的体系结构)
- [下一章 第二章 进程管理](#下一章 第二章 进程管理)
前言
给大家整理了一下计算机操作系统中的重点概念,以供大家期末复习和考研复习的时候使用。
参考资料是王道的计算机操作系统和西电的计算机操作系统。
一、计算机系统概述
1.1 操作系统的概念
定义:操作系统是控制管理计算机系统的硬软件,分配调度资源的系统软件。
1.2 操作系统的四个特征
最基本的特征,互为存在条件:并发,共享;
(1)并行:指两个或多个事件可以在同一个时刻发生,多核CPU可以实现并行,一个CPU同一时刻只有一个程序在运行;
(2)并发:指两个或多个事件可以在同一个时间间隔发生,用户看起来是每个程序都在运行,实际上是每个程序都交替执行。
(3)共享性:操作系统的中资源可供多个并发的程序共同使用,这种形式称之为资源共享。互斥共享:当资源被程序占用时,其它想使用的程序只能等待。同时访问:某种资源并发的被多个程序访问。
(4)虚拟性:表现为把一个物理实体转变为若干个逻辑实体。时分复用技术:资源在时间上进行复用,不同程序并发使用,多道程序分时使用计算机的硬件资源,提高资源的利用率。空分复用技术:用来实现虚拟磁盘(物理磁盘虚拟为逻辑磁盘,电脑上的C盘、D盘等)、虚拟内存(在逻辑上扩大程序的存储容量)等,提高资源的利用率,提高编程效率。
(5)异步性:在多道程序环境下,允许多个进程并发执行,但由于资源等因素的限制,使进程的执行以"停停走走"的方式运行,而且每个进程执行的情况(运行、暂停、速度、完成)也是未知的。
1.3 分时操作系统和实时操作系统的对比
批处理系统的主要缺点是没有交互能力,只能按照控制说明书间接干预。
对比单道系统程序,多道程序系统的优点是CPU利用率高、系统吞吐量大、I/O设备利用率高。多道程序系统必须互斥的访问共享资源,因此必须对共享资源进行保护。
分时操作系统是指多个用户通过终端同时共享一台主机,用户可以同时与主机进行交互操作而互不干扰。
分时操作系统的特性:(1)同时性,也称多路性,志云多个用户同时或基本同时使用计算机。(2)交互性,用户通过终端采用人机对话的方式直接控制程序运行,与程序交互。(3)独立性,多个用户可以彼此独立的进行操作,互不干扰。(4)及时性,分时系统采用时间轮转片使一台计算机同时为多个终端服务。
实时操作系统为了在某些时间限制内完成紧急任务而不需要时间片排队,产生了实时操作系统。分为硬实时系统(飞行器自动控制系统)和软实时系统(订票系统和银行管理系统)。主要特点是及时性和可靠性。
多路性两者兼具,分时系统按照分时原则为多个终端服务,实时系统对多路现场信息进行采集和对多个对象或执行系统的控制。独立性两者兼具,及时性实时更高,交互性实时只能与特定的交互,可靠性实时更高。
1.4 操作系统的目标和功能
目标:方便性,有效性(提高系统资源的利用率、提高系统的吞吐量),可扩充性,开放性。
操作系统的功能是作为用户和计算机硬件之间的接口,接口分为一:命令接口(用户利用这些操作命令来组织和控制作业的执行)(Shell命令解释器、命令解析器等),二:程序接口也称系统调用(编程人员可以使用他们来请求操作系统服务);二是作为系统资源的管理者(包括文件管理、内存管理、处理器(CPU)管理、设备(计算机硬件)管理);三是对硬件机器的拓展。
1.4.1 库函数与系统调用的区别与联系
库函数是高级语言中提供与系统调用相对应的函数,目的是隐藏"访管"指令的细节,使系统调用更加方便、抽象。但库函数属于用户程序而非系统调用,是系统调用的上层。库函数可以运行在用户空间中,系统调用运行在内核空间中。系统调用是操作系统的一部分,是内核提供给用户的程序接口。未使用系统调用的库函数执行效率比系统调用的高,因为涉及系统调用则需要状态的转换。
中断处理是操作系统必须具有的功能。
1.5 操作系统的运行环境
程序分为内核程序和应用程序。操作系统的内核程序是系统的管理者,既可以执行特权指令,也可以执行非特权指令,运行在核心态。应用程序为了保证系统能安全运行只能执行非特权指令,运行在用户态。
指令分为特权指令和非特权指令。特权指令不允许用户程序使用,如I/O指令、置中断指令、送程序状态字到程序状态字寄存器等指令。非特权指令如普通的运算指令。用户态时CPU只能执行非特权指令,核心态时特权指令、非特权指令都可以执行。
CPU状态分为用户态和核心态。程序状态字寄存器(PSW)的标志位表示处于什么状态。
操作系统最终加载到RAM(random access memory)。ROM(random only memory)
1.6 中断和异常
1.6.1 中断机制
中断(Interruption),也成为外中断,来自于CPU外部的事件,是指计算机运行过程中,出现某些意外情况需主机干预时,机器能自动停止正在运行的程序并转入处理新情况的程序,处理完毕后又返回原被暂停的程序继续运行,需要操作系统介入开展管理工作(如外设请求(I/O操作完成的中断信号)、人工干预(强行终止))。
异常(Exception),陷入,也成为内中断,来自于CPU内部的事件,如非法操作码、地址越界、算术溢出、虚存系统缺页等等,异常不能被屏蔽,一旦出现应当立即处理。(自愿中断(调用访管指令)、强迫中断(缺页、除0)等)
从用户态到核心态的转换是硬件完成的,通过中断机制来实现,中断或异常是唯一途径,而核心态到用户态只需要特权指令将PSW置为用户态即可。中断处理一定会保存是程序状态字寄存器(PSW)的内容。子程序调用和中断处理都会保存PC(程序计数寄存器)。操作系统保存的是通用寄存器的内容,并不保存程序计数器PC的内容,CPU检测到中断信号后,由硬件自动板寸被中断程序的断点(程序计数器PC),操作系统负责提供中断服务,初始化中断向量表,保存中断屏蔽字。
1.6.2 访管指令
访管指令是一条可以在用户态下执行的指令,从而产生一个中断事件(自愿中断--访管中断),将操作系统转换为核心态。广义指令就是系统调用。
1.6.3 通道机制
通道是一个用来控制外部设备工作的硬件机制,相当于一个功能简单的处理机。通道是独立于CPU的专门负责数据输入输出工作的处理机,它对外部设备实现统一管理,代替CPU对I/O操作进行控制,从而使I/O操作可以与CPU并行工作。通道是实现计算和传输并行的基础,以提高整个系统的效率。通道就是可以通数据的CPU发出一条通道命令,然后由通道和外设交换数据,之后CPU就做其它的事情,通道和外设 交换完数据后再向CPU汇报,CPU再处理。
1.7 系统调用
是指用户在程序中调用操作系统所提供的一些子功能,应用程序可以发出系统调用请求来获得操作系统的服务。系统调用的目的是请求系统服务。凡是与资源有关的操作(如存储分配、I/O操作、文件管理等),都必须通过系统调用的方式向操作系统提出服务请求,由操作系统代为完成。这样可以保证系统的稳定性和安全性,防止用户进行非法操作。
系统调用发生在用户态,对系统调用的处理发生在核心态。
系统调用分为1.设备管理(对设备的请求、释放、启动)、2.文件管理(对文件的读、写、创建、删除)、3.进程控制(对进程的创建、撤销、阻塞、唤醒)、4.进程通信(消息传递或信号传递)、5.内存管理(对内存的分配、回收、获取作业占内存区大小及始址等)。
执行系统调用的过程:1、由进程先传递系统调用的调用参数。2、执行trap指令转为核心态。3、执行相应的服务程序。4、返回用户态。
1.8 操作系统的体系结构
大内核是将操作系统的主要功能模块(包括微内核的功能以及进程管理、存储器管理、设备管理等功能)都作为系统内核,运行在核心态。优点是高性能,缺点是内核代码庞大,结构混乱,难以维护。
微内核是只把最基本的功能(如时钟管理、中断处理、原语(设备驱动、CPU切换)等)保留在内核,优点是内核功能少,结构清晰,方便维护,缺点是频繁在核心态和用户态之间切换,性能低。