当前位置:文档之家› 设计页式存储管理的分配与回收

设计页式存储管理的分配与回收

设计页式存储管理的分配与回收
设计页式存储管理的分配与回收

学号:

课程设计

题目模拟设计页式存储管理的分配与回收

学院计算机科学与技术专业

班级

姓名

指导教师吴利军

2013 年01 月09 日

课程设计任务书

学生姓名:

指导教师:吴利军工作单位:计算机科学与技术学院题目: 模拟设计页式存储管理的分配与回收

初始条件:

1.预备内容:阅读操作系统的内存管理章节内容,理解有关虚拟存储器、页式存储管理等概念,掌握页式管理内存的分配和回收过程。

2.实践准备:掌握一种计算机高级语言的使用。

要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写

等具体要求)

1.采用页式管理方案实施内存分配和回收。能够处理以下的情形

⑴能够输入给定的内存页面数,页面大小,进程的个数及每个进程的页数。

⑵当某进程提出申请空间的大小后,显示能否满足申请,以及为该进程分配资

源后内存空间的使用情况(被进程占用的页面,空闲的页面);

⑶当某进程撤消时,显示内存回收后内存空间的使用情况。

2.设计报告内容应说明:

⑴需求分析;

⑵功能设计(数据结构及模块说明);

⑶开发平台及源程序的主要部分;

⑷测试用例,运行结果与运行情况分析;

⑸自我评价与总结:

i)你认为你完成的设计哪些地方做得比较好或比较出色;

ii)什么地方做得不太好,以后如何改正;

iii)从本设计得到的收获(在编写,调试,执行过程中的经验和教训);

iv)完成本题是否有其他方法(如果有,简要说明该方法);

时间安排:

设计安排一周:周1、周2:完成程序分析及设计。

周2、周3:完成程序调试及测试。

周4、周5:验收、撰写课程设计报告。

(注意事项:严禁抄袭,一旦发现,一律按0分记)

指导教师签名:年月日

系主任(或责任教师)签名:年月日

模拟设计页式存储管理

的分配与回收

1需求分析

图2 基本页表示例

静态分页管理的第一步是为要求内存的作业或进程分配足够的页面。系统通过存储页面表、请求表以及页表来完成内存的分配工作。页表指的是内存中的一块固定存储区。页式管理时每个进程至少有一个页表。请求表指的是用来确定作业或进程的虚拟空间的各页在内存中的实际对应位置;另外整个系统有一个存储页面表,其描述了物理内存空间的分配使用状况。

图3 请求表的示例

存储页面表有两种构成方法:

1、位示图法

2、空闲页面链表法

模拟设计页式存储管理的分配与回收要求能够满足如下的要求:

(1)输入给定的内存页面数,页面大小,进程的个数及每个进程的页数。

(2)要求当某进程提出申请空间的大小后,显示能否满足申请,以及为该进

程分配资源后内存空间的使用情况(被进程占用的页面,空闲的页面)。

2 功能设计

2.1 算法分析

首先,请求表给出进程或作业要求的页面数。然后,由存储页面表检查是否有足够的空闲页面,如果没有,则本次无法分配。如果有则首先分配设置页表,并请求表中的相应表项后,按一定的查找算法搜索出所要求的空闲页面,并将对应的页好填入页表中。

图4 分配页面的算法流程

2.2 数据结构

页式管理把内存空间按页的大小划分成片或者页面,再按照一定的规律建立起页表,并通过请求表将分配内容显示出来.将页表和请求表的内容使用结构体来定义是比较方便的.

//页表项结构

typedef struct _pagetableitem

{

pageid pagenum; //页号

blockid blocknum; //块号

}pgtabitem; //页表

typedef pgtabitem * pagetable;

//请求表结构

typedef struct _reqtable

{

unsigned pid; //进程号

unsigned reqpagenum; //请求页面数

pagetable pgtabadr; //页表始址

bool state; //状态

} reqtabitem;

请求表还引入了支持快速插入和删除的list顺序容器来进行相关操作.

list reqtable

因为模拟设计的关系,页面的起始地址均应该为随机的数值,所以程序在设计过程中加入了随机数类的编写.

class RandomNumber

{

private:

unsigned long randseed;

public:

RandomNumber(unsigned long s=0);

unsigned short Random(unsigned long n);

double fRandom(void);

};

采用当前系统的时间值来生成伪随机数分配地址.

定义随机数产生器:RandomNumber random

定义内存页面数:int pagenum

定义页面大小:int pagesize

定义进程个数:int pnum

用整数数组模拟分配的内存页面数int * mempage=new int[pagenum]

2.3模块说明

2.3.1 主函数

主函数依次运行了程序中所实现的关键函数.

int main(){

InitSys(); //初始化系统

MainChoice();//输出系统菜单

Destroy(); //释放申请的动态内存

return 0;}

2.3.2 各个功能函数

初始化内存页面:void Init_Mempage(void)

获取内存使用情况:int Get_Mempagenum(void) 初始化默认的请求表:void Init_Reqtable(void)

为默认的进程分配内存:void Init_DistMem(void) 手动创建进程,并分配内存:void Dist_Mem(void) 释放申请的动态内存:void Destroy(void)

结束指定进程:void Kill(void)

2.3.3 打印函数

打印出进程请求表:void PrintReqtable(void)

打印出页表:void PrintPageTable(void)

打印出内存使用情况:void PrintMem(void)

打印出物理块的大小:void PrintBlockSize(void) 2.3.4 其他函数

初始化系统: void InitSys(void)

输出主菜单:void MainMenu(void)

选择运行分支:void MainChoice()

3开发平台

3.1开发平台

(1)使用系统:Windows 7

(2)使用语言:C++

(3)开发工具:Visual C++ 6.0

4测试用例,运行结果与运行情况分析

4.1测试方法

通过输入正常数据以及非正常数据对程序进行全方位测试4.2测试结果

(1)程序主界面

(2)输入进程号和页面数:

(3)显示进程页表:

(4)显示请求表

(5)显示内存使用情况以及物理块大小

(6)错误检验

5源程序的主要部分

#include

#include

#include

#include

#include "page.h"

#include "Random.h"

using namespace std;

list reqtable;

RandomNumber random; //随机数产生器

unsigned pagenum=random.Random(80)+21; //内存页面数21-100 unsigned pagesize=random.Random(16)+5; //页面大小5-20 unsigned pnum=random.Random(4)+5;//进程的个数5-8

int * mempage=new int[pagenum]; //用整数数组模拟内存页面数void Init_Mempage(void)

