操作系统主存分配

操作系统主存分配

ID:44483052

大小:164.25 KB

页数:10页

时间:2019-10-22

操作系统主存分配_第1页
操作系统主存分配_第2页
操作系统主存分配_第3页
操作系统主存分配_第4页
操作系统主存分配_第5页
资源描述:

《操作系统主存分配》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、固定算法#inelude#include#include#defineNULL0typedefstructtable{intaddress;/*存储分区起始地址*/intlength;/*存储分区长度*/intflag;/*存储分区标志,0为空闲,1为被作业占据*/charname[10];/*存储分区占用标志作业名*/structtable*next;}node;node*creat()/*定义函数,建立主存分配表*/{node*head;node*pl,*p2;

2、intn=0;printf(HInputthetableAnaddresslengthflag(0..1)u);p1=p2=(node*)malloc(sizeof(node));scanf("%d%d%d",&p1->address,&p1->length,&p1->flag);if(pl->flag==l){printf("tinputjob_nameM);scanf("%s",pl->name);}elsestrcpy(p1->name/,nullH);head=NULL;while(pl->length!=O

3、)(n=n+l;讦(n==l)head=pl;elsep2->next=pl;p2二pl;pl=(node*)malloc(sizeof(node));scanf(n%d%d%dn,&pI->address,&p1->length,&p1->flag);if(pl->flag==l){printf(utinputjob_name:M);scanf(,l%s,pl->name);}elsestrcpy(p1^name/nuir1);}p2->next=NULL;return(head);}voidprint(node*h

4、ead)/*输出链表*/{node*p;p=head;if(head!=NULL)do{printf(n%d,%d.%d,%s,p->address,p->length,p->flag,p->name);p=p->next;}while(p!=NULL);main(){inti,a,success=O;node*q,*p;charworkn[10],work[10];printf(MThenewworknameis:H);scanf("%s*',workn);printf(nIfslengthis:”);scanf(

5、“%d”,&a);/*输入新工作的长度,工作名*/q=p=creat();while(q)/*完成分配过程*/{if(q->length>=a&&q->flag==0){strcpy(q・>name,workn);q・>flag=1;success=1;break;}elseq=q->next;}if(!success)printf("Pleasewait!H);elseprintf(nsuccessful!M);print(p);q二P;printf(HThereleasedworknameis:H);scanf

6、(H%s,t,work);success=0;while(p)/*完成回收过程*/{讦(strcmp(p->name,work)==0){strcpy(p->name/nulln);p->flag=O;success=1;break;}elsep=p->next;}if(!success)printf("notfound!");elseprintf(Msuccessful!M);print(q);getch();#include#include#include

7、>#defineNULL0typedefstructtable{intaddress;intlength;intflag;/*存储分区起始地址*//*存储分区长度*/八存储分区标志,0为空闲,1为被作业占据勺charname[10];/*存储分区占用标志作业名*/structtableext;Jnode;intsuccess二0;/*分配成功与否的标志*/node*work;node*creat()/*定义函数,建立主存分配表*/{node*head;node*pl,*p2;intn=0;printf("addressle

8、ngthflag(0..1)");p1=p2=(node*)malloc(sizeof(node));scanf(H%d%d%d",&p1->address,&pl->length,&p1->flag);if(pl->flag==1&&p1->length>0){printf(Mtinputjob

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。