我正在阅读操作系统,对页面错误服务时间有疑问吗?
平均内存访问时间= prob。没有页面错误(内存访问时间)+ prob。页故障(页面故障服务时间)
我怀疑页面故障服务时间包括哪些内容?
据我说,
第一个地址转换存在于TLB或Page表中,但当在页表中找不到条目时,就意味着发生了页面错误。因此,我必须从磁盘中获取所有条目,并在TLB和页表中更新所有条目。
因此,页面错误服务时间= time +页表时间+从磁盘获取页面
有人确认一下吗?
发布于 2016-10-13 18:59:46
你所描述的是学术Bulls____。有如此多的因素,这样一个简单的方程不能描述访问时间。尽管如此,还是有一些愚蠢的操作系统书籍会发布这样的东西来听起来很有智慧(教授们也喜欢它来回答试题)。
这些白痴想要说的是,页面引用将在内存中或不在内存中,这两个概率之和为1.0。这是完全没有意义的,因为相对概率是动态的。如果其他进程开始使用内存,页面错误的可能性就会增加,如果其他进程停止使用内存,则概率会下降。
那么你就有了内存访问时间。这也不是固定不变的。访问缓存内存位置比非缓存位置更快.访问由多个处理器共享和互锁的内存比较慢。这也不是常数。
那么您就有了页面故障服务时间。有软页错误和硬页错误。对于必须从磁盘加载的页,需求零页上的页故障在时间上是不同的。磁盘访问是缓存的还是未缓存的?磁盘上有多少活动?
页表被传呼了吗?如果是的话,是页面表上的页面错误还是页面本身的错误?两者都有可能。
维护页面错误:
TLB实际上与此无关,只是如果所讨论的页面表条目在TLB中,则服务时间会稍微快一些。
因此,页面错误服务时间= TLB时间+页表时间+从磁盘获取页面
不用谢。
https://stackoverflow.com/questions/40027359
复制相似问题