网站大量收购独家精品文档,联系QQ:2885784924

操作系统课程设计-编程演示三种存储管理方式的地址换算过程.doc

操作系统课程设计-编程演示三种存储管理方式的地址换算过程.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 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

文档评论(0)

smdh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档