操作系统实验四报告-主存空间分配和回收(含源码)(6)
九、所遇困难的解决以及心得体会
本实验我采取用一条链表同时表示空闲分区链和主存空间占用情况,因为主存总大小是固定的,把空闲分区链所表示的区域从总的内存里去除就是被占用的空间的大小,这个实验还是比较简单的,但在执行过程中还是遇到了很多问题,如在回收空间的函数中,因为要考虑到四种情况,我一开始的想法是这样的:让p指向链表开头,一直等找到p所指向的分区序号等于要删除的分区序号,然后开始执行,当p->prior不是链首first时要考虑p->next是不是链尾end,然后继续考虑p的前向指针和后向指针得状态是否为空闲;等考虑完p->prior不是链首了,就进行考虑p->prior是链首的问题,然后又进行了考虑p->next是不是链尾end,然后继续考虑p的前向指针和后向指针得状态是否为空闲;等考虑完了p->prior的问题又进行考虑p->next的问题,一直这样重复了,我都不知道,当时超烦的,后来静下心重新检查自己写得程序,才知道自己写得这个函数好凌乱。后来我直接把p->next=end的情况去掉了。才使得程序出现好转。当解决了回收问题,发现在回收后有有作业请求分配时,分配序号会出现这种情况,就是有分区序号相等的情况,如下图(a);后来我采用了一个sort()整理分区序号,一开始我把这个函数放到三个算法函数中,还是没有发生改变。然后我又继续检查程序,想到函数sort()放到show()函数中会怎样呢?没想到对了,真的能改变分区序号的值,如图(b)。其实sort()就是实现图(c)里面的功能。当然还不止这两个问题的,不过在这过程序中,整理分区序号和回收内存是让我花的时间最多去解决的问题。总之这次收获还挺大的。
图(a)
26
图(b)
图(c)
27
相关推荐:
- [综合文档]应答器设备技术规范(征求意见稿)A1
- [综合文档]教师 2012年高考政治试题按考点分类汇
- [综合文档]保险公司的总经理助理竞职演说
- [综合文档]卫生应急大练兵大比武活动考试--题库(
- [综合文档]徐州经济技术开发区总体规划环境影响报
- [综合文档]汉语拼音表(带声调)
- [综合文档]二年级 上 思维训练( 1~18)
- [综合文档]特色学校五年发展规划
- [综合文档]机床经常出现报警“X1轴定位监控”
- [综合文档]《电子技术基础》21.§5—2、3、4 习题
- [综合文档]浙江省深化普通高中课程改革
- [综合文档]CRISP原理 - 图文
- [综合文档]2017年电大社会调查研究与方法形考答案
- [综合文档]浅析建筑施工安全毕业论文
- [综合文档]《回忆我的母亲》名师教案
- [综合文档]装饰装修工程监理规划
- [综合文档]三下乡心得体会-文艺
- [综合文档]柱计算长度系数 - 图文
- [综合文档]全流程思考,提高燃电系统热电转换率--
- [综合文档]2018年嘉定区中考物理一模含答案
- 433M车库门滚动码遥控器
- 8、架空线路施工规范
- 大学四年声乐学习的体会
- 新北师大版五年级数学上册《轴对称再认
- 部编版五年级上册语文第六单元小结复习
- 小学六年级英语形容词用法
- 第2课 抗美援朝保家卫国 课件01(岳麓版
- 2015年天津大学运筹学基础考研真题,考
- 微机计算机控制技术课后于海生(第2版)
- 安全教育实践活动
- Delphi程序设计教程_第1章_Delphi概述
- 第八讲 工业革命与启蒙运动
- 《中华人民共和国药典》2005年版二部勘
- 科粤版九年级化学2.3构成物质的微粒(1)
- 西师大版数学三年级下册《长方形、正方
- ch6_冒泡排序演示
- 第4章 冲裁模具设计
- 浙江中小民营企业员工流失论文[终稿]
- 再议有线数字电视市场营运模式
- 昆明供水工程监理大纲




