资源描述:
《自考操作系统上机》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、北京自考吧(ZIKAOBA.COM)北大操作系统(本)上机考试题总结(完整版)布丁整理一、进程调度进程调度算法有FIFO,优先数调度算法,时间片轮转调度算法,分级调度算法,目前主要是考FIFO和优先数调度算法(静态优先级)。进程调度算法的数据结构主要有:进程函数定义:建立进程函数,进程调度函数一个网友做的一个FIFO调度算法的示例:#include"stdio.h"#definemax100#definepfree0/*processend*/#definerunning1/*processrunningstat
2、us*/#defineaready2/*processareadystatus*/#defineblocking3/*processareadyblockingstatus*/typedefstructnode{charname;intstatus;intprecendence;intax,bx,cx,dx;intpc;intpsw;structnode*next;/*pcbdefine*/}pcb;pcb*createprocess(pcb*head){pcb*p,*q;inta,b,c,d,m,n;charI
3、D;ints;q=NULL;printf("inputthefirstsevenstatuspcb:");scanf("%c",&ID);scanf("%d%d%d%d%d%d",&a,&b,&c,&d,&m,&n);while(ID!='*'){p=(pcb*)malloc(sizeof(pcb));p->name=ID;p->ax=a;36北京自考吧(ZIKAOBA.COM)北大操作系统(本)上机考试题总结(完整版)布丁整理p->bx=b;p->cx=c;p->dx=d;p->pc=m;p->psw=
4、n;p->precendence=pre;p->status=aready;if(head==NULL)head=p;elseq->next=p;q=p;printf("inputthenextpcb:");scanf("%c",&ID);scanf("%d%d%d%d%d%d",&a,&b,&c,&d,&m,&n);}if(q!=NULL)q->next=NULL;q=head;while(q){printf("peocessname.status.ax.bx.cx.dx.pc.psw.");p
5、rintf("%10c%5d%8d%5d%5d%5d%5d%5d%5d",q->name,q->status,q->precendence,q->ax,q->bx,q->cx,q->dx,q->pc,q->psw);q=q->next;}returnhead;/*createprocessend*/}voidprocessfifo(pcb*head)/*usefifo*/{pcb*p;p=head;printf("theprocessusefifomethod.");printf("runningthef
6、ristprocess:");while(p!=NULL){p->status=running;printf("processnamestatus.ax.bx.cx.dx.pc.psw.");printf("%10c%5d%8d%5d%5d%5d%5d%5d",p->name,p->status,p->ax,p->bx,p->cx,p->dx,p->pc,p->psw);/*checkprocessrunningstatus*/p->status=0;p=p->next;}printf("chec
7、kweatherfertheprocesscomplete:");36北京自考吧(ZIKAOBA.COM)北大操作系统(本)上机考试题总结(完整版)布丁整理p=head;while(p){printf("%3c%3d",p->name,p->status);p=p->next;}printf("gameisover!");}}}main(){pcb*head;head=NULL;head=createprocess(head);processfifo(head);}.一、模拟存储管理中内存空间的管理和
8、分配内存空间的管理分为固定分区管理方式,可变分区管理方式,页式存储管理,段式存储管理。下面是页式存储管理和可变分区管理的两个例子:如2002(?)的北京大学主考的上机试题:内存被划分成2048块(页)。用32位字长的字存放位示图,为0的位表示该块尚未分配,为1的位表示该块已分配。实习检查:1、运行程序,由检查教师给出文件名,该文件中存有内存目前状况的位示图的数据(0和1的