{

int i=0;

for(i=0;i

mempage[i]=0; //数组全部赋初值

}

int Get_Mempagenum(void)

{

int sum=0;

for(int i=0;i

if(mempage[i]==0)

sum++;

return sum; //判断有多少内存页面已经被使用

}

void Init_Reqtable(void)

{

int i;

for(i=1;i<=int(pnum);i++)

{

reqtabitem preq;

preq.pid=i;

preq.reqpagenum=random.Random(4)+2;//进程请求的页面大小-5

preq.state=false;

preq.pgtabadr=NULL;

reqtable.push_back(preq); //依次压入容器

}

}

/*为默认的进程分配内存*/

void Init_DistMem(void)

{

int reqpnum; //进程请求页面数

int i;

list::iterator pos=reqtable.begin();

for(;pos!=reqtable.end();pos++)

{

reqpnum=(*pos).reqpagenum;

if(reqpnum>int(Get_Mempagenum())) //判断请求的内存页面数目是否大于剩余的

{

cout<<"没有足够的内存!"<

cout<

}

else

{

(*pos).state=true;

pagetable temp = new pgtabitem[reqpnum]; //新建临时页表项数组

if(temp==NULL)

{

cout<<"内存分配失败!"<

exit(0);

}

(*pos).pgtabadr=temp;

for(i=0;i

{

temp[i].pagenum=i; //页表的页号

int randnum=random.Random(pagenum)+1;//随机产生一个块号

while(mempage[randnum]==1)

randnum=random.Random(pagenum)+1;

temp[i].blocknum=randnum;//页表的块号

mempage[randnum]=1;

}

}

}

}

/*手动创建进程,并分配内存*/

void Dist_Mem(void)

{

int i;

reqtabitem preq; //新创建进程记录

int pid; //进程号

int reqpnum; //请求页面数

bool flag=false;

do{

cout<<"请输入进程号:";

flag=false;

cin>>pid;

for(list::iterator

pos=reqtable.begin();pos!=reqtable.end();pos++)

{

if((*pos).pid==pid)

{

flag=true;

cout<<"该进程号已经存在,请重新输入"<

cout<

break;

}

}

}while(flag==true); //循环直到输入的Pid满足条件

preq.pid=pid;

cout<<"请输入需要的页面数:";

cin>>reqpnum;

preq.reqpagenum=reqpnum;

preq.state=false;

preq.pgtabadr=NULL;

reqpnum=preq.reqpagenum;

if(reqpnum>Get_Mempagenum())

{

cout<<"没有足够的内存,进程创建失败!"<

cout<

}

else

{

preq.state=true;

pagetable temp = new pgtabitem[reqpnum];

if(temp==NULL)

{

cout<<"内存分配失败!"<

exit(0);

}

preq.pgtabadr=temp;

for(i=0;i

{

temp[i].pagenum=i; //页表的页号

int randnum=random.Random(pagenum)+1;//随机产生一个块号

while(mempage[randnum]==1)

randnum=random.Random(pagenum)+1;

temp[i].blocknum=randnum;//页表的块号

mempage[randnum]=1;

}

}

reqtable.push_back(preq); //将该进程的记录加入请求表

}

/*程序结束时,释放申请的动态内存*/

void Destroy(void)

{

list::iterator pos=reqtable.begin();

for(pos=reqtable.begin();pos!=reqtable.end();pos++)

{

if((*pos).state==true)

delete [](*pos).pgtabadr;

}

reqtable.clear();

}

/* 打印出进程请求表*/

void PrintReqtable(void)

{

cout<

cout<<"|--------------------------------------------------------------------|"<

cout<<"| 进程请求表|"<

cout<<"|--------------------------------------------------------------------|"<

cout<<"|"<

<

<

<

<

cout<<"|---------------------------------------------------------------------|"<

list::iterator pos=reqtable.begin();

for(pos=reqtable.begin();pos!=reqtable.end();pos++)

{

cout<<"|"<

<

<

<

if((*pos).state)

cout<

else

cout<

if((*pos).pid!=reqtable.back().pid)

cout<<"|--------------------------------------------------------------------|"<

else

cout<<"|--------------------------------------------------------------------|"<

}

}

/*打印页表*/

void PrintPageTable(void)

{

unsigned pid;

int i;

bool flag=false;

cout<<"请输入进程号:";

cin>>pid;

list::iterator pos=reqtable.begin();

for(pos=reqtable.begin();pos!=reqtable.end();pos++)

{

if((*pos).pid==pid&&(*pos).state==true)

{

flag=true;

cout<<"|---------------------------|"<

cout<<"| 此进程的页表|"<

cout<<"|---------------------------|"<

cout<<"|"<

<

cout<<"|---------------------------|"<

int reqpagenum=(*pos).reqpagenum;

for(i=0;i

{

cout<<"|"<

<

if(i!=reqpagenum-1)

cout<<"|---------------------------|"<

else

cout<<"|---------------------------|"<

}

}

}

if(flag==false)

cout<<"系统中不存在该进程或者该进程还没有被分配内存!\n";

cout<

}

void PrintMem(void)

{

cout<<"内存总块数为"<

cout<<"现在还有"<

cout<

}

void PrintBlockSize(void)

{

cout<<"物理块大小为:"<

cout<

}

/*结束指定进程*/

void Kill(void)

{

bool flag;

int i;

reqtabitem temp;

list::iterator pos=reqtable.begin();

int pid;

do{

cout<<"请输入进程号:";

flag=false;

cin>>pid;

for(pos=reqtable.begin();pos!=reqtable.end();pos++)

{

if((*pos).pid==pid)

{

flag=true;

temp=*pos;

break;

}

}

if(flag==false)

cout<<"系统中不存在该进程!"<

cout<

}while(flag==false);

for(i=0;i

mempage[temp.pgtabadr[i].blocknum]=0;

reqtable.remove(temp);

//重新为没有分配到内存的进程分配内存

for(pos=reqtable.begin();pos!=reqtable.end();pos++)

{

if((*pos).state==false)

{

int reqpnum;

reqpnum=(*pos).reqpagenum;

if(reqpnum<=Get_Mempagenum())

{

(*pos).state=true;

pagetable temp = new pgtabitem[reqpnum];

if(temp==NULL)

{

cout<<"内存分配失败!"<

cout<

exit(0);

}

(*pos).pgtabadr=temp;

for(i=0;i

{

temp[i].pagenum=i; //页表的页号

int randnum=random.Random(pagenum)+1;//随机产生一个块号

while(mempage[randnum]==1)

randnum=random.Random(pagenum)+1;

temp[i].blocknum=randnum;//页表的块号

mempage[randnum]=1;

}

}

}

}

}

/*初始化系统*/

void InitSys(void)

{

cout.setf(ios::left);//左对齐

Init_Mempage();

Init_Reqtable();

Init_DistMem();

}

/*输出主菜单*/

void MainMenu(void)

{

cout<<"页式存储管理的分配与回收"<

cout<<"1.手动创建进程"<

cout<<"2.显示进程页表"<

cout<<"3.显示请求表"<

cout<<"4.撤销进程"<

cout<<"5.显示内存使用情况"<

cout<<"6.显示物理块大小"<

cout<<"7.退出系统"<

cout<<"请输入您的选择(0--7):";

}

/*选择函数*/

void MainChoice()

{

int choice;

do{

MainMenu();

cin>>choice;

switch(choice)

{

case 1:

Dist_Mem();

break;

case 2:

PrintPageTable();

break;

case 3:

PrintReqtable();

break;

case 4:

Kill();

break;

case 5:

PrintMem();

break;

case 6:

PrintBlockSize();

break;

case 7:

break;

default :cout<<"输入有误,请重新输入.\n";

cout<

break;

}

}while(choice!=7);

}

int main()

{

InitSys();//初始化系统

MainChoice();//输出系统菜单

Destroy();//释放申请的动态内存

return 0;

}

6总结

这次课程设计比较成功,程序运行没有出什么大错误,只是一些需要注意的细节方面的错误,程序的编写还算比较简,我做的是页式存储管理的分配与回收的设计是一个不难的程序,编写的时候没有出现不会的地方,只是细节方面有一些麻烦。

在程序测试的时候出现的错误都是最基础的那种,所以以后要仔细一点认真的进行程序的编写争取不要再有初级的错误,在开始的逻辑设计时觉得比较难,不知道先从哪里开始,花了很多时间进行逻辑程序设计,以后的模块和程序的编写比较简单没有什么大问题。

这次自己的收获还是不小,首先使我提高了分析问题,并根据需求转化成相应的程序结构的能力;其次也丰富了自己编写程序,调试程序的经验,这使得我编程时可能出现的错误的认识,并如何去避免产生了新的认识。在编写程序的过程中翻阅了大量相关书籍,保证在页式管理基本原理透彻了解情况下进行设计,事半功倍,让我认识到磨刀不误砍柴工的道理

总的来说这次试验比较成功,加深我对页式管理的理解,同时也提高了自己的编程的能力。编程是个长久的过程,平时要多去动手实践,去提高自己分析问题、发现问题、解决问题的能力。在以后做事的时候要注重细节,减少不必要的麻烦。

本科生课程设计成绩评定表

及格(60-69分)、60分以下为不及格

指导教师签名:

20 年月日

主存空间的分配与回收—首次适应法

主存空间的分配与回收— 首次适应法 This manuscript was revised by the office on December 10, 2020.

南通大学操作系统实验课 实验报告 学生姓名 所在院系 专业 学号 指导教师 南通大学 2014年 5 月 16 日主存空间的分配与回收 ——首次适应法 一、实验目的 主存是中央处理机能直接存取指令和数据的存储器,能否合理而有效地使用它,在很大程度上将影响整个计算机系统的性能。 本实验主要熟悉主存的管理方法以及相应的分配与回收算法。所谓分配,就是解决多道程序或多进程如何共享主存空间的问题,以便各个进程能获得所希望的主存空间,正确运行。所谓回收,就是当进程运行完成时,将其所占用的主存空间归还给系统。 二、实验要求 采用空闲区链法管理空闲区,并增加已分配区表。分配算法采用首次适应法。 三、设计思路: (1)采用空闲区链法管理空闲区,并增加已分配区表。分配算法采用首次适应法(内存空闲区的地址按照从小到大的自然顺序排列),实现内存的分配与回收。 (2)设计一个进程申请序列以及进程完成后的释放顺序,实现主存的分配与回收。

(3)进行分配时应该考虑这样3种情况:进程申请的空间小于、等于或大于系统空闲区的大小。回收时应该考虑这样4种情况:释放区上邻、下邻、上下都邻和都不邻接空闲区。 (4)每次的分配与回收都要求把记录内存使用情况的各种数据结构的变化情况以及各进程的申请、释放情况显示出来。 四、主要思想 (1)输入主存空间的最大长度n创建最大长度总和为n的若干空闲区的主存空闲区链; (2)输入待存作业的长度x,从链头开始找第一个合适作业的空闲区:分区长度小于x时,指针后移,继续寻找;分区长度等于x时,分配空间, 修改作业分区;分区长度大于x时,分配空间,修改分区数据。 五、流程图 1.空闲区链的首次适应算法分配流程图 2.空闲区链的首次适应算法回收流程图 六、调试结果 1.内存的分配 2.内存的回收 3.内存清空 七、总结与感悟 说实话我操作系统学得不是很好,一开始看到题目觉得自己要完成这个实验有些难度。好在老师提醒书上有另一道类似题目的程序代码,另外书上也有首次适应法的流程图,可以给我们一些提示。之后我也参考了网上的相关资料,看看别人是如何实现的,他们都是怎么样的思路和方法,与我一开始的想法相比,比我精妙在哪里。最后自己调试时,遇到了许许多多问题和错误,请教了学得比较好的同学、经过不断的修改和完善之后,终于做完实验。 这次的实验使我了解到,平时对知识的积累相当重要,同时也要注重课上老师的讲解,老师在课上的延伸是课本上所没有的,这些知识对于我们对程序的编写有很大的作用,同时,编程也要求我们有足够的耐心,细细推敲。越着急可能就越无法得到我们想要的结果,遇到不会的问题要多多请教,知识是在实践与向别人请教的过程中积累的,所以问是至关重要的,只要肯下功夫很多东西都是可以完成的。操作系统这门课不但重要而且十分有用,我一定要下功夫把这门课学好。

设计部规章管理制度

设计部规章管理制度目录 一、设计部工作流程 二、设计部部门职能 三、设计部人员岗位职责 四、设计部日常管理细则 五、设计部人员提成明细

一、设计部工作流程

二、设计部部门职能 1、接待公司所提供的客户资源; 2、承揽客户专业咨询业务; 3、完成相关设计任务; 4、协调与市场部、工程部等相关部门对接工作; 5、对装修设计方案负责任。 6、熟知传统装修与产品整装的优劣对比。 三、设计部人员岗位职责 (一)设计主管1名,岗位职责要求: 1.全面组织本部门工作(计划,实施,督导,评估,考核)。 2.在部门范围内贯彻公司有关规定,落实工作任务到本部门员工。 3.对部门员工的工作绩效进行评估,考核及客户成单率数据统计分析。(每季度) 4.对部门人员的培训,总结设计经验,提升设计品质和工作指导。 5.定期向直属上级汇报本部门工作。 6.协调部门人员之间的工作。 7.审核设计方案及图纸和预算。 6.督促设计师跟踪单元进程,以及施工现场技术交底问题。 7.定期提交部门工作计划、目标、建议、设备配置与更新建议。 10.工作时间禁止上网娱乐、游戏以及利用公司资源炒作私单。

(二)设计师4名,岗位职责要求: 1.接洽来访客户。 2.现场测量待装修房屋。 3.依据平面图、甲方提供的技术资料、要求及意见,设计平面规划图、效果图、施工图,并制定相关预算。 4.负责公司技术资料、文件和客户信息的保密以及单元文件汇编。 5.主持施工现场技术交底。 6.跟踪施工过程,解决施工中相关设计问题。(两天一次回访跟踪) 7.主持施工中的设计变更。 8.维护客户关系。(每月回访) 9.定期提设计师工作计划、目标、建议、设备配置与更新建议。 10.工作时间禁止上网娱乐、游戏以及利用公司资源炒作私单。 (三)设计师助理2名,岗位职责要求: 1.协助设计师洽谈以及现场尺寸测量。 2.协助设计师进行施工图等相关资料的绘制。 3.负责公司技术资料、文件和客户信息的保密。 4.立足本岗位工作,提出合理化建议。

javaEE课程设计个人财务管理系统

软件学院 课程设计报告书 课程名称JavaEE 课程设计______________________ 设计题目个人财务系统____________________ 专业班级软件工程 _______________________ 学号xxxxxxxxx07 __________________________ 姓名XXXXX_______________________________ 指导教师姜彦吉 ________________________

2011年12 月

4.1.4系统构造关系 图一2 (jsp页面构造)

4.2 Jsp 页面设计 421登录界面 图一4 (登录界面) 代码如下: vform action= "servlet/LoginServlet" method= "post" >

欢迎登陆个人财务统计系统!v/center> 用户名称:

图一5 (登录成功查询界面) 代码如下: <% String username=(String)session.getAttribute (”name"); if (username!= null ){%>

欢迎登录:<%=username %>
<%} %>
用 户 密 码: v/ce nter> v/form> 4.2.2登录成功界面 method= "post" > 收入数额:
name='costmoney" value= "" >
name='record" value= "" >
欧in 登录i it 4勾人苫勺初- 立出懿葩, 耳:力口祐汪.

设计部管理细则

前言:对于一个部门或者企业来说,最缺乏的不是完善的制度,而是执行的力度!! 设计部管理细则 一、岗位设定及岗位职责 1、设计总监岗位职责: ⑴、加强作品的视觉冲击力及创意能力的专业提升,使设计项目(作品)更富有 创意性和独特的视觉表现; ⑵、负责设计部总体工作安排,含设计任务分配(下发设计施工单,设计进度及 质量把控)。做好部门和个人/月/季/年度工作计划,根据制作周期,合理分配, 安排每一项设计工作,加强部门岗位分工,使各设计师能独立风格; ⑶、重要项目客户接洽(专业范围以内);负责参与公司重要客户项目的把关并 参与主创设计,对重点设计项目,组织项目设计师(小组),做实地调查、认真工作,收集、分析有关资料,在设计项目实施前给出正确的创意主题及风格定位;⑷、加强公司内部的沟通,高质量的完成各种提案所需的设计画面,积极推进、 组织各项设计工作的进程,并上传下达完成公司各项工作; ⑸、了解客户对每项设计的详细要求,及时组织业务项目沟通会,达成项目设计师(小组)对该项目内容要求的充分理解; ⑹、贴近市场,定期组织设计人员针对涉及项目类别进行市场、同行业的了解学习和分析活动,广泛培养各设计人员的综合素质; ⑺、对设计师的设计作品作出修改指导意见,负责对进行中的各项设计业务严格 把关,保质保量完成各项设计工作; ⑻、对设计人员的工作态度,作品质量进行评定,上报奖惩意见; ⑼、对招聘人员进行考核,建设好设计团队,并拟定人才梯队培养计划,定期召 开、主持设计部人员进行业务研讨会和学习会,并及时解决设计与印刷中的技术、工作进程中的难题; ⑽、组织设计部门参与国内外专业赛事,致力提升设计部门总体设计水平,每年度负责筹备组织参赛作品参加国内外各项设计大赛,并力争获奖; 2、设计主管岗位职责 ⑴、负责设计部设备及耗材的采购、管理与日常维护,在进行设备及耗材采购时,要坚持货比三家;

操作系统实验四报告-主存空间分配和回收(含源码)分析

计算机学院计算机科学与技术专业班学号 姓名教师评定_________________ 实验题目主存空间的分配和回收 一、实验目的 熟悉主存的分配与回收。理解在不同的存储管理方式下,如何实现主存空间的分配与回收。掌握动态分区分配方式中的数据结构和分配算法及动态分区存储管理方式及其实现过程。 二、实验内容和要求 主存的分配和回收的实现是与主存储器的管理方式有关的。所谓分配,就是解决多道作业或多进程如何共享主存空间的问题。所谓回收,就是当作业运行完成时将作业或进程所占的主存空间归还给系统。 可变分区管理是指在处理作业过程中建立分区,使分区大小正好适合作业的需求,并且分区个数是可以调整的。当要装入一个作业时,根据作业需要的主存量查看是否有足够的空闲空间,若有,则按需要量分割一个分区分配给该作业;若无,则作业不能装入,作业等待。随着作业的装入、完成,主存空间被分成许多大大小小的分区,有的分区被作业占用,而有的分区是空闲的。 实验要求使用可变分区存储管理方式,分区分配中所用的数据结构采用空闲分区表和空闲分区链来进行,分区分配中所用的算法采用首次适应算法、最佳适应算法、最差适应算法三种算法来实现主存的分配与回收。同时,要求设计一个实用友好的用户界面,并显示分配与回收的过程。同时要求设计一个实用友好的用户界面,并显示分配与回收的过程。 三、实验主要仪器设备和材料 实验环境 硬件环境:IBM-PC或兼容机 软件环境:VC++ 6.0 四、实验原理及设计分析 某系统采用可变分区存储管理,在系统运行当然开始,假设初始状态下,可用的内存空间为640KB,存储器区被分为操作系统分区(40KB)和可给用户的空间区(600KB)。 (作业1 申请130KB、作业2 申请60KB、作业3 申请100KB 、作业2 释放 60KB 、作业4 申请 200KB、作业3释放100KB、作业1 释放130KB 、作业5申请140KB 、作业6申请60KB 、作业7申请50KB) 当作业1进入内存后,分给作业1(130KB),随着作业1、2、3的进入,分别分配60KB、100KB,经过一段时间的运行后,作业2运行完毕,释放所占内存。此时,作业4进入系统,要求分配200KB内存。作业3、1运行完毕,释放所占内存。此时又有作业5申请140KB,作业6申请60KB,作业7申请50KB。为它们进行主存分配和回收。 1、采用可变分区存储管理,使用空闲分区链实现主存分配和回收。

个人财务管理系统设计

摘 要 本次课程设计在Windows XP 平台上,以Visual Studio 2008作为界面开发工具,SQL Server 2005 作为数据库工具,分析设计了“个人财务管理系统”。系统软件和对数据库的操作和管理都可在计算机上完成。 本系统功能简单切齐全,很适合对个人财务管理进行明确管理的用户,可以完成收入支出金钱及物品的记录与查询操纵。此外,此系统操作简单,用户无需记录复杂的命令,打开主机面就可以很容易看出系统的功能,在者,本软件无需很高的硬件配置,一般的配置均可运行,占用系统资源少。 本报告说明了该系统额特点与业务需求,详细说明了系统的业务流程和系统开发特点,重点介绍了各模块的功能及相关功能的具体实现。功能完善、用户界面友好、 财务管理、

The curriculum design xp the platform, windows starts in visual studio 2008 as the interface, sql server 2005 tools for development as the database tools,analyze the design of "personal finance management systems". The system software and database operation and management can be done in computer. The system features simple cut, is quite suited for the individual financial management of the users clearly, we can finish the income and expenditure of money and the records and for control. In addition, the system is simple, users need have no record of the host, you can easily see that the system functions, the software doesn't require a high hardware configuration and general configuration can be run, the land system resources. The present report shows the system level with the business needs, detailed system of the business process and system development, the module introduces the function of the functions and related to the realization of the user interface. Efficient and friendly, stable, but perform everyday personal financial information management and maintenance. Key words

设计部日常管理制度

设计部日常管理制度 为加强设计部工作效率和工作作风,特制定如下日常管理制度。 精品word 文档可以编辑(本页是封面) 【最新资料 Word 版 可自由编辑!!】

一:日常设计工作 (1)客户接待前与前台接待做好来访客户服务卡的填写交接 (2)客户接待登记记录要求完整 (3)设计师平面方案记录单 (4)方案设计申请单 (5)施工图绘制申请单 (6)效果图绘制申请单 (7)设计师与工程监理交接表 如未填写相关表格,接受单位应拒绝接单。未填写相关表格私自作图设计的,处以50元----100元处罚、不计提成处理。 二:出入接待 设计师外出不允许携带除开工工地需要的公司内部资料外出,一经发现处以100元----500元处罚; 设计师原则上不允许在设计部接待材料商,因业务需要在公司接待材料商的,接待时间不得超过20分钟。 严禁设计师将公司内部资料私自交给不是本部门的人员和外部人员,一经发现处以200元以上处罚,情节严重者做开除处理。 三:信息管理 (1)设计部设计师接待客户后15分钟内应到主管处登记接待客户信息,故意遗漏或不填写的,该客户信息归属做公共单处理,签单后不予以提成发放。(2)严禁设计师在工作时间内私自外带客户信息,私自炒单,做私单。一经发现罚扣工资,按情节严重性或开除处理。 (3)严禁设计师将公司客户信息泄露给同行和外部人员做单,一经发现罚没工

资及开除处理。 (4)若发现设计师利用公司客户信息赢取私利的,一经发现罚扣工资和提成或 开除处理。 (5)严禁设计师散播对公司不良的负面信息和损害公司形象和利益的,一经发 现做开除处理。 此工作条列旨在保护员工利益和公司形象,为大家营造一个良好的办公风气, 希望设计部遵守公司相关制度和做好岗位工作,对损害集体利益的害群之马绝 不手软。 (6) 装饰设计有限公司 2014年12月12日 本页为著作的封面,下载以后可以删除本页!

动态内存分配和回收

实验五可变分区存储管理方式的内存分配和回收 一.实验目的 通过编写和调试存储管理的模拟程序以加深对存储管理方案的理解,熟悉可变分区存储管理的内存分配和回收。 二.实验属性 设计 三.实验内容 1.确定内存空间分配表; 2.采用最优适应算法完成内存空间的分配和回收; 3.编写主函数对所做工作进行测试。 四.实验背景材料 实现可变分区的分配和回收,主要考虑的问题有三个:第一,设计记录内存使用情况的数据表格,用来记录空闲区和作业占用的区域;第二,在设计的数据表格基础上设计内存分配算法;第三,在设计的数据表格基础上设计内存回收算法。 首先,考虑第一个问题,设计记录内存使用情况的数据表格,用来记录空间区和作业占用的区域。 由于可变分区的大小是由作业需求量决定的,故分区的长度是预先不固定的,且分区的个数也随内存分配和回收变动。总之,所有分区情况随时可能发生变化,数据表格的设计必须和这个特点相适应。由于分区长度不同,因此设计的表格应该包括分区在内存中的起始地址和长度。由于分配时空闲区有时会变成两个分区:空闲区和已分分区,回收内存分区时,可能会合并空闲分区,这样如果整个内存采用一张表格记录己分分区和空闲区,就会使表格操作繁琐。分配内存时查找空闲区进行分配,然后填写己分配区表,主要操作在空闲区;某个作业执行完后,将该分区变成空闲区,并将其与相邻的空闲区合并,主要操作也在空闲区。由此可见,内存的分配和回收主要是对空闲区的操作。这样为了便于对内存空间的分配和回收,就建立两张分区表记录内存使用情况,一张表格记录作业占用分区的“己分分区表”;一张是记录空闲区的“空闲区表”。这两张表的实现方法一般有两种:一种是链表形式,一种是顺序表形式。在实验中,采用顺序表形式,用数组模拟。由于顺序表的长度必须提前固定,所以无论是“已分分区表”还是“空闲区表”都必须事先确定长度。它们的长度必须是系统可能的最大项数。 “已分分区表”的结构定义 #define n 10 //假定系统允许的最大作业数量为n struct { float address; //已分分区起始地址 float length; //已分分区长度、单位为字节 int flag; //已分分区表登记栏标志,“0”表示空栏目,实验中只支持一个字符的作业名 }used_table[n]; //已分分区表 “空闲区表”的结构定义 #define m 10 //假定系统允许的空闲区最大为m struct

设计部管理制度

设计部管理制度 为规范公司管理制度、调动设计部工作积极性,针对设计部组织架构、设计部日常工作、设计师提成等方面,特制定设计部管理制度如下: 第一章、设计师职级考核: 一、设计任务分解: 1、量房---5%。 2、主持方案设计(设计、谈判、签合同)---50%。 3、工程施工图---15%。 4、设计效果图---10%。 5、交底与跟进---20%。 二、设计师的职级: 1、设计师助理、绘图员:为设计师提供绘图支持。 2、普通设计师:独立设计全套方案 2、主案设计师:独立完成并主持全套设计方案。 3、设计总监:主案设计师中的出色者。 三、各职级设计师的能力要求: 1、设计师助理(绘图员): (1)、能根据方案草图独立绘制完整的工程图(效果图、施工图),符合制图规范. (2)、有较强的协作能力。

(3)、有较高工作效率。 2、普通设计师: (1)、能独立完成设计方案。 (2)、能独立绘制工程图(效果图、施工图)、预算、量房。 (3)、有较强的协作能力,能把图纸落实工地。 (4)、签单成功率30%以上。 3、全案设计师: (1)、能够准确把握客户要求,做出符合客户要求的设计方案。 (2)、具有主持完成整套案的设计能力。能独立完成方案的构思、设计、预算、制图(效果图、施工图)。 (3)、能独立谈判,签订合同。 (4)有较强的协作能力,能把图纸落实工地并能准确的进行现场结合。 (5)有较高工作效率,签单成功率50%以上。 4、设计总监: (1)、具有较大型设计方案的组织能力。 (2)、能够充分理解客户意图,准确把握客户要求,做出符合客户要求的设计。 (3)、有明确、清晰的设计理念,设计具备完整性,创意性,独特性;功能完备,性能到位。 (4)有较强的协作能力和人员安排能力,能把图纸准确落实工地并能准确的进行现场结合。 (5)、有较高工作效率,签单成功率达到65%以上。 四、各职级设计师的考核指标:

设计部部门规章制度

设计部部门规章制度(1)1 世宜居装饰 设计部规章制度 2018 年5 月 为规范公司管理,提高工作效率,结合部门实际操作,制定部门规章制度,特制定本设计部门规范制定,希部门人员遵守。 一、考勤制度 1、工作时间早8:30 上班,18:00 下班,每周二休息,上班不得迟到早退。如工作需要服从安排调整休息时间; 2、外出人员外出工地必须填写《外出登记表》,外出时间,计划回公司时间,实际返回时间,外出人员签字,由部门负责人签字确认。如没有填写,一律按无故旷工处理,外出表随时不定期抽查。经检查出跟填写内容有出入的罚款50 元,第二次100 元。 3、请假或调休,必须做好交接工作,避免客户投诉、工期延误等情况发生。 4、请假人员必须填写《请假单》,调休人员必须填写《调休单》交由部门负责人同意签字。 二、办公制度 1、每天上班佩戴好工牌,内部查到一次未戴者到部门助理处为部门捐款 5

元,第二次10 元以此累积,作为部门经费;若被行政部发现,按公司规定上交 款项后部门内部双倍上交。 2、上班时间禁止玩游戏、看视频等与工作无关的事情,查到严重警告并为部门捐款100 元作为部门经费,第三次视为自动离职;不随便离岗、串岗,不大声喧哗,内部查到一次为部门捐款5 元,第二次捐10 元,以此累积,若人事部查到按公司规定办,并在部门内部双倍。 3、每周一做好周计划,每天必须如实填写工作日志,电子档,发给自己直接领导,每周例会进行汇总。 4、员工非部门领导特别要求的,工作资料不得外带,当天制作的文件必须命名、备份,放在统一的个人姓名的文件夹内并标明日期及项目名称,以便查找; 5、不得利用公司资源做与公司无关的工作(如利用上班时间做私单、打印私人文件图纸等),查到严重警告并为部门捐款100 元作为部门经费,第二次视为自动离职; 6、多人参与的设计项目,相互间必须做好沟通、交接并由专人负责,以保证最终的方案结果与客户沟通; 7、个人未完成的工作需移交他人的,交接双方须充分沟通,承接方须负起责任,做到信息确认无误; 8、遵守公司保密协议,严禁将公司网络及实体资源挪作他用;(若违反追究 其法律责任);

主存空间的分配与回收实验报告

主存空间的分配与回收实验报告

实验报告 课程名称:操作系统 实验名称:主存空间的分配与回收学号: 110310014 学生姓名:于钊 班级:信管1101班 指导教师:吴联世 实验日期: 2013 年12月5日

3、采用最先适应算法(顺序分配算法)分配主存空间。 按照作业的需要量,查空闲区说明表,顺序查看登记栏,找到第一个能满足要求的空闲区。当空闲区大于需要量时,一部分用来装入作业,另一部分仍为空闲区登记在空闲区说明表中。 由于本实验是模拟主存的分配,所以把主存区分配给作业后并不实际启动装入程序装入作业,而用输出“分配情况”来代替。 4、当一个作业执行完成撤离时,作业所占的分区应该归还给系统,归还的分区如果与其它空闲区相邻,则应合成一个较大的空闲区,登记在空闲区说明表中。例如,在上述中列举的情况下,如果作业2撤离,归还所占主存区域时,应与上、下相邻的空闲区一起合成一个大的空闲区登记在空闲区说明表中。 2)程序结构(流程图) 首次适应分配模拟算法

主存回收算法 3)实现步骤 实现动态分区的分配与回收,主要考虑三个问题:第一,设计记录主存使用情况的数据表格,用来记录空闲区和作业占用的区域;第二,在设计的数据表格基础上设计主存分配算法;第三,在设计的数据表格基础上设计主存回收算法。 1.设计记录主存使用情况的数据表格 由于动态分区的大小是由作业需求量决定的,故分区的长度是预先不固定的,且分区的个数也随主存分配和回收变动。总之,所有分区情况随时可能发生变化,数据表格的设计必须和这个特点相适应。由于分区长度不同,因此设计的表格应该包括分区在主存中的起始地址和长度。由于分配时,空闲区有时会变成两个分区:空闲区和已分分区,回收主存分区时,可能会合并空闲区,这样如果整个主存采用一张表格记录已分分区和空闲区,就会使表格操作繁琐。主存分配时查找空闲区进行分配,然后填写已分配区表,主要操作在空闲区;某个作业执行完后,将该分区贬词空闲区,并将其与相邻的空闲区合并,主要操作也在空闲区。由此可见,主存的分配与回收主要时对空闲区的操作。这样为了便于对主存空间的分配与回收,就建立两张分区表记录主存的使用情况:“已分配区表”记录作业占用分区,“空闲区表”记录空闲区。 这两张表的实现方法一般由两种:链表形式、顺序表形式。在本实验中,采用顺序表形式,用数组模拟。由于顺序表的长度必须提前固定,所以无论是“已分配区表”还是“空闲区表”都必须事先确定长度。它们的长度必须是系统可能的最大项数,系统运行过程中才不会出错,因此在多数情况下,无论是“已分配表区”还是“空闲区表”都是空闲栏目。已分配区表中除了分区起始地址、长度

操作系统之内存分配与回收

操作系统实验 内存的分配与回收 实验报告 一、实验题目:内存的分配与回收 二、实验内容:利用可变分区的首次适应算法,模拟内存的分配与回收。 三、实验目的:掌握可变分区首次适应算法的原理以及其编程实现。 四、实验过程: 1、基本思想:可变分区分配是根据进程的实际需求,动态地为之分配内存空间。首次适应算法要求空闲空间链以地址递增的次序链接。进行内存分配时,从链表头部开始依次检索,找到第一个不小于请求空间大小的空闲空间进行分配。分配时需考虑碎片问题,若分配会导致碎片产生则将整块分区分配。内存的回收需要考虑四种情况:⑴回收分区前后两个分区都空闲,则需要和前后两个分区合并;(2)回收分区只有前一分区空闲,则与前一分区合并;(3)回收分区只有后一分区空闲,则和后一分区合并;(4)回收分区独立,不考虑合并 。 2、主要数据结构: struct FreeArea{ 链结点包含的数据:分区号、大小、起址、标记 i nt ID; i nt size;

l ong address; i nt sign; }; struct Node { 双链表结点结构体:数据区、前向指针、后继指针 F reeArea data; s truct Node *prior; s truct Node *next; }*DLinkList; 3、输入、输出: 输入: I.内存分配时由键盘输入分区ID和大小; II.内存回收时由键盘输入需要回收的分区ID; 输出:输出内存的分配情况(按照地址从低到高) 4、程序流程图:

5、实验结果截屏:

6、源程序代码: #include using namespace std; #define Free 0 //空闲状态 #define Busy 1 //已用状态 #define PBusy 2 //碎片已用状态 #define FINISH 1 //完成 #define FINISH2 1 //完成 #define ERROR 0 //出错 #define memory 512 //最大内存空间为(单位:KB)#define min 10 //碎片最小值(单位:KB) typedef struct FreeArea//空闲链数据 { i nt ID; i nt size; l ong address; i nt sign; }; typedef struct Node//空闲连结构 { F reeArea data;

磁盘存储器管理习题分析

1、系统中磁头停留在磁道号为100的磁道上,这时先后有4个进程提出了磁盘访问请求,要访问磁盘的磁道号按申请到达的先后顺序依次为:55、120、39、110。移动臂的运动方向:沿磁道号递减的方向移动。若分别采用FCFS磁盘调度算法、SSTF算法、SCAN算法时,所需寻道长度分别为多少? FCFS算法:100-55+ 120-55+ 120-39+ 110-39 = 262 SSTF算法:110-100 +120-110 + 120-55 + 55-39 = 101 SCAN算法: 100-55+ 55-39 +110-39 + 120-110 = 142 2、假设磁盘有200个磁道,磁盘请求队列中是一些随机请求,它们照到达的次序分别处于55、58、39、18、90、160、150、38、184号磁道上,当前磁头在100号磁道上,并向磁道号增加的方向上移动。请给出按FCFS、SSTF、SCAN及CSCAN算法进行磁盘调度时满足请求的次序,并计算它们的平

1、在FAT16文件系统中,且每个盘块的大小是512字节, 1)如果每个簇可以有4个盘块,可以管理的最大分区空间是多少? 2)如果每个簇可以有64个盘块,可以管理的最大分区空间又是多少? 答: 1)216 * 4 * 512 = 128M 2)216 * 64 * 512 = 2G 2、某操作系统的磁盘文件空间共有500块,若用字长为32位的位示图管理盘块空间,试问: 1)位示图需要多少个字? 2)如果b(盘块号), i, j从1开始计数,第i字第j位对应的块号是多少? 3)如果b(盘块号), i, j 从0开始计数,第i字第j位对应的块号是多少? 答: 1)[500/32] =16 2) b = 32* (i-1) +j 3)b= 32*i+j 3、有3200个磁盘块可用来存储信息,如果用字长为16位的字来构造位示图,若位示图部分内容如图所示。 1)位示图共需多少个字? 2)若某文件长度为3200B,每个盘块为512个字节,采用链接结构且盘块从1开始计数,系统将为 其分配哪些磁盘块? 3)试具体说明分配过程。 4)若要释放磁盘的第300块,应如何处理? 1)3200/16=200 2)3200/512 =7 ; 20、24、25、26、27、37和38 3)顺序检索位示图,从中找到第一个值为0的二进制位,得到行号i=2,列号j=4 ;计算出找到的第一个盘块是 B1 = (2-1)*16+4=20 第二个值为0的二进制位,得到行号i=2,列号j=8. ;计算出找到的第一个盘块是 B2=(2-1)*16+8=24 …………. 修改位示图,令Map[2,4]=Map[2,8] = …..=1,并将对应块20、24……. 分配出去。 4)计算出磁盘第300块所对应的二进制位的行号i和列号j : i = (300-1)/16 + 1 = 19 j = (300-1)MOD16 + 1= 12 修改位示图,令Map[19,12]=0,表示对应块为空闲块。

创意设计部管理制度

創意設計部管理制度 本制度的制定目的是為了提高部門工作效率,規範工作流程,加強圖檔、檔、資料管理等特制定以下設計部內部管理制度,設計部員工除了日常應遵守公司的各項規章制度,努力、勤奮、積極主動的工作,培養良好的工作習慣之外,根據部門工作的特殊性,還應嚴格執行創意設計部內部管理制度,所有規定如與公司制度抵觸,以公司制度為准。 一、創意設計部工作內容及範圍 組織專案設計—把握設計方向—提升設計品質—控制設計階段。 1、根據公司的經營戰略目標,結合市場的實際情況,制訂設計部的發展規劃和目標。 2、對所屬行業進行調查與回饋,並進行管理,安排、監督和指導專案業務、設計、製作 等工作的開展。 3、負責設計業務合同在簽訂後的和執行過程的跟蹤;對其合同進行審核、保存,建立規 範的客戶資料檔案並有效地加以運用、管理好。 4、負責做好專案設計製作的調度管理工作,合理安排專案設計作業時間;及時指導、處 理、協調和解決設計作品出現的技術問題,確保作品製作的正常進行。 5、針對專案需求,積極有效地做好廣告創意與製作的工作。 6、做好純設計工作,對已簽合同項目,應迅速安排設計與製作。 二、創意設計部日常管理細則 1、按時考勤,按時填工作日志。 2、上班及會議遲到、早退者,按公司考勤制度處理。 3、文件管理 (1)統一客戶檔資料,備份於同一資料夾下;開放文件放置共用資料夾,非開放保密檔放置個人許可權資料夾備份。 (2)所屬客戶資料經整理後建立固定的單獨資料夾備份,項目完成,由設計

師整理,按需要備份於伺服器或刻盤; (3)當設計專案完成後,將最後轉曲的CDR檔及相關的原圖片及修改圖片備份到伺服器或刻盤,所備份的產品圖片必須是修整好的最後版本,其餘有價值的文件可留本機,但需統一放置; (4)長期客戶的備份檔案應按不同年份存放,存首資料夾注明年份; (5)當項目完成後,必須用檔袋將客戶部轉交的專案資料全部交回,並在文件袋上注明項目名稱。 4、用後之圖書、色標、圖庫等部門員工應歸回原位。 5、下班或加班後關閉印表機、電腦等設備。 6、輸出稿確認,所有輸出搞確定責任人;文字部分由文字供稿人最後校稿,其他設計項 目部分由設計是校稿,並承擔相應責任。 7、輸出光碟應注明客戶及輸出專案名稱,輸出後交客戶管理中心備案。 8、當客戶提出與工作單內容不相符的設計要求時,應轉客戶管理中心處理。 9、凡拷盤出去必須接到上級主管指令後才能拷盤。 10、節約、有效使用打印紙,若列印出錯,將可利用的紙張裁切,以備再用。 11、每週五下午下班前整理好本周個人設計資料,及本周個人工作總結。 三、設計師工作職責管理制度 1、設計師負責完成公司對內、對外設計任務; 2、設計資料為公司商業秘密,未經允許,不得對外洩露; 3、設計師在工作期間不能利用工作的便利從事私人業務; 4、設計師在業餘時間應注重自身業務的學習和提高; 5、設計師應在公司和客戶要求指定的時間內完成設計任務; 6、設計師負責任保管業客戶技術資料;

