北京理工大学 计算机学院 操作系统概论 复习笔记
第一章 操作系统概论
早期操作系统设计的主要目标:方便性、有效性、便于设计实现维护
操作系统管理系统的什么资源:软、硬件资源
为什么要引入多道程序系统?他有什么特点:提高CPU利用率,以主存为中心
操作系统的基本功能:处理机管理、存储器管理、设备管理、文件管理
==批处理系统、分时系统和实时系统==各有什 么特点?各适合应用于哪些方面?
- 批处理系统:系统吞吐量大,资源利用率高。适合计算量大、自动化程度高的成熟作业
- 分时系统:同时性、独立性、交互性、及时性。适合大型数据库的查询
- 实时系统:实时性、可靠性、确定性。适合工业生产中的自动控制、飞机导航、导弹发射
操作系统的特性:==并发行、共享性(支持并发性的物质基础)==、虚拟性、异步性(随机性)
衡量OS的性能指标:
- 资源利用率:在给定时间内,系统中某一资源实际使用时间所占比率
- 吞吐量:单位时间内系统所处理的信息量
- 周转时间:作业进入系统到退出系统所用的时间
什么是嵌入式系统:可裁剪的专用计算机系统
什么是对称多处理?它有什么好处?
操作系统和用户程序可安 排在任何一个处理机上运行,各处理机共享主 存和各种 I/O 设备。
为了实现系统保护,CPU通常有哪两种工作状态?各种状态下分别执行什么程序?什么时候发生状态转换?状态转换由谁实现的?
核心态、用户态 操作系统内核程序、用户程序 用户态到核心态的转换由硬件完成;核心态到用 户态的转换由内核程序执行后完成 终端和异常
什么是系统调用?什么是特权指令?特权指令执行时,CPU 处于哪种工作状态?
操作系统通常向用户提供哪几种类型的接口?其主要作用是什么?
操作接口:命令语言或窗口界面是用户使用计算机系统的主要接口。
编程接口:系统调用是用户与操作系统 之间的编程接口
第二、三章:进程管理
程序顺序执行的特点:封闭性、可再现性
进程:程序的一次执行过程
进程由哪些部分组成:进程控制块、进程描述符
进程的四大特性
- 动态性:临时的,有生命期的
- 独立性:系统进行资源分配和调度的独立单位
- 并发性:多个进程可在处理机上交替执行
- 结构性:系统为每个进程建立一个进程控制块
进程和程序的区别
- 进程控制块的作用是什么:进程的唯一标识
- 主要包括什么:一个可执行程序、一个独立的地址空间、一个执行栈区、打开的文件、申请使用的IO设备
- 进程控制块的作用是什么:进程的唯一标识
进程的基本状态:运行态、阻塞态、就绪态、创建态、终止态
- ==原语==:若干条指令组成的程序段,用来实现某个特定功能,在执行过程中不可被中断
- ==进程控制==
- ==原语==:若干条指令组成的程序段,用来实现某个特定功能,在执行过程中不可被中断
进程调度的功能、方式、时机、算法
功能:记录系统中各进程的执行状况、选择就绪进程占有CPU、进行进程上下文的切换
==方式==:
- 非抢先方式
- 抢先方式
时机:
- 现行进程完成或错误终止
- 提出IO请求、等待IO完成时
- 在分时系统,按照时间片轮转,分给进程的时间片用完时
- 优先级调度
- 进程执行了某种原语操作
算法:先来先服务、最短作业优先、响应比高者优先、优先级调度、轮转、多级反馈队列轮转
作业调度、交换调度
作业的周转时间和作业的带权周转时间
==线程的定义==:组成一个进程作业的许多可能的子任务
==线程和进程的比较==:以进程为单位分配资源,以线程为单位调度执行
系统对线程的支持:用户级线程、核心级线程、两级组合
并发执行的进程在系统中的关系:顺序关系、并行关系、一般关系、互斥关系(对资源的共享)、同步关系(协作完成同一个任务)、进程之间的前序关系
临界资源:一次仅允许一个进程使用的系统中共享资源
临界区:并发进程访问临界资源的那段必须互斥执行的程序
四准则:互斥使用、让权等待、有空让进、有限等待
解决进程之间互斥的方法:
- 软件的实现方法
- 硬件的实现方法
- 开、关中断
- 加锁开锁
- P、V信号量
对资源S执行P操作:申请s
V:释放s
==信号量值为负时,说明有一个进程正在临界区执 行,其它的正排在信号量等待队列中等待,等待 的进程数等于信号量值的绝对值==
==在用 P/V 操作实现进程通信时,应根据 什么原则对信号量赋初值==
==IPC问题==
==进程高级通信的实现机制==:消息缓冲、信箱 、管道、共享主存区
死锁产生的必要条件及解决死锁的方法:
- 必要条件:互斥条件、保持和等待条件、不剥夺条件、循环等待条件
- 鸵鸟算法、预防、避免、检测和恢复
理解银行家算法的实质。能够利用银行家算法避免死锁。
第四章 存储器管理
存储器管理的功能:存储器分配、地址转换或重定位、存储器保护、存储器扩充、存储器共享
名字空间、==地址空间==、 存储空间、逻辑地址、物理地址。
地址重定位:把程序地址空间的逻辑地址转换为存储空间的物理地址
- 静态重定位:进程执行前,由装入程序把用户程序中的 指令和数据的逻辑地址全部转换成存储空间 的物理地址。
- 动态重定位:程序运行时,把该存储区的起始地址送入重定 位寄存器。需硬件地址转换机构。
内存划分为两大部分:用户空间和操作系统空间。存储器管理是针对用户空间进行管理的。
存储保护的目的:防止地址越界、正确进行存取
==可变式分区管理空闲区的方法==:根据作业的大小动态地划分分区,使分区的大小正好等于作业大小
- 分区说明表、空闲区链表
- 分配算法:首次适应、最佳适应、最坏适应
设置上、下界寄存器来实现存储器保护
覆盖与交换的特点:打破了一个程序一旦进入主存, 便一直运行到结束的限制。
页表的作用:系统为每个进程建立一张页面映像表 ,记录逻辑页与主存块的映射关系
页式管理的地址变换过程
管理内存的数据结构:
什么是页式存储器的内零头(操作系统在分配内存时,有时候会产生一些空闲但是无法被正常使用的内存区域,这些就是内存碎片,或者称为内存零头)?它与页的大 小有什么关系?可变式分区管理产生什么 样的零头(碎片)?
==段式存储器管理与页式管理的主要区别是什么==:
(1) 段是由用户划分的;页是为了方便管理由硬件划分 的,对用户是透明的。
(2) 页的大小固定;段的大小不固定。
(3) 段式用二维地址空间;页式用一维地址空间。
(4) 段允许动态扩充,便于存储保护和信息共享。
(5) 段可能产生主存碎片;页消除了碎片。
(6) 段式管理便于实现动态链接,页式管理只能进行静 态链接。
(7) 段与页一样,实现地址变换开销大,表格多。
虚拟存储器:是系统为了满足应用对存储器容 量的巨大需求而构造的一个非常大的地址空间
虚拟存储器的容量能大于主存容量加辅存容量之和
实现请求页式管理,需要对页表进行修改
- ==状态位==:用来指示某页是否在主存
- ==修改位==:指示该页调入主存后是否被修改 过。“ 1” 表示修改过,“ 0” 表示未修改过
- ==访问位==:指示该页最近是否被访问 过,“ 1” 表示最近访问过,“ 0” 表示最近未访问
产生缺页中断时,系统应做哪些工作:一条指令没执行完, OS 进行缺 页中断处理后,应重新执行被中断的指令。
==会利用 FIFO、LRU、OPT 以及时钟页面置换算法描述页面置换过程==,计算产生的缺页率。
Belady 异常:当为进程分配的主存块多时,有 时产生的缺页中断次数反而增多。
- ==多级页表的概念==
- ==多级页表中页表建立的时机==:要访问页时,才为包含该页的页表分配空 间和建立页表页
- 写时复制技术的概念:若有进程要写某 页,系统就把此页复制到主存的另一个页框中 ,并更新该进程的页表,使之指向此复制的页 框,且设置该页为可读 / 写。
==页的共享问题。需要一个专门数据结构来记录进程间共享页==:把共享页锁在内存,且在页表中增加引用计数项, 仅当其引用计数为 0 时,才允许调出或释放盘 空间。
第五章 文件系统
- 什么是文件和文件系统:文件系统是操作系统中最为可见的部分,由一组文件和一个目录结构组成。
- 文件系统的主要功能:
- 管理文件存储器。记录空间使用情况,分配空 间,调整或回收空间。
- 实现按名存取。利用目录结构快速定位文件。
- 应具有灵活多样的文件结构和存取方法,便于用户存储和加工处理信息。
- 提供一套使用方便、简单的操作命令。
- 保证文件信息的安全性。
- 便于文件的共享。
- UNIX系统如何对文件进行分类:普通文件、目录文件、特别文件
- 它有什么好处?
- 文件系统的主要功能:
- 什么是文件和文件系统:文件系统是操作系统中最为可见的部分,由一组文件和一个目录结构组成。
- 文件目录的作用是什么?
- 文件目录项通常包含哪些内容? ==文件控制块==
- 文件目录的作用是什么?
- 文件的逻辑结构有几种形式:
- 无结构的字节流式文件
- 有结构的记录式文件
- 文件的存取方法
- 顺序存取
- 直接存取
- 文件的逻辑结构有几种形式:
==文件的物理结构有哪几种==对于不同的结构,文件系统是如何进行管理的
- 连续文件:
- 链接文件:把文件所占 用的物理块用链接指针链接起来。 DOS系统文件
- 索引文件:为每个文件建立一张索引表 Unix系统文件、Ext2
- 索引顺序文件 NTFS
DOS 文件卷的结构,DOS 系统的文件物理结构是什么:链接文件
了解记录的组块和分解:一个物理块可以存放若干个逻辑记录,一个逻 辑记录可以存放在若干个物理块中。把一个块 中存放的逻辑记录的个数叫做块因子。用户使用记录时,先将包含该记录的物理块读 入内存缓冲区,然后进行记录分解。
==文件存储空间的管理方法有几种==?它们各是如何实现文件存储空间的分配和回收的?
- ==空白文件目录:系统为所有空白文件建立一张表。每个空白文件占用一个表目。适合于文件的静态分配(连续文件的分配)。
- 空闲块链表、空闲块成组链表(UNIX):把所有空闲块连接成一个链表。
- 位映像表 (bit map) 或位示图(Ext2、NTFS):每一个二进制位对应一 个物理盘块。为 1 时表示块已分配,为 0 时 空闲。==
建立多级目录有哪些好处?文件的重名和共享问题是如何得到解决的?
- 层次结构清晰,便于管理和保护; 有利于文件分类;解决重名问题;提高 文件检索速度;能够控制存取权限。
- 硬链接,符号链接文件
文件系统中,常用的文件操作命令有哪些?它们的具体功能是什么?打开和关闭文件命令的目的是什么?
- 创建:在指定设备上为指定路径名的文件建立一个目录项,并设置文件的有关属性。
- 删除:根据文件的路径名找到指定的目录项,回收其占用的各个物理块,再将该目录项 置为空。
- 打开:据文件路径名找到文件目录项,进而找到 FCB ,将 FCB 复制到内存并记录到系统打 开文件表
- 关闭:释放文件在主存专门区域中的目录项,切断用户与文件的联系。若该目录项被修改过,则复制到磁盘。若文件作过某些修改,应将其写回辅存。
- 写、追加、随机存取、得到文件属性、设置文件属性、重命名
==存取控制表 ACL 的概念==:为存取控制矩阵中的每一列建立一张存 取控制表 (ACL) ,用一有序对 ( 域 , 权 集 ) 表示。
==理解内存映射文件(memory mapped file)的过程==
将文件映射到进程地址空间的 一个区域,返回虚拟地址,仅当需要对文件存取 时,才传输实际的数据。
第六章 设备管理
I/O 设备通常大致可分为哪两大类?各自传输的信息单位有什么特点?
- 1 字符设备:人机交互设备。是以字符为单位发 送和接收数据的,通信速度比较慢。键盘和显 示器、鼠标、扫描仪、打印机、绘图仪等。
- 2 块设备:外部存储器。以块为单位传输数据。 常见块尺寸: 512B ~ 32KB 。如磁盘、磁带、 光盘等。
- 3 网络通信设备:主要用于与远程设备的通信。 传输速度比字符设备快,比块设备慢。如网卡 、调制解调器等。
- 4 时钟:按预先规定好的时间间隔产生中断。
常用的四种数据传输方式
- 程序查询方式
- 中断方式
- DMA(直接存储器访问)
- 通道控制
根据设备的使用方式,设备被分为几种类型?何为虚拟设备?它是通过什么技术实现的?
独占设备:临界资源,如打印机。
共享设备:多个进程可交叉访问。如磁盘。
虚拟设备:是指设备本身是独占设备,而经过Spooling 技术虚拟技术处理,可以把它改造成共享设备。
按照设备管理的层次结构,I/O 软件划分为几层?各层主要实现哪些功能?
用户层的IO接口
中断处理程序
设备驱动程序
==独立于设备的软件==
缓冲技术
负责设备分配和调度
出错处理
IO硬件
何为设备的独立性?
(设备独立性是指用户及用户程序不受 系统配置的设备类型和具体设备的台号 的影响。用户只是使用逻辑设备,具体的 映射由操作系统完成。)
==什么是 SPOOLING 技术?以输出为例, 说明它的实现原理。(SPOOLING 技术 是以空间换时间)==
一个特定磁盘上的信息如何进行编址? 盘面号、磁道号 和扇区号(或柱面号、磁 头号和扇区号)。
要将磁盘上一个块的信息传输到主存需 要系统花费哪些时间?==(寻道时间、旋 转延迟时间和读/写传输时间)==
常用的磁盘调度算法:==先来先服务、最短寻道时间优先、扫描法== ( SCAN, C_SCAN, LOOK, C_LOOK)。
第七章 Linux进程管理
- 进程控制块,其中与进程管理、存储器管理和文件管理有关的一些字段,线程组标识符。
- 与进程创建有关的函数: fork ( )、vfork( )、clone( )。
- 理解进程切换的过程。涉及到页目录表、 核心栈、硬件上下文
- 第一步,切换页目录表以安装一个 新的地址空间
- 第二步,切换核心栈和硬件上 下文。由 schedule() 函数完成进程切
换
- 进程调度方式。进程调度时机。
- 可抢先式的动态优先级调 度方式
- 进程调度可分为:先进先出的实时进程、时 间片轮转的实时进程、普通的分时进程。
- Linux 有很多内核线程,了解 0 号进程和 1 号进程的作用。
- 0 号进程就是一个内核线程, 0 号进程是所 有进程的祖先进程,又叫 idle 进程或叫做 swapper 进程。每个 CPU 都有一个 0 号进 程。
- 1 号进程是由 0 号进程创建的内核线程 init ,负责完成内核的初始化工作。在系统关闭 之前, init 进程一直存在,它负责创建和监 控在操作系统外层执行的所有用户态进程。
第八章 Linux存储器管理
- 进程地址空间的划分:链接虚拟内存区域的单链表
- 管理进程私有地址空间的数据结构:红黑树
- 指向映射文件对象的指针字段:struct file * vm_file;
- 指向进程页目录表的指针字段:pgd_t *pgd;
- 进程地址空间的划分:链接虚拟内存区域的单链表
Linux 堆的管理:malloc( ),free( )。
管理物理内存页框的数据结构:
1
2
3
4
5
6
7
8
9struct page {
unsigned long flags; /* 页框状态标志 P172*/
atomic_t _count; /*页框的引用计数*/
atomic_t _mapcount; /* 对应的页表项数目 */
unsigned long private; /* 由伙伴系统使用 */
struct address_space *mapping; 页高速缓存
pgoff_t index; 在页高速缓存中以页为单位偏移
struct list_head lru; 链入活动页框链表或非活 动 ..
void *virtual; /* 页框所映射的内核虚地址 */ };内存管理区 zone 结构:
ZONE_DMA :包含低于 16MB 的常规内存 页框。用于对老式的基于 ISA 设备的 DMA 支持。
ZONE_NORMAL :包含高于 16MB 且低于 896MB 的常规内存页框。
ZONE_HIGHMEM :包含从 896MB 开始的 高端物理页框。内核不能直接访问这部分页 框。在 64 位体系结构上,该区总是空的。
1
2
3
4
5
6
7
8
9struct zone {
unsigned long free_pages; 空闲页框数
struct per_cpu_pageset pageset[NR_CPUS];
/* 每 CPU 页高速缓存 */
struct free_area free_area[11];
/* 伙伴系统中的 11 个空闲页框链表 */
struct list_head active_list; /* 活动页框链表,存放 最近正被访问的页框 */
struct list_head inactive_list; /* 非活动页框链表, 存放最近未被访问的页框 */
};
* 伙伴系统:采用伙伴系统 **(buddy system)** 管理连续的 空闲内存页框。伙伴算法把空闲页框组织成 **11** 个链表,分 别链有大小为 **1** , **2** , **4** , **8** , **16** , **32** , **64** , **128** , **256** , **512** 和 **1024** 个连续 页框的块。
* ==分区页框分配器分配页框的过程==
- 理解 slab 分配器的原理:slab 分配器为不同类型的对象生成不同的高 速缓存,每个高速缓存存储相同类型的对象。 高速缓存由一连串的 slab 构成,每个 slab 包含了若干个同类型的对象。
- slab 分配器的 作用:slab 分配器为只有几十或几百个字节的小内 存区分配内存。如, file 对象。
- 理解 slab 分配器的原理:slab 分配器为不同类型的对象生成不同的高 速缓存,每个高速缓存存储相同类型的对象。 高速缓存由一连串的 slab 构成,每个 slab 包含了若干个同类型的对象。
- 进程页表建立的时机:==页表一直推迟到 访问页时才建立,以节约内存==
- 了解页目录表项 或页表项所包含的字段。
- 逻辑地址的划分,利用两级页表实现地址转换的过程。
- 进程页表建立的时机:==页表一直推迟到 访问页时才建立,以节约内存==
请求调页: 请求调页增加了系统中的空闲页框数。
所缺的页可能存放的地方。
- 该页从未被进程访问过,且没有相应的内存映 射。
- 该页已被进程访问过,但其内容被临时保存到 磁盘交换区上。
- 该页在非活动页框链表中。
- 该页正在由其它进程进行 I/O 传输过程中。
了解盘交换区空间的管理方法。
- 每个盘交换区都由一组 4KB 的页槽组成。
- 盘交换区的第一个页槽用来存放该交换区的 有关信息,有相应的描述符。
- 存放在磁盘分区中的交换区只有一个子区, 存放在普通文件中的交换区可能有多个子区 ,原因是磁盘上的文件不要求连续存放。
- 内核尽力把换出的页存放在相邻的页槽中, 减少访问交换区时磁盘的寻道时间。
第九、十章 Linux文件系统
- Ext2 文件卷的布局?
- Ext2 把磁盘块分为组,每组包含存放在相 邻磁道的数据块和索引节点。块组的大小相 等并顺序安排。
- Ext2 用“块组描述符”来描述这些块组本身的 结构信息,同时将超级块和所有块组描述符 重复存储于每个块组中。
- Ext2 通过“位图”来管理每个块组中的磁盘块 和索引节点。盘块位图,索引节点位图。
- 各部分的作用是什 么?
- Ext2 文件卷的布局?
- Linux 系统把一般的文件目录项分成哪两部分?简单目录项和索引节点两部分。
- 这样做的好处是什么?可以提高文件目录的检索速度。实现多条路 径共享文件,减少信息冗余。
- Linux 系统把一般的文件目录项分成哪两部分?简单目录项和索引节点两部分。
- Linux 文件系统的索引节点中,索引表 划分成几级?
- 文件的索引表是如何增长 的?
- 要求能够利用索引表实现将文件中的字节地址转换成文件的物理块的操作。
- Linux 文件系统的索引节点中,索引表 划分成几级?
==硬链接和符号链接的区别?==硬链接 和 源文件 是同一个文件;软链接 和 源文件 是2个不同的文件。
Linux 文件系统如何管理空闲存储空间?通过超级快和块组描述符的空闲块
VFS 通用文件模型中的四个主要对象?
- 超级块对象: Linux 为每个安装好的文件系统 都建立一个超级块对象。
- 索引节点对象:打开的文件对应的…。
- 目录项对象: dentry (directory entry)
- 文件对象:记录了进程与打开的文件之间的交互信息
Linux 系统中,进程打开一个磁盘文件 要涉及哪些数据结构?Struct tast_struct、files_struct
它们各有哪些关键字段?
1
2
3
4Struct tast_struct{
......
struct files_struct *files; //指向进程打 开文件信息
...}1
2
3
4struct files_struct {
struct file **fd; //指向文件对象指针数组
struct file *fd_array[ ]; //文件对象指针数组 ......
}他们的作用是什么
一个文件在使用与不用时各占用系统哪些资源?
安装表的作用是什么?内核将安装点与被安装的文件系统信息保存在 vfsmount 结构中,形成一个链式安装表。
第十四章 Windows模型
Windows 采用什么样的体系结构?
硬件抽象层HAL的作用是什么?直接操纵硬件。隐藏各种与硬件有关的细节。使内核 、设备驱动程序和执行体免受特殊硬件平 台差异的影响。 系统可移植性好。
Windows系统组件的基本机制包括:
- 陷阱调度:当检测到异常或中断发生时,将暂停正 在处理的事情,把控制转交给内核的陷 阱处理程序,陷阱处理程序再将控制转 交给相应的异常或中断处理程序。属于内核的功能。包括中断、DPC 、 APC 、异常调度、系统服务调度。
- 执行体对象管理器、
- 同步(自旋 锁、内核调度程序对象)、
- 本地过程调用 LPC :服务器进程创建一个 LPC 连接端口对象,然后在该端口上监听客 户连接请求。类似 socket 编程。消息传递。
- 延迟过程调用 DPC:DPC 被用来执行一些相对于当前高优先级的任务来说不那么紧急的任务。
- 异步过程调 用 APC:为用户程序和系统代码提供了一种在特定用户线程环境中执行代码的方法。
- 延迟过程调用 DPC:DPC 被用来执行一些相对于当前高优先级的任务来说不那么紧急的任务。
Windows中有哪些对象,都有什么作用?
- ==执行体对象==:进程和线程管理器、内 存管理器、I/O 管理器、对象管理器等
- ==内核对象==:内核实现的一个初级对象集, 对用户态代码不可见,仅供执行体使用。 一个执行体对象可以包含一个或多个內 核对象。)
在多处理机系统中,提供了哪些同步和 互斥机制?
内核引入自旋锁实现多处 理机互斥机制。内核以内核对象的形式给 执行体提供其他的同步机构—“调度程序 对象”,包括:进程对象、线程对象、事件 对象、信号量对象、互斥体对象、可等待 的定时器对象及文件对象等。每个同步对 象都有“有信号”或“无信号”两种状态。
==线程如何实现等待一个同步对象的操作==:对象管理器提供WaitForSingleObject( ) ,使线程与调度 程序对象同步。
第十五章 Windows进程和线程管理
管理进程和线程的数据结构:==执行体进程块 EPROCESS、执行体线程块ETHREAD*、内核进程块 *KPROCESS、内核线程块 KTHREAD==
创建进程:CreateProcess( ); 创建线程:CreateThread( )
==线程的 7 种状态,及其解释。==
- 就绪状态 (ready)
- 备用状态 (standby) 。已选好处理机,正等待 描述表切换,以便进入运行状态。
- 运行状态 (Running)
- 等待状态 (waiting)
- 传输状态 (transition) 。核心栈被调到外存的 就绪态。
- 终止状态 (terminated)
- 初始化状态 (Initialized) 。正在创建过程中。
==线程调度:基于优先级的抢先式的多处理机调度系统。==
线程调度程序的数据结构: 32 个就绪线程队列、32 位线程就绪队列 位图、32 位处理机空闲位图。
==线程优先级的提升时机==:
I/O操作完成后的线程。
信号量或事件等待结束的线程。
前台进程中的线程完成一个等待操作。
由于窗口活动而唤醒 GUI 线程。
线程处于就绪状态超过一定时间,仍未能 进入运行状态 ( 处理器饥饿 )
第十六章 Windows存储器管理
两种数据结构:
虚拟地址描述符 VAD:当线程要求分配一块连续虚存时,系统为它建立一个 VAD 结构。
区域对象:文件映 射对象,是一个可被多个进程共享的存储 区。
==虚拟内存区域:空闲的、保留的、提交的==
32 位逻辑地址,二级页表。
页目录表项 和页表项具有相同的数据结构,该数据 结构包含哪些数据项?
进程页表建立的时机。进程的地址转换过程。
管理物理内存的数据结构:页框数据库。
页框的 8 种状态:活动、转换、备用、更 12改、更改不写入、空闲、零初始化、坏,
页框的状态转换图 16.9。
原型页表项,区域对象的页表。虚拟页式中,采用原型页表实现多进程共享页。
Windows 采用的页替换策略是什么?在多处理器系统中,采用了 局部先进先出置换策略。而在单处理器 系统中,更接近于最近最久未使用策略 (LRU ,也称为“时钟页面置换算法” ) 。
第十七章 Windows文件系统
Windows 所支持的文件系统类型有哪些?支持 FAT12 、 FAT16 和 FAT32 文件系统。 12 、 16 和 32 分别为描述磁盘块簇地址使 用的位数。
虚拟簇号和逻辑簇号的概念。
NTFS 卷的结构,主控文件表 MFT 的作用。
MFT 是 NTFS 卷的管理控制中心,包含了 卷上所有的文件、目录及空闲未用盘簇的 管理信息
NTFS 文件的物理结构:索引顺序结构
管理文件的目录结构采用 B-树。