操作系统 | 【一 概述】强化阶段 —— 应用题总结
平衡复习重点。
大致内容
一.中断、异常、系统调用
二.进程、调度、进程的状态转换、PCB
三.虚拟页式存储管理、页面置换算法
四.文件的逻辑结构、物理结构,文件的目录、FCB、文件操作
五.磁盘、I/O方式
文件物理/逻辑结构
1、文件的逻辑结构只与文件的格式有关(如 .mp3 等后缀)。文件的逻辑格式(用户角度)与文件系统无关。任何一种文件格式放到不同的文件系统,被拆分成若干个块,这些块在不同文件系统中的物理存储就会出现区别。块的大小由文件系统规定。
文件的逻辑层面的索引结构:从文件的格式来看,从用户的视角。
2、
打开文件的过程(简陋版)
本例文件系统UFS为例。
①当双击 word.exe 后,操作系统在虚拟内存中进行分区,创建一个进程,同时建立进程对应的PCB,进程等待调度。
(从虚拟内存视角看好像是为该文件分配了一块连续的存储空间,而实际上在物理内存中它一定会被分页,即离散存放。)
(文件在运行过程中它的视角看到的是虚拟内存,而不是物理内存;当物理内存不够用时,就采用页面置换算法进行页面置换,将不用的页面暂时淘汰,需要使用的页面替换进来。)
②open(“D/xxx/宝典.doc”)系统调用,需要指明该文件的存储路径。
③根据路径一级一级查文件目录(目录由若干的目录项组成,即FCB,保存了文件物理结构的相关信息),最终查到目标文件对应的FCB,而FCB中保存了文件的物理结构相关的信息,本例中为该文件的索引结点编号(UFS文件系统)。
④获取索引节点。索引节点连续存储,且有固定位置。假设为2,再根据起始地址和大小,打开对应索引节点的信息,读入内存。
(索引结点在系统中的某个固定的位置开始(所有索引结点的起始位置相同),采用连续存储的存储方式(每个索引结点的大小相同,类似数组),且操作系统知道这些索引结点的起始位置,即操作系统可以根据索引结点的编号找到该文件的索引结点,并根据该索引结点将该文件相对应的数据读入内存)
⑤根据索引节点信息,映射到文件的逻辑块所存放的物理块的位置。通常前半部分,后半部分分别调入。所以会出现转圈圈的情况。
操作系统根据读入的该文件的索引结点(inode,采用混合索引方式)就可以找到其的数据部分(所有)分别存放在哪些物理块中(操作系统可以找到该文件的所有数据,但是通常情况下不需要一次将其全部读入,按需要读入)
⑥操作系统使用read调用读入需要的数据
部分文字参考于
408王道操作系统强化——概述_江南江南江南丶的博客-CSDN博客