跳转至

概述

几种操作系统

image-20260820153116025

  1. 程序和作业的区别在于大小和位置,后者更大;前者在主存,后者在外存。

  2. 多道批处理是在批处理系统上基于多道程序设计实现的。

  3. 多道程序设计是基于中断实现的,而非分时功能。
  4. 多道批处理系统中由于使用了中断技术,因此CPU可以在一个程序需要I/O后转而去执行另一个程序,这实现了CPU与I/O的并行,同时,也提高了I/O设备的利用率。相对于单道批而言,多道批还提高了CPU利用率,因为总有一个作业在CPU上执行,因此还提高了CPU的利用率。

CPU的工作模式

image-20260820154351388

  1. 通常来说,内核代码是放在内存的高地址部分。(前提是虚拟地址空间)
  2. 内核态永远是CPU的状态,若遇到某程序运行在内核态这种说法,意味着这个程序可以使用特权指令。

OS内核

image-20260820155302875

  1. 中断处理是操作系统必须提供的功能。

系统调用

  1. 系统调用是操作系统提供给应用程序使用的接口。
  2. 程序接口是由一组系统调用组成的。
  3. 中断处理一定会把PC和PSW压栈,但是一般函数调用只会把PC压栈。

下图中的syscall就是自陷指令,我们执行的库函数并非真正的系统调用函数,库函数调用的才是。

image-20260820160458927

image-20260820160513650image-20260820160519895

OS引导

名词

image-20260820160945201

  1. 硬盘分为了系统分区(活动分区)和普通分区(非活动分区)。
  2. 主引导记录 (MBR):Master Boot Record
  3. 分区引导记录 (PBR):Partition Boot Record
  4. 引导程序分有两种:一种是自举程序存放在Bios中;另一种是操作系统的引导程序(称为启动管理器),位于硬盘中的活动分区的引导扇区,用以引导操作系统。

image-20260820161442993

虚拟机

image-20260820161519564

  1. 多台虚拟机同时运行在同一物理机器上,这并不意味着真正的并行,更类似与多个程序。真正实现并行的是多核处理器

补充

  1. 并发指的是若干事件在同一时间间隔内发生,而并行指的是若干事件在同一时刻发生。
  2. 中断向量表一般由数组实现。
  3. 一般需要在内核态下运行的操作:有关对1/O设备操作的指令;有关访问程序状态的指令;存取特殊寄存器的指令等。
  4. 打断点是trap指令,所以并不是特权指令。
  5. 【阶段一:硬盘准备】(装机时一次性完成,数据固化在磁盘) 物理格式化 -> 硬盘分区 (创建硬盘分区表) -> 逻辑格式化 (创建文件系统、根目录、索引节点表) -> 安装操作系统

(时间分割线:系统安装完毕,此后日常开机) ↓↓↓

【阶段二:开机引导】(每次通电均执行,数据在内存中重建) 激活 CPU -> 加电自检 (POST) -> 加载主引导记录 (MBR) -> 读取活动分区的引导块 (PBR) -> 加载操作系统内核 -> 操作系统初始化 (创建中断向量表)