我对考试有疑问,但我不理解解决方案,有人可以为我解释解决方案吗?
内存访问时间= 2.5*10^-7 sec
第二次记忆时间= 3*10^-6
TLB时间= 10^-8
给定虚拟地址,值x和3级页表,在最坏的情况下从内存中读取x值需要多长时间?
解决方案是:10^-8 + 2.5*10^-7 + 3*(3*10^-6 + 2*2.5*10^-7) + 10^-8 = 1076*10^-7
答案 0 :(得分:0)
据我所知,没有公式可以计算内存访问的最佳和最差时间。但是,有各种因素会影响它:
此外,这些因素的影响取决于底层硬件,因此即使是计算内存访问最佳和最差时间的近似公式也很难发明。
答案 1 :(得分:0)
很明显,该解决方案正在执行2次TLB查找,7次内存访问和3次辅助内存访问。
以下是此过程中的步骤:
1)CPU访问TLB以找到虚拟地址映射到的内存位置。
2)CPU访问主存储器以查找虚拟地址。这一步失败了。
3)CPU访问页面文件(1个内存访问获取页面文件,1个访问页面文件条目)。
4)CPU从辅助存储器读取以获取页面文件中引用的页面。
5)重复步骤3&页面表中的每个级别都有4个。