首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >2级寻呼中的内存访问时间

2级寻呼中的内存访问时间
EN

Stack Overflow用户
提问于 2014-02-01 07:53:44
回答 1查看 5.7K关注 0票数 1

考虑一个具有两级分页方案的系统,其中一个常规内存访问需要150纳秒,而维护一个页面错误需要8毫秒。一条指令平均需要100 ns的CPU时间,两次内存访问。TLB命中率为90%,页面错误率为每10,000条指令中有1条。有效的平均指令执行时间是多少?

这是2004年登机口提出的。为了解决这个问题,我会遵循以下的概念:

T(内存存取avg) = .90(150) + .1(150+150+150) = 180 (150- level1,150-2级和150-内存)

T有效= 100+ 2* 180 + 1/10000* 8* 10^6 = 1260。

这个方法正确吗?此外,我也有以下疑问:

  1. 当TLB命中时,不会出现页面错误,因为最常用的页面必须在内存中。是对的吗?

  1. 进程的页表的大小是多少?例如,对于32位虚拟地址,对于每个进程,我们是否分配一个包含2^32项的页表?如何在分页中管理内存限制?

请解释这些概念。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-01 09:23:30

我建议如下

这里100 no用于指令执行(没有意见分歧)

现在,给定TLB命中率为90%,所以每当有TLB未命中时,我们就必须进行2次内存访问,因为这是一个2级分页方案。

而且,无论是否存在TLB,都应该执行2*(150+ 8*10^6 * 1/20000 ),即内存访问时间、内容访问时间和页面错误的开销。

我认为您的表达式假设,对于一个指令,无论何时对第一个内容发生TLB命中,对于第二个内容都是这样的。

所以假设是hit-hit or miss-miss,而给定的TLB命中率是90%(每次访问而不是每条指令),我觉得应该有所有4种可能的组合。

hit-hit, miss-miss, hit-miss,miss-hit

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21495591

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档