- 3
- 0
- 约2.25万字
- 约 20页
- 2016-10-11 发布于广东
- 举报
操作系统实验—基于WRK的进程工作集实验
操作系统实验 —— 基于WRK的进程工作集实验
实验目的
1 掌握虚拟机和调试工具等的使用。
2 阅读Windows源码中工作集管理相关部分。
3 修改Windows内核中页面置换算法,深入理解工作集和页面置换算法如何在一个完整的操作系统中实现。
实验内容
1 了解Windows系统中的工作集
一个进程当前正在使用的页面的集合成为它的工作集(working set)。
Windows系统通常将工作集分为进程工作集与系统工作集,分别用于跟踪各个进程与系统的物理内存使用情况。
Windows内核对工作集页面的操作分工作集管理器(系统级)的页面修剪算法和进程自己的页面替换算法两种,前者主要是定时扫描系统的内存利用情况,同时对某些进程进行页面修剪,比如选定优先级低的进程,应用最近最久未使用算法(LRU)选定要删除的页面进行删除;而后者主要是在进程内部,当进程申请页面超过一定峰值再申请页面时,工作集大小不再增加,而是以一定的策略替换已有页面。
2 工作集相关数据结构
EPROCESS是描述进程的结构,与工作集相关的数据结构主要有MMSUPPORT、MMWSL、MMWSLE MMWSLENTRY、MMPTE、PMMWSLE_HASH,其主要关系如下图:
3 工作集代码分析
3.1 页面替换算法分析
首先调用 MiAddWorkingSetPage()向工作集中添加页面失败时,
原创力文档

文档评论(0)