Linux内存管理——页面替换策略(PRM)
发布时间
阅读量:
阅读量
每当某个进程启动运行时, CPU所访问的地址属于用户的虚拟地址空间。Linux通过页缓存机制节省物理内存资源,在运行过程中仅加载当前活跃使用的用户空间部分的小量页面到物理内存中。若系统中所访问的虚拟内存页面尚未被加载至物理内存,则处理器会向系统调用报告发生了一次页面缺失事件,并伴随着相应的错误信息。造成页面缺损的原因主要包括以下几点:
(1)程序出现错误
逻辑地址存在但对应页面未在物理内存中定位而引发缺页错误,在这种情况下的操作系统必须将该页面从磁盘或交换文件区域(此页面已被移出)重新加载至物理内存区域。
(3)当虚拟地址受到写保护时即出现错误如果当前进程试图在该地址空间进行写操作而该操作属于某个特定用户的权限范围则系统需判断当前进程的地址空间是否被该用户进程正在访问如果是则向相关进程发送通知并终止其执行行为如果错误发生于旧共享页上系统将对该共享页进行复制操作这就是著名的写时复制技术
1、缺页异常处理程序
当某个进程运行时
SIGSEGV(段违例)表示当进程尝试访问不可用的内存区域时会触发此信号;这种情况通常由无效的内存引用或导致进程出现段错误引发。
缺页异常处理程序的总体方案:

还没有任何评论哟~
