咩咩的咣咣

访问内存的有效时间

从进程发出指定逻辑地址的访问请求,经过地址变换,到在内存中找到对应的实际物理地址单元并取出数据,所需花费的总时间,称为内存的有效访问时间(Effective Access Time, ETA)

 基本分页存储管理 方式中:

有效访问时间分为第一次访问内存时间(即查找页表对应的页表项所消耗的时间t)与第二次访问内存时间(即将页表项中的物理块号与页内地址拼接成实际物理地址所耗费的时间t)之和:

  ETA = t + t = 2t

引入快表的分页存储管理 方式中:

通过查询快表可直接得到逻辑页所对应的物理块号,由此拼接形成实际物理地址,减少了一次访问内存,缩短了进程访问内存的有限时间。

   ETA = α x λ + ( t + λ )( 1 - α ) + t

             = 2t + λ - t x α

其中  λ :表示查找快表所需的时间

       α :表示查找时的命中率

             t :表示访问一次内存所需要的时间

注:由于快表的容量限制,不可能将一个进程的整个页表全部装入快表,所以在快表中查找到所需表项存在着命中率的问题。所谓命中率,是指使用快表并在其中成功查找到所需表项的比率。

例:

  一具有快表的分页系统中,逻辑地址访问内存的时间是100毫秒,访问快表的时间是20毫秒。

    问:设从快表中查找到所需页表项的概率为85%,计算CPU存取一个数据时的有效访问时间。

    ETA = α x λ + ( t + λ )( 1 - α ) + t

      = 20 x 0.85 + ( 100 + 20 )( 1 - 0.85 ) + 100

      = 135

或      ETA = 2t + λ -t x α

       = 2 x 100 + 20 - 100 x 0.85

       = 135

 

posted @ 2019-10-14 22:09  江北搬砖虚度  阅读(5849)  评论(0编辑  收藏  举报