实验四(没写完)

#include<stdio.h>
#include <stdlib.h>
#include <conio.h>
#define nil -1
#define NULL 0
#define maxisize 600 //用户的空闲区空间最大值
#define minisize 4
#define getspace(type) (type*)malloc(sizeof(type)) //分配空间
struct table{
char job; //作业标号
float address; //分区起始地址
float length; //分区长度,单位为字节
int flag; //分区表的状态位
struct table *FRlink; //前向指针
struct table *RElink; //后向指针
}*free_table=NULL,*place; //已分配分区表,空闲分区表
typedef struct table FRtable;
//空间分区链表初始化
FRtable *init(FRtable *tb)
{
tb->FRlink=NULL;
tb->job=nil;
tb->address=1064;
tb->length=1664;
tb->flag=0;
tb->RElink=NULL;
return tb;
}
//主存分配函数,为作业job分配大小为xk的分区空间
void allocate(char job,float xk,int choice)
{
FRtable *tb,*link;
int k=0;float temp=600;
if (free_table->FRlink==NULL&&free_table->RElink==NULL)
{//给首个作业分配空间,改写分区链表
free_table->job=job;
free_table->length=xk;
free_table->flag=1;
if (xk<maxisize)
{
tb=getspace(FRtable);
free_table->RElink=tb;
tb->FRlink=free_table;
tb->job=nil;
tb->address=1064+xk;
tb->length=maxisize-xk;
tb->flag=0;
}
if (choice==2)
{//链接成循环链表
free_table->FRlink=tb;
tb->RElink=free_table;
place=tb;
}
else
{
free_table->FRlink=NULL;
if (xk<maxisize) tb->RElink=NULL;
}
k=1;
}
else
{
if (2==choice) tb=place;//采用CFF时将ta定位到上次找到的合适空间分区的下个空间分区
else tb=free_table;
while(tb!=NULL)
{
if (3==choice)
{
while(tb!=NULL)
{
if (tb->length>=xk&&tb->flag==0)
if (tb->length<temp)
{place=tb;temp=tb->length;} //选择最适合空间
tb=tb->RElink;
}
tb=place;
}
if (tb->length>=xk&&tb->flag==0)
if (tb->length-xk<=minisize)
{//当搜索到的空间大小<=xk+minisize时,将空间全部分配给作业
tb->job=job;
tb->flag=1;
place=tb->RElink;
k=1;
break;
}
else
{//当搜索到的空间大小>xk+minisize时,将空间划分,再分配给作业
link=getspace(FRtable);
link->length=tb->length-xk;
tb->job=job;
tb->length=xk;
tb->flag=1;
link->RElink=tb->RElink;
if (NULL!=tb->RElink) tb->RElink->FRlink=link;
tb->RElink=link;
link->FRlink=tb;
link->job=nil;
link->address=tb->address+xk;
link->flag=0;
place=link;
k=1;
break;
}
tb=tb->RElink;
}
}

时间: 2024-10-06 00:29:22

实验四(没写完)的相关文章

新闻发布系统、、、还没写完,请看下集

真希望你笑的时候,旁边坐着的是一个能和你一起笑的人.合适的圈子,会接纳你所有的好事却不生嫉妒.在真正的朋友面前,她从不会认为你显摆,只会由衷的为你高兴.总有些人看不得你好.但你却从此看清了哪些是真正的朋友,哪些只是过客.生活无需过多陪衬,三观不和的朋友多了,越热闹越冷清. 第一项:BaseDAO public class BaseDAO { public static final String driver="com.mysql.jdbc.Driver"; public static

sql语句练习50题(我自己写的答案,还没写完)

Student(Sid,Sname,Sage,Ssex) 学生表Course(Cid,Cname,Tid) 课程表SC(Sid,Cid,score) 成绩表Teacher(Tid,Tname) 教师表练习内容:1.查询“某1”课程比“某2”课程成绩高的所有学生的学号:SELECT a.Sid FROM SC AS a ,SC AS bWhere a.Cid IN (SELECT Cid FROM Course Where Cname="某1")AND b.Cid IN (SELECT

Xamarin University-----Xamarin Mobile Certification Exam考试经历(还没写完)

我是在2017年8月7日通过的Xamarin Certification Exam(Xamarin认证考试), 然后今年8月底,Xamarin考试就改革了,考试改革页面在这里 我简单介绍一下改革前的考试规则:考试范围:20门课程. 考试语言: 英语 考试时间: 180分钟(3个小时) 考题数量: 150道题 考试题型: 单项选择题,多项选择题,判断题. 通过分数: 最低要求80分(满分100分) 是否开卷: 开卷. 考试次数限制: 你最多只能参加三次考试,如果你三次都不通过,我就不知道了....

18.2.26深信服Web实习生补坑(已拿到offer)----持续更新中,还没写完

26号晚上8点左右收到电话,面试大概一小时左右,发挥的一般,问到的大部分都答出来了,有些没有讲好.然后面试官说等通知,问了评价,面试官说我现在大三懂这么多已经很不错了,表达能力需要加强,有点紧张口吃.30分钟后收到实习生offer邮件.这里只记录下几个答的不好的点. 1.var和不var的区别? 先问了作用域相关,然后问如果不用var声明一个变量是属于什么变量,这个是全局变量,肯定一下子答上来,然后又问那么不var的和用var声明的变量有什么区别? js里面的属性是有权限设置的,比如我们直接创建

(没写完)SQL数据库建表(基础大牛请飘过就好谢谢)

--SQL表与表之间的关系-- 首先要学会找表与表之间的关系 只有把表和表之间的关系找好才 可以键表,并方便查询. 一.表与表之间有三种关系 (1)两表之间的主键存在一对一的关系 随便在一表中加上另一表的主键为该表的外键. (2)两表之间的主键存在一对多的关系 在"一"表中创建"多"表的主键为"一"表的外键. (3)两表之间的主键存在多对多的关系 重新创建一个新表并加如两个表的主键为该表的外键. 再加上两表之间的关系属性. --        

没写完,待继续

CREATE OR REPLACE PROCEDURE SOLVE_LOCK AS V_SQL VARCHAR2(3000); CUR_LOCK SYS_REFCURSOR; TYPE TP_LOCK IS RECORD( V_SID NUMBER, V_TYPE VARCHAR2(10), V_ID1 NUMBER, V_ID2 NUMBER, V_LMODE VARCHAR2(20), V_REQUEST  NUMBER, V_LOCK_TIME NUMBER, V_BLOCK  NUMBE

python第二十一天---昨天没写完作业

作业 2, 模拟计算器开发:实现加减乘除及拓号优先级解析用户输入 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * 568/14 )) - (-4*3)/ (16-3*2) )等类似公式后,必须自己解析里面的(),+,-,*,/符号和公式(不能调用eval等类似功能偷懒实现),运算后得出结果,结果必须与真实的计算器所得出的结果一致  2776672.6952380957 流程图: 详细代码: 1 #!usr/bin/env p

图的邻接表和邻接矩阵 没写完放着。。

#include <iostream> #include <memory.h> #include <stack> #include <queue> using namespace std; class GraphList; //边结点的结构体 struct Edge { friend class GraphList; int VerAdj; //邻接顶点序号,从0开始编号 int cost; //边的权值 Edge*Link; //指向下一边节点的指针 Ed

Xamarin University-----学习经历(还没写完)

首先要感谢微软,毕竟收购Xamarin是大功一件. 微软大土豪,直接把Xamarin University的价格砍了一半,原来是一年一付,2000美元   !!!再次感谢土豪! Xamarin University在今年3月3日实行了新的定价策略(按月支付,只要83.25美元, 但还是需要VISA信用卡等外币信用卡)-------价格页面在这里. 课程设置: 在线课堂: 老师: