资源简介
操作系统实验综合设计含代码
操作系统实验综合设计含代码
操作系统实验综合设计含代码
代码片段和文件信息
#include “stdio.h“
#include
#include
#include “iostream.h“
#define getjcb(type) (type*)malloc(sizeof(type))
#define getsub(type) (type*)malloc(sizeof(type))
#define NULL 0
int numnum2; //要调度的作业数和要回收的区域数
int m=0; //已分配作业数
int flag; //分配成功标志
int isupisdown; //回收区域存在上邻和下邻的标志
int is=0;
struct jcb{
char name[10];
char state;
int ntime; //所需时间
int size; //所需空间大小
int addr; //所分配分区的首地址
struct jcb *link;
} *ready =NULL *p*q*as=NULL;
//作业队列ready已分配作业队列as
typedef struct jcb JCB;
struct subarea{ //分区块
char name[10];
int addr; //分区首地址
int size; //分区大小
char state;
struct subarea *link;
} *sub=NULL*r*s*cur;
//空闲分区队列sub当前分区指针cur
typedef struct subarea SUB;
//--------------------------------------------------------------------------
void sort_sub() /*对空闲分区按从小到大排序*/
{ SUB *first*second;
int insert=0;
if((sub==NULL)||((s->size)<(sub->size))) /*插在队列之首*/
{s->link=sub;
sub=s;
}
else{first=sub; /*寻找适当的位置插入*/
second=first->link;
while(second!=NULL)
{
if((s->size)<(second->size))
{
s->link=second;
first->link=s;
second=NULL;
insert=1;
}
else
{
first=first->link;
second=second->link;
}
}
if(insert==0)first->link=s; /*插在队尾*/
}
}
//--------------------------------------------------------------------------
void firstsort() /* 建立对作业按到达时间进行排列的函数直接插在队列之尾 sort*/
{
JCB *first;
if(ready==NULL) ready=p;
else{
first=ready;
while(first->link!=NULL)
first=first->link;
first->link=p;
p->link=NULL;
}
}
//--------------------------------------------------------------------------
void lastsort() /*建立对已分配作业队列的排列函数直接插在队列之尾sort3*/
{
JCB *fir;
if(as==NULL) as=q;
else{
fir=as;
while(fir->link!=NULL)
fir=fir->link;
fir->link=q;
q->link=NULL;
}
m++;
}
//--------------------------------------------------------------------------
void input() /* 建立作业控制块函数*/
{
int i;
printf(“\n请输入要调度的总作业数:“);
scanf(“%d“&num);
for(i=0;i {
printf(“\n作业号No.%d:\n“i);
p=getjcb(JCB);
printf(“\n输入作业名:“);
scanf(“%s“&p->name);
printf(“\n输入作业的大小:“);
scanf(“%d“&p->size);
printf(“\n输入作业所需运行时间:“);
scanf(“%d“&p->ntime);
p->state=‘w‘;
p->link=NULL;
firstsort(); /* 调用sort函数*/
}
printf(“\n 按任一键继续......\n“);
getch();
}
//--------------------------------------------------------------------------
void input2() /*建立要回收区域的函数*/
{
JCB *k;
int has;
q=getjcb(JCB);
printf(“\n输入区域名(作业名):“);
scanf(“%s“&q->name);
p=as;
while(p!=NULL)
{if(strcmp(p->nameq->name)==0) /*在已分配作业队列中寻找*/
{
q->addr=p->addr;
q->size=p->size;
has=1; /*输入作业名存在标志
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 192512 2007-11-05 21:37 操作系统实验综合设计\实验封面.doc
文件 192512 2007-11-05 21:37 操作系统实验综合设计\综合设计封面.doc
文件 5673 2007-11-05 21:36 操作系统实验综合设计\进程调度2\jin.C
文件 22563 2007-11-05 21:36 操作系统实验综合设计\进程调度2\jin.exe
文件 150016 2007-11-05 21:36 操作系统实验综合设计\进程调度2\进程调度实验报告.doc
文件 64 2008-10-18 20:50 操作系统实验综合设计\进程调度2\更多电子书下载.html
文件 23204 2007-11-05 21:36 操作系统实验综合设计\文件管理\Filesystem_s.cpp
文件 33 2007-11-05 21:36 操作系统实验综合设计\文件管理\LOGIN.exe
文件 27136 2007-11-05 21:36 操作系统实验综合设计\文件管理\Project1.exe
文件 14 2007-11-05 21:36 操作系统实验综合设计\文件管理\xiao.txt
文件 176640 2007-11-05 21:36 操作系统实验综合设计\文件管理\文件系统实验报告.doc
文件 64 2008-10-18 20:50 操作系统实验综合设计\文件管理\更多电子书下载.html
文件 10686 2007-11-05 21:36 操作系统实验综合设计\存储管理\cunchuguanli.c
文件 26600 2007-11-05 21:36 操作系统实验综合设计\存储管理\cunchuguanli.exe
文件 173056 2007-11-05 21:36 操作系统实验综合设计\存储管理\存储管理实验报告.doc
文件 64 2008-10-18 20:50 操作系统实验综合设计\存储管理\更多电子书下载.html
文件 6228 2007-11-05 21:36 操作系统实验综合设计\作业调度\duodao.c
文件 20917 2007-11-05 21:36 操作系统实验综合设计\作业调度\duodao.exe
文件 7243 2007-11-05 21:36 操作系统实验综合设计\作业调度\zuoye.c
文件 22399 2007-11-05 21:37 操作系统实验综合设计\作业调度\zuoye.exe
文件 191488 2007-11-05 21:37 操作系统实验综合设计\作业调度\作业调度实验报告.doc
文件 64 2008-10-18 20:50 操作系统实验综合设计\作业调度\更多电子书下载.html
文件 23112 2007-11-05 21:36 操作系统实验综合设计\主存空间分配与回收\cunchu.cpp
文件 17920 2007-11-05 21:36 操作系统实验综合设计\主存空间分配与回收\Project1.exe
文件 286720 2007-11-05 21:36 操作系统实验综合设计\主存空间分配与回收\主存空间的分配与回收.doc
文件 64 2008-10-18 20:50 操作系统实验综合设计\主存空间分配与回收\更多电子书下载.html
文件 64 2008-10-18 20:50 操作系统实验综合设计\更多电子书下载.html
目录 0 2008-04-18 22:30 操作系统实验综合设计\进程调度2
目录 0 2008-04-18 22:30 操作系统实验综合设计\文件管理
目录 0 2008-04-18 22:30 操作系统实验综合设计\存储管理
............此处省略6个文件信息
相关资源
- 学生成绩管理系统C 源码(很完整)
- 基于C 的简易FTP客户端(带源码)
- 操作系统共享内存实验
- 选课系统c (指针与链表)
- C (MFC)华容道自动求解
- VC 编程实现活动主机扫描源代码
- c 做的漂亮菜单附有源代码
- C 练习系列1
- 操作系统循环首次适应算法
- 将数字转为中文金额的大写方式(C
- 十六进制与字符串互转
- 操作系统课程设计实现可变分区存储
- 基于GTK的Linux环境下的简易任务管理器
- VC 使用GDI 矢量绘图软件源代码
- c 编写的 矩阵 matrix 类源码
- c 面试题(面试经验)自己收集自己
- vc 编写的基于TCP协议的客户/服务器
- 表达式求值C 代码(附实验报告)
- 操作系统课程设计 二级文件管理系统
- lzw压缩,解压缩算法
- 建立文件数据索引的c 代码
- 加快Windows XP操作系统开机速度
- 操作系统教程课后答案华中科技大学
- 树状导航菜单的制作
- 51单片机中使用ucos ii的优缺点转
- 51单片机中使用ucos ii的优缺点
- 嵌入式实时操作系统ucos-II 第二版 源
- VC工程转Qt工程文件的工具
- 计算机操作系统课后_汤小丹_第四版
- 计算机操作系统(第四版)汤小丹课
评论
共有 条评论