武汉理工大学《操作系统》课程设计说明书
课程设计任务书
学生姓名: 朱东各 专业班级: 计算机0604 指导教师: 蔡 菁 工作单位: 计算机科学与技术学院
题 目: 模拟设计段页式虚拟存储管理中地址转换 初始条件:
1.预备内容:阅读操作系统的内存管理章节内容,理解段页式存储管理的思想及相应的分配
主存的过程。
2.实践准备:掌握一种计算机高级语言的使用。
要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)
1.实现段页式存储管理中逻辑地址到物理地址的转换。能够处理以下的情形:
⑴ 能指定内存的大小,内存块的大小,进程的个数,每个进程的段数及段内页的个数; ⑵ 能检查地址的合法性,如果合法进行转换,否则显示地址非法的原因。 2.设计报告内容应说明: ⑴ 需求分析;
⑵ 功能设计(数据结构及模块说明); ⑶ 开发平台及源程序的主要部分;
⑷ 测试用例,运行结果与运行情况分析; ⑸ 自我评价与总结:
错误!未找到引用源。)你认为你完成的设计哪些地方做得比较好或比较出色; 错误!未找到引用源。)什么地方做得不太好,以后如何改正; 错误!未找到引用源。)从本设计得到的收获(在编写,调试,执行过程中的经验和教训);
错误!未找到引用源。)完成本题是否有其他方法(如果有,简要说明该方法); 错误!未找到引用源。)对实验题的评价和改进意见,请你推荐设计题目。
时间安排:
设计安排一周:周1、周2:完成程序分析及设计。
周2、周3:完成程序调试及测试。 周4、周5:验收、撰写课程设计报告。
(注意事项:严禁抄袭,一旦发现,一律按0分记)
指导教师签名: 年 月 日 系主任(或责任教师)签名: 年 月 日
- 1 -
武汉理工大学《操作系统》课程设计说明书
模拟段页式虚拟存储管理中
地址转换
1需求分析
1.1段页式管理的基本思想
1.1.1基本思想
段式和页式存储管理各有优缺点,段页式存储管理系统,用分段的方法来分配和管理虚拟存储器,而用分页的方法来分配和管理主存。既有段式系统便于实现段的共享,段的保护,动态链接和段的动态增长等一系列优点,又能像页式系统那样,很好地解决内存的外碎片问题。
具体来说,把整个内存分成大小相等内存块,内存块从0开始依次编号。把用户程序分成若干段,每段有个段名。页面的大小和内存块相同,每段的各个页面都分别从0开始依次编号。虚空间的最小单位是页而不是段,内存就被分为若干个页,且每段所拥有的程序和数据在内存中可以分开存放,分段大小也不再受内存可用区的限制。
1.2段页式存储的原理
1.2.1虚地址的构成
逻辑地址有三部分构成:V=(S,P,d)即段号s,页号p和页内相对地址d,如下所示:
s
p d 内存分配:
以块为单位进行内存分配,为了实现从逻辑地址到物理地址的转换,为每个作业或进程建
- 2 -
武汉理工大学《操作系统》课程设计说明书
立一张段表:段表中的段长即是页表长度,段表中的段内始址即是页表地址,每个段拥有一张页表,段内的页号映射为物理地址中的物理块号。
1.2.2段表和页表的构成
在段页式存储管理系统中,段表包含这样几个基本项:段号,状态,该段的页表长度,页表始址;页表包含的基本项是:页号,状态,块号。段页式管理中段表,页表以及内存的关系如下图:
1.2.3 动态地址变换过程
在段页式存储管理系统中,要对内存中的指令或数据进行一次存取操作至少需要访问3次内存。第一次是由段表寄存器得到段表始址去访问段表,然后取出对应段的页表地址。第二次则是访问页表得到所要访问的物理地址。只有在访问了段表和页表之后,,第三次才能访问真正要访问的物理单元。段页式存储管理系统地址变换如下所示:
- 3 -
武汉理工大学《操作系统》课程设计说明书
2 功能设计(数据结构及模块说明)
2.1 存储结构说明
在此段页式存储管理系统中,我们采用以下数据结构来存储数据,存储结构用结构体和结构体数组来实现:
2.1.1段表
段号s 状态flag
//段表
typedef struct Stack
页表长度plen 页表始址psta - 4 -
相关推荐: