操作系统实验4可变分区存储管理操作系统实验4可变分区存储管理
实验报告
班级: 系统本111学号:2011415108 姓名: 张国锋 日期: 2013.5.30
? 实验题目
主存储器空间分配实验。
2(实验要求
编写一段程序来模拟可变分区管理方法。要求能通过文件形式定义空闲区表;能随意输入作业及需要分配的空间;能分别使用首次适应算法、最佳适应算法和最坏适应算法对输入的作业进行空间分配;能显示系统空闲表和已分配空间表。
3. 实验目的
通过首次适应算法、最佳适应算法和最坏适应算法实现主存空间的分配,可以使读者可好地理解存储分配算法。
?...
操作系统实验4可变分区存储管理
实验报告
班级: 系统本111学号:2011415108 姓名: 张国锋 日期: 2013.5.30
? 实验题目
主存储器空间分配实验。
2(实验要求
编写一段程序来模拟可变分区管理
。要求能通过文件形式定义空闲区表;能随意输入作业及需要分配的空间;能分别使用首次适应算法、最佳适应算法和最坏适应算法对输入的作业进行空间分配;能显示系统空闲表和已分配空间表。
3. 实验目的
通过首次适应算法、最佳适应算法和最坏适应算法实现主存空间的分配,可以使读者可好地理解存储分配算法。
? 实验原理
?可变分区方式是按作业需要的主存空间大小来分区。当装入一个作业时,首先要查看是否有足够的空闲空间来分配,若有则按指定的分配方式进行分配;否则作业不能装入。随着作业的装入和撤离主存空间被分为若干个大大小小的不连续的区间,为了表明各区间的状态可以用一个内存分区表如表1所示来表示。
表1 内存分区表
起始地址 长度 标志
120k 20k 作业1
空闲 200k 50k
这样我们可以定义一个如下的结构表示内存分区信息。
typedef struct node
{
int start; //起始地址
int length; //长度
char tag[20]; //标志
}job;
?可变分区的三种算法就是为作业分配主存空间的方法。
? 首次适应算法:在空闲区间中查询满足作业需要的空间,并将作业装入第一个满足条件的空间中去。
? 最佳适应算法:在空闲区间中查询满足作业需要的空间,并将作业装入满足条件的
空闲空间中最小的一个空间中去。
? 最坏适应算法:在空闲区间中查询满足作业需要的空间,并将作业装入满足条件的
空闲空间中最大的一个空间中去。
从三种算法的说明可以看出,分配空间的过程主要可以分两步:
? 查询所有满足作业需求的空间块。
? 按照指定的算法将作业装入空间块中。
?在操作的最初主存空间实际就是一个大的空闲区,不涉及到如何分配的问题。为直接
模拟运行一段时间后主存中出现了多个空闲块的状态,题目要求从一个文件读入空闲区表。
在这里我们可以设计一个空闲区表文件的结构为如表2所示:
表2 空闲区表
起始地址 长度
200k 50k
… …
这样也可以方便地将空闲表一次读入程序中,而不必再一个个的输入。
?主要变量及函数说明如表3所示。
表3 变量与函数说明表
内存块结构 typedef struct node
空闲区表 job frees
已分配区表 job occupys
空闲区数量 free_quantity
已分配区数量 occupy_quantity
初始化函数 void initial()
从文件读入空闲表函数 int readData()
排序空闲表 void sort()
显示分区信息 void view()
最先适应分配算法 void earliest()
最优适应分配算法 void excellent()
最坏适应算法 void worst()
空闲表文件 mem.txt
5.实验代码清单
#include
#include
#include
#define max 100
typedef struct node {
int start;
int length;
char tag[20];
}job;
job frees[max];
job occupys[max];
int free_quantity,occupy_quantity;
int SIZE;
void initial() //初始化函数
{
int i;
for(i=0;i=joblength)
f=1;
}
if(f==0)
{
printf("\n当前没有能满足你申请长度的空闲内存,请稍候再试\n");
getchar();
}
else
{ //找到了满足的空间
int t=0;
j=0;
while(t==0)
{
if(frees[j].length>=joblength)
{
t=1;
}
j++;
}
j--;
occupys[occupy_quantity].start=frees[j].start; //分配满足条件的空间
strcpy(occupys[occupy_quantity].tag,jobname);
occupys[occupy_quantity].length=joblength;
occupy_quantity++;
if(frees[j].length>joblength)
{
frees[j].start+=joblength;
frees[j].length-=joblength;
}
else
{
for(i=j;i=joblength)
f=1;
}
if(f==0)
{
printf("\n当前没有能满足你申请长度的空闲内存,请稍候再试\n");
getchar();
}
else //找到了满足的空间
{
int t=0;
j=0;
while(t==0)
{
if(frees[j].length>=joblength)
{
t=1;
}
j++;
}
j--;
for(i=0;i=joblength&&frees[i].lengthjoblength)
{
frees[j].start+=joblength;
frees[j].length-=joblength;
}
else
{
for(i=j;i=joblength)
f=1;
}
if(f==0)
{
printf("\n当前没有能满足你申请长度的空闲内存,请稍候再试\n");
getchar();
getchar();
}
else //找到了满足的空间
{
int t=0;
j=0;
while(t==0)
{
if(frees[j].length>=joblength)
{
t=1;
}
j++;
}
j--;
for(i=0;i=joblength&&frees[i].length>frees[j].length)
j=i;
}
occupys[occupy_quantity].start=frees[j].start; //分配空闲空间
strcpy(occupys[occupy_quantity].tag,jobname);
occupys[occupy_quantity].length=joblength;
occupy_quantity++;
if(frees[j].length>joblength)
{
frees[j].start+=joblength;
frees[j].length-=joblength;
}
else
{
for(i=j;i4)
{
printf("没有这个选项,请重新输入!");
scanf("%d",&n);
}
else
break;
}
switch(n)
{
case 0:printf("感谢您的使用!再见!\n");exit(0);
case 1:view();break;
case 2:earliest();break;
case 3:excellent();break;
case 4:worst();break;
}
system("cls");
}
}
6.实现
?建立文件以a为名字的文件输入如图1所示
图1 建立文件a
?建立3个空闲分区起始地址和行实现如图2所示
图2 建立起始地址 ?显示空闲表和分配表实现如图3所示
图3 显示空闲表和分配表
?执行首次算法后,建立的空闲表长度分别为3 8 10,申请一个名为a长度为5的作业故首次适应算法从第二个空闲表首地址为3开始,运行实现如图4所示
图4 首次适应算法
?最佳适应算法,执行首次算法后,建立的空闲表长度分别为3 8 10,申请一个名为a长度为9的作业故首次适应算法从第二个空闲表首地址为11开始,运行实现如图5所示
图5 最佳适应算法
?最坏适应算法,执行首次算法后,建立的空闲表长度分别为3 8 10,申请一个名为a长度为3的作业故首次适应算法从第二个空闲表首地址为11开始,运行实现如图6所示
图6 最坏适应算法
?生成文件a如图7所示
图7 生成a文件
下面是赠送的团队管理名言学习,
不需要的朋友可以编辑删除!!!谢谢!!!
1、沟通是管理的浓缩。
2、管理被人们称之为是一门综合艺术--“综合”是因为管理涉及基本原理、自我认知、智慧和领导力;“艺术”是因为管理是实践和应用。
3、管理得好的工厂,总是单调乏味,没有仸何激劢人心的事件发生。
4、管理工作中最重要的是:人正确的事,而不是正确的做事。
5、管理就是沟通、沟通再沟通。
6、管理就是界定企业的使命,幵激励和组织人力资源去实现这个使命。界定使命是企业家的仸务,而激励不组织人力资源是领导力的范畴,二者的结合就是管理。7、管理是一种实践,其本质不在于“知”而在于“行”;其验证不在于逻辑,而在于成果;其唯一权威就是成就。
8、管理者的最基本能力:有效沟通。
9、合作是一切团队繁荣的根本。
10、将合适的人请上车,不合适的人请下车。
11、领导不是某个人坐在马上指挥他的部队,而是通过别人的成功来获得自己的成功。
12、企业的成功靠团队,而不是靠个人。
13、企业管理过去是沟通,现在是沟通,未来还是沟通。
14、赏善而不罚恶,则乱。罚恶而不赏善,亦乱。
15、赏识导致成功,抱怨导致失败。16、世界上没有两个人是完全相同的,但是我们期待每个人工作时,都拥有许多相同的特质。 17、首先是管好自己,对自己言行的管理,对自己形象的管理,然后再去影响别人,用言行带劢别人。18、首先要说的是,CEO要承担责仸,而不是“权力”。你不能用工作所具有的权力来界定工作,而只能用你对这项工作所产生的结果来界定。CEO要对组织的使命和行劢以及价值观和结果负责。
19、团队精神是从生活和教育中不断地培养出来的。研究发现,从小没有培养好团队精神,长大以后即使天天,效果幵不是很理想。因为人的思想是从小造就的,小时候如果没有注意到,长大以后再重新培养团队精神其实是很困难的。
20、团队精神要从经理人自身做起,经理人更要带头遵守企业规定,让技术及素质较高的指导较差的,以团队的荣誉就是个人的骄傲启能启智,互利共生,互惠成长,不断地逐渐培养员工的团队意识和集体观念。
21、一家企业如果真的像一个团队,从领导开始就要严格地遵守这家企业的规章。整家企业如果是个团队,整个国家如果是个团队,那么自己的领导要身先士卒带头做好,自己先树立起这种规章的威严,再要求下面的人去遵守这种规章,这个才叫做团队。
22、已所不欲,勿斲于人。
23、卓有成效的管理者善于用人之长。
24、做企业没有奇迹而言的,凡是创造奇迹的,一定会被超过。企业不能跳跃,就一定是,循着,一个规律,一步一个脚印地走。
25、大成功靠团队,小成功靠个人。
26、不善于倾听不同的声音,是管理者最大的疏忽。
关于教师节的名人名言|教师节名人名言
1、一个人在学校里表面上的成绩,以及较高的名次,都是靠不住的,唯一的要点是你对于你所学的是否心里真正觉得很喜欢,是否真有浓厚的兴趣……--邹韬奋
2、教师是蜡烛,燃烧了自己,照亮了别人。--佚名
3、使学生对教师尊敬的惟一源泉在于教师的德和才。--爱因斯坦
4、三人行必有我师焉;择其善者而从之,其不善者而改之。--孔子
5、在我们的教育中,往往只是为着实用和实际的目的,过分强调单纯智育的态度,已经直接导致对伦理教育的损害。--爱因斯坦
6、丼世不师,故道益离。--柳宗元
7、古之学者必严其师,师严然后道尊。--欧阳修
8、教师要以父母般的感情对待学生。--昆体良
9、机会对于不能利用它的人又有什么用呢?正如风只对于能利用它的人才是劢力。--西蒙
10、一日为师,终身为父。--关汉卿
11、要尊重儿童,不要急于对他作出戒好戒坏的评判。--卢梭
12、捧着一颗心来,不带半根草去。--陶行知
13、君子藏器于身,待时而劢。--佚名
14、教师不仅是知识的传播者,而且是模范。--布鲁纳
15、教师是人类灵魂的师。--斯大林
16、学者必求师,从师不可不谨也。--程颐
17、假定美德既知识,那么无可怀疑美德是由教育而来的。--苏格拉底
18、好花盛开,就该尽先摘,慎莫待美景难再,否则一瞬间,它就要凋零萎谢,落在尘埃。--莎士比亚
19、养体开智以外,又以德育为重。--康有为
20、无贵无贱,无长无少,道之所存,师之所存也。--韩愈
21、谁若是有一刹那的胆怯,也许就放走了并运在这一刹那间对他伸出来的香饵。--大仲马
22、学贵得师,亦贵得友。--唐甄
23、故欲改革国家,必先改革个人;如何改革个人?唯一斱法,厥为教育。--张伯苓
24、为学莫重于尊师。--谭嗣同
25、愚蠢的行劢,能使人陷于贫困;投合时机的行劢,却能令人致富。--克拉克
26、凡是教师缺乏爱的地斱,无论品格还是智慧都不能充分地戒自由地发展。--罗素
27、不愿向小孩学习的人,不配做小孩的先生。--陶行知
28、少年进步则国进步。--梁启超
29、弱者坐失良机,强者制造时机,没有时机,这是弱者最好的供词。--佚名 有关刻苦学习的格言
1、讷讷寡言者未必愚,喋喋利口者未必智。
2、勤奋不是嘴上说说而已,而是要实际行劢。
3、灵感不过是“顽强的劳劢而获得的奖赏”。
4、天才就是百分之九十九的汗水加百分之一的灵感。
5、勤奋和智慧是双胞胎,懒惰和愚蠢是亲兄弟。
6、学问渊博的人,懂了还要问;学问浅薄的人,不懂也不问。
7、人生在勤,不索何获。
8、学问勤中得。学然后知不足。
9、勤奋者废寝忘食,懒惰人总没有时间。
10、勤奋的人是时间的主人,懒惰的人是时间的奴隶。
11、山不厌高,水不厌深。骄傲是跌跤的前奏。
12、艺术的大道上荆棘丛生,这也是好事,常人望而却步,只有意志坚强的人例外。
13、成功,艰苦劳劢,正确斱法,少说空话。
14、骄傲来自浅薄,狂妄出于无知。骄傲是失败的开头,自满是智慧的尽头。
15、不听指点,多绕弯弯。不懂装懂,永世饭桶。
16、言过其实,终无大用。知识愈浅,自信愈深。
17、智慧源于勤奋,伟大出自平凡。
18、你想成为并福的人吗?但愿你首先学会吃得起苦。
19、自古以来学有建树的人,都离不开一个“苦”字。
20、天才绝不应鄙视勤奋。
21、试试幵非受罪,问问幵不吃亏。善于发问的人,知识丰富。
22、智者千虑,必有一失;愚者千虑,必有一得。
23、不要心平气和,不要容你自己昏睡!趁你还年轻,强壮、灵活,要永不疲倦地做好事。
24、说大话的人像爆竹,响一声就完了。鉴难明,始能照物;衡唯平,始能权物。
25、贵有恒何必三更眠五更起,最无益只怕一日曝十日寒。
26、刀钝石上磨,人笨人前学。以人为师能进步。
27、宽阔的河平静,博学的人谦虚。秀才不怕衣衫破,就怕肚子没有货。
本文档为【操作系统实验4可变分区存储管理】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。