模拟实现用位示图法管理文件存储空间的分配与回收1(3)

2019-08-31 12:04

第五章 设计心得体会

1.准备越充分,实验越顺利。古人云,磨刀不误砍柴工。前期的知识储备、文献储备、材料准备、方法准备可以避免手忙脚乱,充分的预实验使你充满信心。一步一个脚印,就不必“从头再来”。最不能容忍的是在开始的几步偷懒,造成后面总有一些无法排除的障碍。

2.交流是最好的老师做实验遇到困难是家常便饭。你的第一反应是什么?反复尝试?放弃?看书?这些做法都有道理,但首先应该想到的是交流。对有身份的人,私下的请教体现你对他的尊重;对同年资的人,公开的讨论可以使大家畅所欲言,而且出言谨慎。千万不能闭门造车。一个实验折腾半年,后来别人告诉你那是死路,岂不冤大头?

3.一半时间做实验,一半时间看文献。

千万不能把时间全部消耗在实验台上。看文献、看书、看别人的操作、听别人的经验、研究别人的思路,边做边思考。要学会比较,不要盲从。否则,会被一些小小的问题困扰许久。

8

附录1 程序源代码

#include\#include\#include\#include\///#include\#include using namespace std; int WST[256];

/************************************* 空闲区结构体定义

start_location 空闲区对象变量的开始位置 free_number 空闲区块数目 next 指向下一个空闲区的指针

**************************************/

typedef struct node{

/************************************* 申请空间作业结构体定义 office[] 作业名

begin_location 作业申请空间后的开始位置 office_number 作业申请空间区的数目 next 指向下一个申请空闲区的作业指针 **************************************/

9

int start_location; int free_number; struct node*next; }free_link;

typedef struct link{

/************************************** 相关位示图操作的结构体定义 p 空间区链表指针 q 作业链表指针

***************************************/ typedef struct {

free_link *p; office *q; char office[20]; int begin_location; int office_number; struct link *next; }office;

}work;

/*************************************** 程序菜单

****************************************/ void menu(){ }

/*************************************** 置空位示图进行初始化

****************************************/ void zero_wst(){

10

printf(\文件的存取和回收\\n\printf(\分配文件\\n\printf(\回收文件\\n\printf(\退出\\n\\t\printf(\请输入选项: \

}

int i;

for(i=0;i<256;i++)

WST[i]=0;

/****************************************

位示图输出显示将初始化或者申请或者回收后的位示图进行显示 *****************************************/ void print_wst(int WST[256]){ }

/************************************** 已经申请空间的作业相关情况输出显示 包括:作业名申请空间的开始位置和截至位置 ***************************************/ void print_office(work *w){

int i,j=0; printf(\for(i=0;i<16;i++)

printf(\

printf(\printf(\for(i=0;i<256;i++){ }

printf(\

j++;

printf(\if(j==0&&i!=0&&j!=256){ }

printf(\printf(\

office *q;

11

q=w->q; q=q->next; if(q!=NULL){

printf(\已有文件:\\n\

while(q!=NULL){

printf(\fice_number-1); }

/************************************* 位示图操作的初始化 包括:空闲区链表的初始化

作业链表的初始化 }

}

q=q->next;

**************************************/ work *start(){

free_link *p; office *q; work *w;

w=(work *)malloc(sizeof(work));

p=(free_link*)malloc(sizeof(free_link)); p->start_location=0; p->free_number=256; p->next=NULL;

q=(office *)malloc(sizeof(office)); q->next=NULL; w->p=p; w->q=q; return w;

12


模拟实现用位示图法管理文件存储空间的分配与回收1(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:土木工程施工试题库及答案2011

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: