- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课 程 设 计
课程名称 操作系统
学 院 计算机学院
专 业
年级班别
学 号
学生姓名
指导教师
2013 年 月 1、分页方式的地址换算
2、分段方式的地址换算
3、段页式的地址换算 任务要求
要求演示正确、清晰,编程所用工具不限。 参考文献 [1] 计算机操作系统 汤等 西安电子科技大学出版社[2] 操作系统实验指导书,傅秀芬,广东工业大学(自编)
[3] 计算机操作系统教程 ( 第二版 ) 张尧学、 史美林清华大学出版社现代操作系统A.S.Tanenbaum 著,陈向群等译机械工业出版社 设计思想说明
1.1 设计环境
在实现地址转换的程序实现时,运用了C++6.0来实现,因为对C语言程序的编写稍微熟悉点,可以很好的编写及调试。程序很容易看懂,输入条件在后边备注。
1.2 设计思想
编程演示三种存储管理方式的地址换算过程,分别为分页方式的地址换算,分段方式的地址换算,段页式的地址换算。分页方式通过逻辑地址算出页号与叶内地址,然后通过页表来实现向物理地址的转换。分段方式通过段号和段内地址得到物理地址。段叶式通过段号得到页表首地址,通过页号得到块号,进而得到物理地址。
2、系统结构
程序主要有三个功能,分别是分页方式的地址换算,分段方式的地址换算,段页式的地址换算。Switch函数包含3个case语句,分别用page,Segment,SegPagt完成分页方式的地址换算,分段方式的地址换算,段页式的地址换算。
3、数据结构的说明
typedef struct segtable
{
int segf[256];
int segl[256];
}segtable;
struct segtable st;
typedef struct segpagt
{
int segf[256];
int segl[256];
int ptl[256];
int pt[256];
int pf[256];
int pl;
}segpagt;
struct segpagt sp;
4、算法流程图
分页式:
分段式:
段页式:
主要函数列表
函数原型 功能 入口、出口参数说明 void main() 输入、输出 Int 整形变量
6、测试与分析
分页式地址换算结果:
分页式地址越界中断:
分段式地址转换结果:
分段式地址段号越界中断:
分段式地址段内越界中断:
段页式地址转换结果:
段页式地址转换段号越界中断:
段页式地址转换页号越界中断:
段页式地址转换段内地址越界中断:
结束:
用户使用说明
根据提示输入1-4,然后有相应的提示说明,分别输入,错误的时候有提示,正确的输入会输出相应的正确的结果。
附录:
#include stdlib.h
#include stdio.h
int page(int A,int L );
int Segment(int sn,int sl);
int SegPagt(int sn,int pn,int pd);
typedef struct segtable
{
int segf[256];
int segl[256];
}segtable;
struct segtable st;
typedef struct segpagt
{
int segf[256];
int segl[256];
int ptl[256];
int pt[256];
int pf[256];
int pl;
}segpagt;
struct segpagt sp;
int main()
{
int code;
int pl,pa,sn,sd,pd,pn,pc;
//const int ptl ;
int temp;
do{
printf(地址换算过程\n\n);
printf(******本程序由陈泳鑫设计--2013年1月3号*****\n);
printf( 1.分页式地址换算\n);
printf( 2.分段式地址换算\n);
printf( 3.段页式地址换算\n);
printf( 4.结束运行\n\n);
printf(\n);
printf(请输入1-4:);
scanf(%d,temp);
s
您可能关注的文档
最近下载
- 《无人机监测松材线虫病致死松树技术规程》.pdf VIP
- 九上11《岳阳楼记》课件-2025年中考语文一轮复习文言文专题(全国通用).pptx
- 四年级下册道德与法治说课课件-1.我们的好朋友-部编版(第二课时).pptx
- 博世柴油课件rbsd.pptx
- 国有企业民主生活会批评与自我批评个人发言稿精选四篇.docx VIP
- 居家养老上门服务方案.docx VIP
- 2024安徽合肥市轨道交通集团限公司社会招聘50人【综合基础知识500题】高频考点模拟试题及参考答案解析.docx
- 【MOOC答案】《中国文化传承与科技创新》(北京邮电大学)中国慕课章节作业网课答案.docx
- 外研版初中状语从句.doc VIP
- 7月中级育婴师考试6评分表.pdf
文档评论(0)