主存空间的分配与回收

新建云桂铁路 操作系统实验报告 实验三:主存空间的分配与回收 一、实验题目 采用可变式分区管理,使用首次或最佳适应算法实现主存的分配与回收 二、实验内容 主存是中央处理机能直接存取指令和数据的存储器。能否合理而有效地使用主存,在很大程度上将影响到整个计算机系统的性能。本实验采用可变式分区管理,使用首次或最佳适应算法实现主存空间的分配与回收。要求采用分区说明表进行。 三、实验目的 通过本次实验,帮助学生理解在可变式分区管理方式下,如何实现主存空间的分配与回收。 提示: (1)可变式分区管理是指在处理作业过程中建立分区,使分区大小正好适合作业的需要,并且分区个数是可以调整的。当要装入一个作业时,根据作业需要的主存量,查看是否有足够的空闲空间,若有,则按需求量分割一部分给作业;若无,则作业等待。 随着作业的装入、完成,主存空间被分割成许多大大小小的分区。有的分区被作业占用,有的分区空闲。例如,某时刻主存空间占用情况如图1所示。 表1 空闲区说明表 10K 20K 45K 65K 110K 256K

所示。 其中,起始地址指出各空闲区的主存起始地址,长度指出空闲区大小。 状态栏未分配指该栏目是记录的有效空闲区,空表目指没有登记信息。 由于分区个数不定,所以空闲区说明表中应有足够的空表目项,否则造成溢出,无法登记。同样,再设一个已分配区表,记录作业或进城的主存占用情况。 (2)当有一个新作业要求装入主存时,必须查空闲区说明表,从中找出一个足够大的空闲区。有时找到的空闲区可能大于作业需求量,这时应该将空闲区一分为二。一个分给作业,另一个仍作为空闲区留在空闲区表中。为了尽量减少由于分割造成的碎片,尽可能分配低地址部分的空闲区,将较大空闲区留在高地址端,以利于大作业的装入。为此在空闲区表中,按空闲区首地址从低到高进行登记。为了便于快速查找,要不断地对表格进行紧缩,即让“空表目”项留在表的后部。其分配框图如图2所示。Array图2 首次适应算法分配框图 (3)当一个作业执行完时,作业所占用的分区应归还给系统。在归还时要考虑相邻空闲区

