进程管理

2021-11-03
2分钟阅读时长

请求分页管理方式

设计算机中各项操作时间如下所示:

  1. 访问快表命中率$P_1$
  2. 访问内存页表命中率$P_2$
  3. 访问快表耗时$a$
  4. 访问内存耗时$b$
  5. 更新快表耗时$c$
  6. 更新内存耗时$d$
  7. 磁盘I/O耗时e(磁盘I/O包括读磁盘和写磁盘,一般会用到读磁盘,但不一定需要写磁盘,因此这里的e不是定值,需要特别注意)

则平均访问时间: $$ P_{1}(a+b)+(1-P_{1})[P_{2}(a+b+b+c)+(1-P_{2})(a+b+e+d+c+a)] $$ 第一部分是访问快表,得到物理地址后直接在内存中寻址;

第二部分是快表未查找到,因此在内存中查找页表,然后得到物理地址并在内存中寻址,最后更新快表;

第三部分是快表和内存都未查找到,因此发生缺页中断,需要调页。中断后首先读磁盘,接下来分为两种情况:

  1. 内存页表已满,需要换出一页,因此选中需要调出的页,判断是否修改,进而判断是否需要写磁盘(与此同时需要删去快表中被调出的页表项,但通常并行因而忽略),然后更新内存(包括换入页及更新页表两方面),最后更新快表并查快表;
  2. 内存页表未满,因此不需要写磁盘,直接更新内存,更新快表,查快表。

特别地,需要注意访问内存和查快表、更新内存和更新快表是否能够同时执行。若能同时执行,则忽略掉快表所需时间。因为快表是高速缓存硬件,速度比内存快得多。更新快表一般包括删去被调出的页表项及增加新页表项两方面,但前者通常与磁盘I/O并行,因而忽略)

Avatar

坐忘道琼峰 Sitting Oblivion Tao EndlessPeak

瞽者无以与乎文章之观,聋者无以与乎钟鼓之声。岂唯形骸有聋盲哉?
上一页 经典同步问题
下一页 文件管理