仿真操作系统实现LRU虚拟内存替换算法,已通过测试。
为了熟悉作业管理和虚页内存管理,了解作业及进程并发操作和虚页调度算法,并能够通过完成硬件结构的设计来实现进程并发、虚页调度、死锁检测等几大基本功能,我们选择了可视化仿真实现作业管理与虚页内存管理这一课题。
在学习相关知识之后,我们实现了裸机硬件的仿真、作业及进程调度的仿真、内存管理的仿真等功能,并通过可视化方式呈现。
裸机硬件的仿真包括CPU、内存Memory、硬盘Disk、时钟、中断和MMU地址变换部件等设计与实现。
其中CPU包含PC寄存器、PSW寄存器、IR寄存器等。
内存Memory大小为32KB,每个物理块大小512B,共64个物理块。
硬盘Disk大小为1MB,1个柱面中有32个磁道,1个磁道中有64个扇区,1个扇区为1个物理块,每个物理块的大小为512B。
MMU地址变换部件负责将逻辑地址转换为物理地址。
内存管理包括虚页内存的设计与实现、页表与快表的设计、内存替换算法等。
快表和页表的表项Page类,包含了页号、对应的块号和访问次数等信息。
快表FastTable和页表PageTable,实现了插入表项、判断是否命中、返回物理块号等功能。
LRU页面替换算法是在MMU地址变换部件中实现的,淘汰最近最长时间没有访问到的页面。
1
配置网络地址变换,提供到公司共享服务器的可靠外部访问。
2023/9/10 6:25:29 7KB 网络实验
1
操作系统的编程作业例子1.模仿页式存储过程地址变换过程模仿2.可用于学习理解页式存储过程中逻辑地址到物理地址的转换过程3.带有界面,仅供参考。
水平有限,如有错误欢迎指正。
2023/3/12 17:11:15 7KB 操作系统 地址变换 python
1
创建请求页表,通过编程模仿缺页中断和地址变换,实现请求调页功能和页面置换功能。
2018/9/9 7:48:58 6KB java 请求分页系统
1
模仿实现虚拟分页存储管理的基本功能,包括内存的分配、内存的回收、地址变换,在发生缺页时采用LRU页面置换算法。
显示每一次内存分配和回收后内存的使用状况,每一个进程占据的内存(页表),计算给定的逻辑地址对应的物理地址。
2015/9/17 18:21:35 3KB 操作系统 页面置换 C++
1
基本分段存储管理零碎的设计要求:(1)建立段表(2)设计地址变换机构(3)将变换后的结果显示出来
2015/7/19 20:25:39 107KB 操作系统课程设计报告完整版
1
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