设计部管理制度与流程

设计部管理制度与流程 XXXXXX成立于2001年10月,我们的目标是通过敏锐、深刻的市场观察与分析能力,卓越而高效的项目管理与实施手段,优质而完善的客户服务机制,高度敬业的服务态度,成为客户树立、维护其持久品牌形象,拓展其目标市场,集聚出色市场竞争力,增强业务收入方面值得信赖的合作伙伴。 设计部做为当今公关行业中必不可少的一个团队,已经在公司有着重要的地位,做为一名设计部的平面设计师,应当担任起设计部的责任,做到工作中任劳任怨,细致细心,能充分把握客户部准确下达的工作任务,出色的完成工作计划,积极配合客户部,履行“执行是唯一准则”,了解公司总体规划。 一、创作部介绍 负责广告的创作、设计和制作。对广告策划部和情报研究室提供的有关资料和意见加以分析,依照广告计划的要求,配合消费者的心态,完成创意方案,然后会同客户部门和调研部门,制定出整套广告方案,供客户审核,并在客户审核同意后进行制作,包括拍片、配音、印刷或摄影、绘画等。 广告设计:根据广告目标进行的广告创意、构思、广告中的音乐、语言、文字、画面等经营性创作。 二、目前公司创作部职务介绍 设计师(Designer) □协助美术指导(Art Director)和客户总监完成有关视觉上表现之所有工作。□负责平面、立体、包装、POP等的设计表现和执行。 □设计上的文字、色彩、图片、图案等之选择编排。 □完稿设计上之一切详细描述和确定(与美术指导或与创意总监共同确认) □监督和指导正稿的制作。 □收集与整理相关供应商的资料 □对其相关美术用品和耗材进行管理与控制。 □协助在公关活动中使用的一切与平面相关的制作物的监控。 设计师按年资经验和表现分为三级(助理正

动态分区存储管理方式的主存分配回收

动态分区存储管理方式的主存分配回收

动态分区存储管理方式的主存分配回收 一、实验目的 深入了解动态分区存储管理方式主存分配回收的实现。 二、实验要求 编写程序完成动态分区存储管理方式的主存分配回收的实现。实验具体包括:首先确定主存空间分配表;然后采用最优适应算法完成主存空间的分配和回收;最后编写主函数对所做工作进行测试。 三、实验步骤 实现动态分区的分配和回收,主要考虑的问题有三个:第一,设计记录主存使用情况的数据表格,用来记录空闲区和作业占用的区域;第二,在设计的数据表格基础上设计主存分配算法:第三,在设计的数据表格基础上设计主存回收算法。 首先,考虑第—个问题:设计记录主存使用情况的数据表格,用来记录空闲区和作业占用的区域。 由于动态分区的大小是由作业需求量决定的,故分区的长度是预先不固定的,且分区的个数也随主存分配和回收变动。总之,所有分区情况随时可能发生变化,数据表格的设计必须和这个特点相适应。由于分区长度不同,因此设计的表格应该包括分区在主存中的起始地址和长度。

个作业占用分区的登记项,内容为该作业的作业名;空闲区表中除了分区起始地址、长度外,也要有一项“标志”,如果是空闲栏目,内容为“空”,如果为某个空闲区的登记项,内容为“未分配”。在实际系统中,这两表格的内容可能还要多,实验中仅仅使用上述必须的数据。为此,“已分配区表”和“空闲区表” 可变分区管理方式将内存除操作系统占用区域外的空间看做一个大的空闲区。当作业要求装入内存时,根据作业需要内存空间的大小查询内存中的各个空闲区,当从内存空间中找到一个大于或等于该作业大小的内存空闲区时,选择其中一个空闲区,按作业需求量划出一个分区装人该作业,作业执行完后,其所占的内存分区被收回,成为一个空闲区。如果该空闲区的相邻分区也是空闲区,则需要将相邻空闲区合并成一个空闲区。 四、实验结果 程序代码: #include #include float minsize=5; int count1=0; int count2=0;

设计部管理细则及培训

设计部管理细则及培训 一组织架构 二岗位职责 三工作流程 四工作规范 五绩效考核 为了细化设计部的工作职责,加强内部管理,提高工作的效率,更好的为广大加盟客户服务,特制定此管理手册一组织结构 二 1.工作范围: 凡本公司接受客户需求或自行内部设计制作之新产品皆属之。 2.工作内容: 公司媒体广告、橱窗和促销(礼品)的设计和制作、商场的展示布置、产品开发、资讯的收集和管理、电脑软件硬件的维护和管理等。 3.权责: 1)权利:有权对商场内部的展示、布置及宣传品的更改,以及所有电脑资讯的管理。 2)责任:凡设计和制作之产品都要维护公司对外对内的形象,要节约公司之成本。 三工作流程: 1.当业务部接受到国内外客户书面、口头、电话、传真、E-mail、等方式的样品需求信息或部门业务扩展需求时,由业务人员填写设计工作申请单(附件一)及参考资料,经业务主管依技术性、成本、材料、制作方式、市场趋势审核后交设计部,依申请单所述条件进行设计制作。 2.若非客户需求而由本公司内部高级人员之决策设计制作之产品,由提案者通知业务部,业务部依规定办理。 3.设计部接获业务部提交之设计工作申请单(附件一)及参考资料后,即时登记于设计工作记录表(附件二)并由设计部主管拟定工作计划表(附件三),设定研发项目、时程及负责人员经总经理审核后,分发相关人员依计划执行。设计部主管并依据计划表中时程进行追踪,及后续执行结果之记录,若发现该计划必须更新或未如预期进度完成时,和相应业务部门负责人员协调,并重新拟定工作计划表。

