当前位置:首页 > 内存 > 正文

缺页中断访问内存时间

  • 内存
  • 2024-05-31 00:31:34
  • 6648

一、缺页中断的计算《操作系统概论》课后习题假设数组中的第一行元素存储在主存的一块块中,由于在分页期间数组中的每一行元素都被放置在一个页面上,因此每次i+1时都会发生页错误中断。这样,按照(1)编译的程序,每次执行A[i][j]:=0时都会产生缺页中断,所以总共会产生(128×128-1)个缺页中断。。(2)编译后的程序在执行时产生(128-1)页错误中断。
二、页式虚拟存储系统的有效访问时间怎么计算?当页面丢失时,会执行三个操作:首先,将丢失的页面从磁盘传输到主存(20毫秒),其次,访问主存以读取丢失的页面(1微秒)。br/>tablefast
更新(这相当于主存访问时间,1微秒),所以如果第二个答案项是20%*90的话,这里应该有两个1微秒。%*1​​微秒*2?


三、访存时缺页属于中断还是异常

内存访问期间缺少分页符。

详细介绍:

直到需要特定虚拟内存区域中的数据时,虚拟内存和物理内存的关系才建立起来。如果进程访问尚未映射到页框的虚拟地址空间,处理器会自动抛出页错误异常,内核必须处理该异常。这是内存管理最重要和最复杂的方面之一。

因为有无数的细节需要考虑,页面错误是由于访问用户地址空间中的有效地址引起的还是应用程序试图访问受保护的区域?核心?目标地址与现有映射匹配吗?应该用什么方法来找到这个位置的地址?

丢失页面管理的实现因处理器而异。

常见场景:

地址空间映射连接未建立:内核提供了几个接口函数malloc/map来引用内存,实现了虚拟地址间但实际地址空间没有分配。

当一个进程第一次创建并运行时,该页面会带有许多缺页异常空间,第一次访问时就会出现缺页异常。

地址空间映射建立:访问的页面被移动到磁盘。父进程触发缺页错误(COW技术)需要访问的页面由KSM集成,写入时触发缺页错误(COW技术)。

由于用户空间访问内核空间地址,因此内核空间不会通过触发用户空间地址来检测页面错误。页面错误的实现根据情况不同而不同,本文使用ARMV7架构来学习。