分页存储管理系统
简述分页地址的变换过程
- 进程执行,PCB中页表起始地址和页表长度送在CPU的页表寄存器中
- CPU访问逻辑单元A
- 通过分页变换机构将逻辑单元A分为页号和页内偏移
- 通过硬件检索页表,得到A所在页对应的页框号
- 页框号和页内偏移地址送物理地址寄存器中,计算出物理地址
请说明引入TLB之后的地址变换过程
- CPU产生分页的逻辑地址页号和页内偏移后,将该逻辑地址的页号提交给TLB
- 查找TLB,如果找到页号,则把该页所在的页框号行成物理地址。否则查找内存页表,从内存页表中找到相应的页表项,读取页所在的页框号,形成物理地址
- 如果所查找的页表不在TLB中,在访问在页表后,把找到的页表项写在TLB中。如果TLB条目已满,替换页表项
什么是快表
- 快表也称转换后援缓冲(TLB),是为了提高CPU访问速度而采取专用的缓存,用来存放最近被访问过的页表项
真题整理
何为系统调用
- 系统调用是一群预先预定好的模块,方便给应用程序和用户得到操作系统的核心功能。
请简述系统调用和一般函数调用之间的区别
- 系统调用运行在系统态,一般函数调用运行在用户态
- 系统调用和一般函数调用执行过程不同
- 系统调用比一般函数调用多了一些系统开销
什么是安全状态,写出用于避免死锁的银行家算法的过程
- 系统能找到一个进程执行序列,使系统只要按照此序列为每个进程分配资源就可以保证进程的资源分配和执行顺利完成,不会发生死锁,称为安全状态
- 银行家算法的过程 当一个进程提出申请资源的时候,系统先进行资源的试分配,检测本次资源的分配是否让系统处于安全状态,若处于安全状态进行资源分配,否则不分配资源
引入虚拟存储技术的目的是什么?虚拟存储系统有哪些特征?
- 提高内存利用率
- 提高多道程序度
- 把逻辑地址和物理地址区分开,使程序员不用关心物理内存的容量对编程的限制
特征:离散性、多次性、对换性、虚拟性
磁盘文件系统可以使用磁盘链接表实现文件存储,也可以使用内存的链接表分配文件的存储空间。请论述它们在空间利用率和存储时间上的各自特点
磁盘链接表分配可以充分的利用每个簇,不会因为磁盘碎片而浪费空间,管理比较简单。缺点 随机存取相当缓慢
内存的连接表分配将文件所在的磁盘的簇号存放在内存的表中。访问文件时,只需要记录文件的第一块数据所在的簇号,根据它查到文件的所有块。缺点是必须把整个表都存在内存中,不适合大容量的磁盘。
相比于进程,请简述线程在地址空间资源、通信关系、并发性及系统开销方面有哪些特点
- 地址空间资源。不同进程的地址空间是相互独立的,同一线程共享进程内的地址空间
- 通信关系 进程之间的通信只能通过操作系统提供的进程间的通信机制,而同一进程的线程通过共享全局变量来进行通信
- 并发性 进程可以并发执行,线程也可以并发执行,同一进程里的不同线程也可以并发执行
- 系统开销 进程的创建和销毁,系统要回收资源,操作系统所付出的代价高于创建和销毁线程时候的开销
在内存管理中,分页管理和分段管理的主要区别是什么?
分页管理页是通过物理地址划分的、分页管理是一维的,页的大小是固定的
段是通过逻辑地址划分的、段是二维的,段的大小不是固定的
请简述 SPOOLing 系统的优点
- 提高了I/0速度
- 将独占设备改成共享设备
- 实现了设备的虚拟功能