操作系统原理 第一章第二章复习
Posted zyf3855923
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了操作系统原理 第一章第二章复习相关的知识,希望对你有一定的参考价值。
操作系统复习
第一章 操作系统概述
基本概念
- 吞吐量:单位时间内系统能处理的工作量。
- 进程:正在动态执行的程序
- 实时操作系系统:实时计算。计算的正确性不仅依赖于系统计算的逻辑结果,还依赖于产生这个结果的时间一类的计算。
- 操作系统的特征:现代操作系统大多支持多任务,具有并发、共享、虚拟、异步的特征。
单道批处理系统
- 特性:自动性、顺序性、单道性。
- 作业独占CPU和内存。
多道批处理系统
- 特性: 多道性、无序性、调度性、复杂性。
- 优点:提高CPU的利用率、提高内存和I/O设备的利用率、增加系统吞吐量。
- 缺点:平均周转时间长(每个任务都存在等待时间) (2)缺乏交互能力
操作系统的功能
1.存储器管理功能
(1) 内存分配:静态分配、动态分配
(2) 内存保护
(3) 地址映射: 需配合硬件完成。其结果为逻辑地址映射为物理地址。
逻辑地址从哪来:IR寄存器->译码->取操作数
(4) 内存扩充:虚拟存储技术。
2.进程管理功能
包括进程控制、进程同步、进程通信、进程调度
3.设备管理功能
设备管理应有以下功能:
(1) 缓冲管理:管理各种缓冲区。
(2) 设备分配:分配I/O所需的设备
(3) 设备处理:由设备驱动实现CPU与设备控制器间的通信。
(4) 设备独立性与虚拟设备
4.文件管理
主要解决:按名访问、文件存储的功能。
5.为用户提供接口
指令的执行
- 一条高级语言对应多条机器语言
- 程序的执行本质是指令一条条执行的过程,指令执行的本质只可能产生存储单元的变化。
- 取指令和执行指令是通过硬件完成的。
- 任何高级语言程序被编译成指令集合,其中的每一条指令都属于机器体系结构指令集。
- 硬件上下文:中断返回恢复被中断程序的执行时,必须要写回CPU寄存器的值。
第二章 进程的描述与控制
1.程序的并发执行
1.1 程序的顺序执行
程序的顺序执行时具有以下特点:顺序性、封闭性、可再现性。
1.2 程序的并发执行
程序的并发执行具有如下特点: 间断性、失去封闭性、不可再现性
不可再现性产生的原因:CPU交替执行指令,产生了不同的指令执行序列,导致结果不同。
2. 进程的描述
2.1 基本概念
- 进程的定义:进程是程序在一个数据集合上的运行过程。
? 进程时由正文段、用户数据段以及系统数据段共同组陈的一个执行环境。
程序的执行过程实际上是一个执行环境的总和。
进程的特征:1) 并发性:多个进程实体同存于内存中
? 2) 动态性:进程时进程实体的执行过程
? 3) 独立性:在没有引入线程的操作系统中,进程是独立 运行和资源调度的基本单位。
? 4) 异步性:进程以不可预知的速度向前推进,按异步方式运行。
? 5) 结构特征: 进程实体包括用户正文段、系统数据段和用户数据段。
进程与程序的比较:
区别:1)程序是静态的、进程是动态的。
? 2)程序是永久的,进程是暂时存在的。
? 3)进程与程序存在实体不同。程序是指令的集合,而进程包含了用户正文段、系统数据段、用户数据 段的实体。
联系: 进程是程序的一个执行,总是对应至少一个特定程序,而一个程序可对应多个进程。
操作系统内核是计算机硬件的第一次扩充。
2.2 进程控制块PCB
- 进程控制块是进程实体的一部分,是操作系统中最重要的记录型数据结构。
- (time\\_slice) 字段用于记录进程在CPU上运行的时间片中还剩余的时钟节拍数。
3. 进程的控制
进程三种状态:就绪状态、执行状态、阻塞状态。
进程进程间三个基本状态之间的转换关系
4. 操作系统内核
4.1 操作系统如何被加载
- Bios将当前磁盘的活动分区的第一个扇区(引导扇区)加载到内存
- 执行boot程序,从磁盘的文件系统中找到OS内核的加载程序(loader.bin),并且将loader.bin装入内存,跳转至loader.bin的第一条命令,开始执行loader.bin程序。
- 执行loader程序,将OS内核程序从外存装入内存。
- 内核从式模式跳转到保护模式的启用分页机制。
4.2 中断
什么是中断?
中断时改变处理器执行顺序的一种事件。
为什么引入中断?
引入中断后,CPU可以与其他设备并行工作,能够有效提高CPU的利用率,改善系统性能,支持系统的异步性。
中断的类型
分为:同步中断(内部中断或异常)、异步中断(外部中断)。内部中断:一条指令终止执行后CPU才会发出中断。异步中断:其他硬件设备按照CPU时钟信号随机产生。
关中断指令:由内核或基于硬件的软件执行。
对于可屏蔽中断,开中断是响应中断的前提。
响应中断的时机:对于外部中断,CPU每执行完一条指令都会检测是不是有外部中断信号到来,若有,则转中断处理。
检测到有中断信号,转中断处理的过程:
1)先保护断点,将当前要执行的下一条指令的地址保存到内存中,以便中断返回时能把这个地址恢复到PC中,使得,被中断的程序从断电出开始继续执行。
2)系统关闭中断,转中断处理程序,在中断处理程序中完成保护现场的工作,即把相关硬件上下文信息保存到内存中。
3)保护完现场,根据中断向量到中断向量表中(Linux中是到中断描述符表)找到与中断处理子例程入口地址的相关信息,根据这些信息找到中断处理子例程的入口地址,并执行中断处理子例程,完成本次中断处理的特定处理工作。
4)恢复现场,开中断,CPU返回断电处继续执行被中断程序 。
中断向量:中断向量是对不同中断源到来的信号编号。不可屏蔽中断的向量和异常的中断向量是固定的,而可屏蔽中断的向量可通过中断控制器的编程来实现。
中断描述符表(IDT):一个系统表,每个中断或异常斗鱼向量联系,每个向量在表中都有唯一对应的表项,其中存有与中断或异常处理子程序入口地址的相关信息。OS初始化时,由OS执行汇编指令Idit加载进内存。
中断处理子程序的入口地址相关信息在内存中的地址 = idtr中的地址 + 8 * 中断向量?
4.3 时钟管理
操作系统内核可以通过时间机制防止一个程序垄断CPU或者其他资源。
计算机系统中的时钟:
RTC时钟:又叫CMOS时钟。
OS时钟:产生于PC机主板上的定时/记数芯片。
可编程间隔定时器PIT:PIT按照一定的频率产生时钟中断,以告知内核又一个时间间隔过去了。
时钟滴答:OS时钟由可编程定时计数器输出脉冲触发中断而产生的,输出的脉冲中心叫做一个时钟滴答。
时钟中断间隔高:有些需要精确计时的应用无法正确运行
时钟中断间隔低:OS占用CPU高,吞吐量变低
因此,时钟中断间隔由系统性能决定。
4.4 系统调用
什么是系统调用?
系统调用是核心程序与用户程序之间的接口,是操作系统内核中预先定义好的模块。
系统调用与一般函数调用的区别:
1) 系统调用运行在系统态,一般函数运行在用户态。
2)系统调用与一般函数调用的过程不同。当系统调用执行时,当前进程被中断,由系统寻找相应的系统调用子程序,并在核心态下执行,执行结果返回进程。
3)系统调用要进行中断处理,比一般函数调用多了一些系统开销。
用户态执行:用户空间指的是用户进程所处的地址空间。一个用户进程不能访问其他进程的用户空间。只有核心程序所启动的进程才能访问其他用户空间。当一个进程在用户空间执行时,称该进程在用户态执行。
系统态执行:系统核心空间指的是含有一切系统核心代码的地址空间,当进程处于具有执行系统核心代码的权力状态时,称该进程在系统态执行。
系统调用的过程:
1.保存系统调用号。
2.执行中断指令,陷入内核态。
3.根据系统调用号从系统调用表中找到系统调用实现历程的实现地址。
4.执行系统调用实现历程。
5.返回用户态。
系统调用的优点:
1.使编程更容易,用户不用具体了解相应硬件设备。
2.极大提高了系统安全性。
以上是关于操作系统原理 第一章第二章复习的主要内容,如果未能解决你的问题,请参考以下文章
《通信原理》复习笔记6----第六章数字基带传输系统相关例题(重中之重点+难上加难点)
计算机组成原理期末复习必备知识点大全——第一章(计算机系统概论)