好文档 - 专业文书写作范文服务资料分享网站

操作系统段页式存储实验报告

天下 分享 时间: 加入收藏 我要投稿 点赞

武汉理工大学《操作系统》课程设计说明书

、指定的选题一一段页式存储管理

1课程设计题目分析

段式和页式存储管理各有优缺点,段页式存储管理系统,用分段的方法来分配和管理 虚拟存储器,而用分页的方法来分配和管理主存。既有段式系统便于实现段的共享,段的 保护,动态链接和段的动态增长等一系列优点,又能像页式系统那样,很好地解决内存的 外碎片问题。

段页式系统的基本原理,是分段和分页原理的组合。即先将用户程序分为若干个段,再把每个段划分 成若干页,并为每个段赋予一个段名。在段页式系统中,地址结构由段号、段内页号、页内地址三部 分组成。

在段页式系统中,为了便于实现地址变换,须配置一段表寄存器,存放段表始址和段长 进行地址变换时,首先利用段号

TL O( 1)

S,将它与段长TL进行比较,若S

和段号来求出该段对应的段表项在段表中的位置,得到该段的页表始址;

(2)利用逻辑地址中的段内页号 (3)用块号b和页内地址构成物理地址

P,获得对应页的页表项位置,读出该页所在的物理块号

O

2数据结构及模块说明

2.1存储结构说明

在此段页式存储管理系统中,我们采用以下数据结构来存储数据,存储结构用结构体和 结构体数组来实现:

2.1段表

段号s 状态flag 页表长度Plen 页表始址psta //段表

-1 -

武汉理工大学《操作系统》课程设计说明书

typ edef struct Stack

int num;// 段号 int flag;// 段状态 int plen;//页表长度 int psta;//页表始址 }Stack;

其中状态为1代表在内存,为0代表不在内存。

2.2页表

页号pnum 状态位(是否在内存中) 块号block

//页表

typ edef struct Page

int num;// 页号

int flag;//页状态,即是否在内存。 int block;//该页对应的块号 }P age;

2.3数据区

块号block 作业内容

简单起见,我们没有把内容初始化到每一个内存地址,

只给出每个作业块的内容,替。

typ edef struct Data

int num;//内存的块数

string str;//对应数据块的作业内容,简化起见说明内容为一串字符。

-2 -

并且用一串字符代

武汉理工大学《操作系统》课程设计说明书

}Data;

2.4快表

段号 段内页号 块号

〃快表

typ edef struct Quick

int qs;//快表段号 int qp;//快表页号 int qb;//快表段号 }Quick;

2.5段表寄存器

段表始址

段表长度〃段表寄存器

typ edef struct Stare

int ssta;//段表始址 int slen;//段表长度 }Stare;

-3 -

武汉理工大学《操作系统》课程设计说明书

3程序流程图

-4 -

武汉理工大学《操作系统》课程设计说明书

4使用技术及实现功能

使用技术:本实验使用

VC++ 6.0平台,使用基本的控制台应用程序,单文档结构,主要数据结构是结

C++源文件,根据数据结构编写代码。

构体间的关系。打开 VC++6.0建立一个空工程,然后简历

实现功能:从键盘输入进程及其各段大小,能实现空间的分配,回收,地址转换,能显示段表、页表及 存储空间状态

5程序代码

#in clude #in clude #defi ne null \//数据结构 〃快表

typ edef struct Quick {

int qs;//快表块号 int qp;//快表页号 int qb;//快表段号 }Quick;

〃数据区,简单起见,只为每一个内储块写入内容,不具体到每一物理地址。

typ edef struct Data {

int num;//内存的块数

stri ng str;//对应数据块的作业内容,简化起见说明内容为一串字符。 bool flag;//是否被分配,1为是,0为否 }Data;

//页表 typ edef struct Page {

int nu m;// 页号

-5 -

操作系统段页式存储实验报告

武汉理工大学《操作系统》课程设计说明书、指定的选题一一段页式存储管理1课程设计题目分析段式和页式存储管理各有优缺点,段页式存储管理系统,用分段的方法来分配和管理虚拟存储器,而用分页的方法来分配和管理主存。既有段式系统便于实现段的共享,段的保护,动态链接和段的动态增长等一系列优点,又能像页式系统那样,很好
推荐度:
点击下载文档文档为doc格式
01tb54rvnb79c964hjsm5kaxd91bpl00ksf
领取福利

微信扫码领取福利

微信扫码分享