4.方案设计人员依据设计工作申请单(附件一)及参考资料之要求条件进行设计,设计时须考量公司形象、产品风格、色彩搭配、图案排列的美观性、制造成本与技术性及使用的配套性等条件。使产品之设计能符合经济与实用之原则。 5.设计、确认、发包、入库、使用 a.经设计完成之图案设计稿,须经总经理确认后,交相应需求业务部人员确认,签收稿件确认记录表(附件四)后,联系后续制作厂家(或内部制作)。 b.联系后续制作厂家时,要考核各厂家之质量、成本等各方面,询价后将结果交由部门主管及总经理确认再发包给合格厂商。 c.方案设计人员要验收制作之产品是否与设计相符合,验收后交由仓库保管,通过仓库发给各需求部门。 6.物品管理 a.消耗品管理,每月月初由相应物品管理人员统计月消耗品使用量、当月库存量等资料统计表,交由部门主任及总经理确认,管理人员不定时检查库存量,确保一定的使用保证,如有库存下降情况,应立即填写《请购单》交由部门主任及总经理签字,并交由行政管理组联系购买。 b.使用物品及工具管理,设计部门的物品及工具原则上不予外借,如有特殊紧急之情况发生。借用人需登记入物品借用登记表(附件五),根据表格登记清楚,并及时归还,如有遗失按价赔偿。 c.电脑使用管理,非设计部人员如有业务扩展需求要使用设计部电脑进行操作时,请填写好电脑使用记录表(附件六)。 d.电脑文件管理,公司所有图片按版本和壁纸壁布类别存档,以定案的文件统一存入电脑主机内,只能调用,需要修改的填写文件更改单(附件七)。设计部每个设计人员统一将定案的文件存入主机,做统一管理。 e.临时物品登记管理,凡任何进入本部门之物品,都需登记入设计部物品出入登记表(附件八)中,并每三个月清点检查一下数量,如有问题及时汇报总经理解决处理。 f.参考书籍管理,如需购买参考书籍,需填写请购单,交由主任和总经理签字确认,购入书籍统一登记如书籍登记表(附件九)中,并每月输入电脑存档管理。 7.公开化原则 a.电脑文件公开,凡公司文件无论分属电脑还是主机电脑,操作人员都要公开文件保存的位置,如果要休息,在休息前一天将近期设计制作的文件位置统一登记在近期设计工作单内(附件十)。 b.制作厂家联系公开,凡和公司有过业务联系的公司和个人都要公开,以方便部门内其他人员之联系。 c.采购价格公开化,所有任何设计人员凡在采购后都应将价格公开对部门所有人员,以方便其他同事采购时参考。四行为准则 五人员考核 1.面试要求

文本预览
相关文档 最新文档