第一章 计算机系统概述
考点1 操作系统的概念、特征和功能
考点2 内核态与用户态
2.用户态和内核态之间的切换本质上就是应用程序和操作系统对CPU控制器的切换
考点3 中断和异常
考点4 系统调用
3.C
考点5 操作系统引导
①磁盘的物理格式化:这是厂家做的事。物理格式化就是将磁盘划分扇区,划分好扇区后就可以用柱面号、盘面号和扇区号这三个维度去定位磁盘中的某一个扇区。
物理格式化后就可以去市场上售卖该磁盘了。
②对磁盘进行分区:即将磁盘分为C盘、D盘、E盘等。可以选定分几个分区,每个分区的大小是多少。
③逻辑格式化:对每个分区进行逻辑格式化。逻辑格式化的作用是给每个分区建立好根目录信息,同时初始化每个分区的文件系统相关信息。不同的分区可以安装不同的文件系统,比如C盘可以安装UFS文件系统,D盘可以按照FAT文件系统。对于UFS文件系统,需要建立inode索引节点,而对于FAT文件系统,需要建立FAT表。
④操作系统的安装:一般是在C盘安装操作系统,但也可以安装到D盘、E盘等。
- 3)磁盘扇区的划分在磁盘的物理格式化中进行,文件系统根目录的建立是在磁盘的逻辑格式化中进行。
4.A
王道书知识点总结
1.1 操作系统的基本概念
2.操作系统的特征
①并发
②.共享
共享性:计算机系统中同时存在着多个运行的程序
并发和共享式操作系统最基本的特征,两者互为存在的条件
③虚拟
④异步
3.操作系统的目标和功能
执行一个程序前需要将该程序放到内存中,才能被CPU处理
①操作系统分为处理机管理、存储器管理、设备管理和文件管理。
②操作系统作为用户与计算机硬件系统之间的接口
系统调用类似于函数调用,是应用程序请求操作系统服务的唯一方式
③操作系统实现了对计算机资源的扩充
1.2 操作系统发展历程
①手工处理阶段
②批处理阶段
引入脱机输入/输出技术并由监督程序负责控制作业的输入、输出
3.分时操作系统
4.实时操作系统
5.个人计算机操作系统
1.3 操作系统的运行环境
3.CPU中有一个寄存器叫程序状态字寄存器(PSW),其中有一个二进制位,用于记录是用户态还是内核态。
4.内核态与用户态的切换
内核态-->用户态:执行一条特权指令,即修改PSW的标志位为用户态,这个动作意味着操作系统主动让出CPU的使用权
用户态-->内核态:由中断引发,硬件自动完成变态过程,触发中断信号意味着操作系统将强行夺回CPU的使用权
除了非法使用特权指令外,还有很多事件会触发中断信号。但凡需要用到操作系统介入的地方,都会触发中断信号。
5.通过时钟中断的管理,可以实现进程的切换。
6.中断机制
不同的中断信号,需要用不同的中断处理程序来处理,当CPU检测到中断信号后,会根据中断信号的类型去查询"中断向量表",以此来找到中断处理程序在内存中的存放位置。
7.原语
8.系统控制的数据结构及处理
9.中断和异常的概念
如果没有中断机制,那么一旦应用程序上CPU运行,CPU就会一直运行这个程序
"中断"是让操作系统内核夺回CPU使用权的唯一途径
①中断和异常的定义
②中断和异常的分类
故障:可能被内核程序修复,修复后会把CPU使用权还给应用程序
终止:由致命错误引起,内核程序无法修复,不再归还CPU的使用权,而是直接终止该应用程序
③中断和异常的处理过程
10.系统调用
操作系统内核对共享资源进行统一管理,并向上提供系统调用。用户进程想要使用诸如打印机这种共享资源,只能通过系统调用向操作系统内核发出请求。
内核会对各个请求进行协调处理。
系统调用可以保证系统的稳定性和安全性,防止用户进行非法操作。
系统调用的处理过程
陷入指令=访管指令=trap指令
1.4 操作系统结构
操作系统内核需要运行在内核态,而非内核功能运行在用户态
2.分层法
分层法是自底向上逐层调试验证
3.模块化
优点:①任何模块都可以直接调用其他模块,而不需要采用消息传递通信,效率高
②支持动态加载新的模块
③模块间逻辑清晰
缺点:①模块间的接口定义未必合理使用
②模块间的接口规定很难满足对接口的实际需求
4.宏内核
包含进程管理、存储器管理、设备管理等功能
5.微内核
只包含时钟管理、中断处理、原语这些最接近硬件的功能
微内核的基本功能
微内核的特点
tip:宏内核和微内核的区别
6.外核
1.5 操作系统引导
1.6 虚拟机
虚拟机=虚拟机管理程序=虚拟机监控程序=Virtual Machine Monitor = Hypervisor
1.第一类虚拟机管理程序
2.第二类虚拟机管理程序
可迁移性更好,只需导出虚拟机镜像文件即可迁移到另一台HostOS上,商业化应用更广泛
1.7 本章疑难点
王道书选择题总结
1.2.7
1.3.4
一刷笔记整理:
1.6.2
第二章 进程与线程
考点6 进程与线程
考点7 进程状态与进程控制
2.进程状态转换是通过原语完成的
考点8 处理机调度
考点9 进程同步与互斥
①单标志法:违背空闲让进
②双标志先检查法:违背了忙则等待
双标志后检查法:违背了空闲让进、有限等待
③皮特森算法:违背了让权等待
2.信号量机制
考点10 经典同步问题
1.生产者消费者问题
能否改变两个P操作的顺序?
2.读者写者问题
写优先:
3.哲学家进餐问题
王道书知识点总结
2.1 进程与线程
(1)为什么要引入进程?
(2)什么是进程?进程有什么组成?
程序是静态的,而进程是动态的,是程序的一次执行过程(同一个程序多次执行对应多次进程)
2.当进程被创建时,操作系统会为该进程分配一个唯一的、不重复的"身份证号"------PID(即进程ID)
①操作系统要记录PID,进程所属用户ID(UID)[可以让操作系统区分各个进程]
②还要记录给进程分配了哪些资源(如分配了多少内存、正在使用哪些I/O设备、哪些文件)[可用于实现操作系统对资源的管理]
③还要记录进程的运行情况(如CPU使用时间、磁盘使用情况、网络流量使用情况)[可用于实现操作系统对进程的控制调度]
3.进程的特征
4.进程是进程实体的运行过程
一个进程实体(进程映像)由PCB、程序段和代码段组成
进程是动态的,而进程实体(进程映像)是静态的
5.进程的组成
①进程控制块
②程序段
③数据段
注:同时挂3个qq号,会对应3个qq进程,它们的PCB、数据段各不相同,但程序段的内容都是相同的(都是运行相同的qq程序)
PCB、数据段是给进程自己用的,与进程自身的运行逻辑有关
6.进程的状态与切换
7.进程控制
原语的原子性由"关中断指令"和"开中断指令"这两个特权指令实现原子性
CPU执行了关中断指令之后,就不再例行检查中断信号,知道执行开中断指令之后才会恢复检查
8.进程的通信
①共享存储
②消息传递
③管道通信
9.线程和多线程模型
有的进程可能需要同时做很多事,而传统的进程只能串行地执行一系列程序。为此,引入线程,来增加并发度
①线程的基本概念
②线程与进程的比较
引入线程后,进程是资源分配的基本单位,而线程是调度的基本单位
③线程的属性
④线程与进程的状态转换
⑤线程的组织与控制
⑥线程的实现方式
用户级线程
内核级线程
组合方式
⑦多线程模型
王道书选择题总结
2.1.8
2.2.7
先来先服务调度算法有利于CPU繁忙型算法,不利于IO繁忙型算法
2.3.8
管程
2.4.6
死锁预防只需要破坏死锁产生的四个条件之一即可:
①破坏互斥的条件
②破坏不可剥夺条件
③破坏请求或保持条件
④破坏循环等待的条件
为了破坏循环等待条件,可以采用顺序资源分配法。首先给系统的各类资源编号,规定每个进程必须按编号递增的顺序请求资源,同类资源一次申请完。
也就是说,一个进程只在已经占有小编号的资源时,才有资格申请更大编号的资源。按此规矩,已持有大编号资源的进程不可能再逆向申请小编号的资源,因此不会产生循环等待现象。
死锁产生的两个原因:
①系统资源的竞争
②进程推进顺序非法
我忽略了一种情况,即x=0,y=z=1
资源分配图不能完全简化,称为死锁定理。
死锁定理用于死锁检测。
死锁预防可能会限制用户申请资源的顺序(破坏循环等待条件)
第三章 内存管理
3.1.7
静态重定位在装入时一次完成,动态重定位在执行时进行
群u锐评:
3.2 虚拟内存管理
1.虚拟技术的实现
2.虚拟内存的分配
3.调页相关
4.FIFO页面置换算法会出现当进程分配的物理块增多,缺页次数不减反增的异常现象,称为Belady异常
5.CLOCK算法
6.工作集
7.内存映射文件
3.2.10
第四章 文件管理
4.1.8
4.2.7
4.3.7
第五章 输入/输出(I/O)管理
5.1.6
5.2 设备独立性软件
①单缓冲
②双缓冲
③循环缓冲
④缓冲池
2.设备分配
4.设备分配步骤
5.逻辑设备名到物理设备名的映射
6.SPOOLing技术
7.设备驱动程序接口
5.2.7
5.3.6
操作系统强化一轮完毕。祝各位一战成硕!