欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    操作系统课程设计任务书与报告.docx

    • 资源ID:26980549       资源大小:15KB        全文页数:10页
    • 资源格式: DOCX        下载积分:30金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要30金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    操作系统课程设计任务书与报告.docx

    操作系统课程设计任务书与报告 广东工业大学课程设计任务书 题目名称多道批处理系统两级调度的模拟 学生学院计算机学院 专业班级 姓名 学号 一、课程设计的内容 本课程设计要求模拟实现一个的多道批处理系统的两级调度。通过具体的作业调度、进程调度、内存分配等功能的实现,加深对多道批处理系统的两级调度模型和实现过程的理解。 二、课程设计的要求与数据 1要求作业从进入系统到最后完成,要经历两级调度:作业调度和进程调度。 作业调度是高级调度,它的主要功能是根据一定的算法,从输入井中选中若干个作业,分配必要的资源,如主存、外设等,为它们建立初始状态为就绪的作业进程。进程调度是低级调度,它的主要功能是根据一定的算法将CPU 分派给就绪队列中的一个进程。 2假定某系统可供用户使用的主存空间共100KB,并有4台磁带机。主存分配采用可变分区分配方式且主存中信息不允许移动,对磁带机采用静态分配策略,作业调度分别采用先来先服务算法和最小作业优先算法,进程调度采用先来先服务和最短进程优先算法。(能增加实现更多的调度算法则可以获得加分)。 3假定“预输入”程序已经把一批作业的信息存放在输入井了,并为它们建立了相应作业表。测试数据如下: 作业到达时间估计运行时间内存需要磁带机需要 JOB1 10:00 25分钟15K 2台 JOB2 10:20 30分钟60K 1台 JOB3 10:30 10分钟50K 3台 JOB4 10:35 20分钟10K 2台 JOB5 10:40 15分钟30K 2台 4分别在不同算法控制下运行设计的程序,依次显示被选中作业、内存空闲区和磁带机的情况。比较不同算法作业的选中次序及作业平均周转时间。 5选用程序设计语言:C、C等。 三、课程设计应完成的工作 1充分理解设计的任务,完成设计的基本要求。然后根据自己的基础和能力选择不同难度的算法和实现方式,以取得更高的分数。 2. 独立完成系统的分析、设计、编码、测试工作。 3完成设计报告的撰写。 4以光盘(以班为单位刻录)方式提交已调试通过的完整的相关源程序和能够运行的执行文件;提交“课程设计报告”的书面和电子两种版本。 四、课程设计进程安排 五、应收集的资料及主要参考文献 1计算机操作系统,汤小丹等,西安电子科技大学出版社 2操作系统实验指导书,傅秀芬,广东工业大学(自编) 3 计算机操作系统教程( 第二版),张尧学、史美林,清华大学出版社 4 现代操作系统,A.S.Tanenbaum 著,陈向群等译机械工业出版社 发出任务书日期:2022年12月14日指导教师签名:林穗 计划完成日期: 2022年1月9日基层教学单位责任人签章:傅秀芬 课程设计 课程名称_操作系统_ 题目名称_多道批处理系统两级调度的模拟_ 学生学院_计算机学院_ 专业班级_ 学号_ 学生姓名_ 指导教师_林穗_ 2022年12月 31日 (1)设计思想说明; 该课程设计综合了本学期操作系统实验的前三个的内容:进程调度、作业调度、主存空间分配与回收。因此,就在这三个实验的基础上进行了修改,协调好三个实验之间的先后、调用关系即完成。 (2)系统结构的说明; 基于第二个实验:作业调度。 首先,初始化输入井作业队列Jdisk,作业队列按时间先后顺序进入输入井作业队列Jdisk。当到达时刻达到,把Jdisk里符合条件的作业添加到后备队列Jwait,然后对Jwait实施作业调度算法调度作业。当作业符合资源要求时,即主存分配到合适的内存分区并且磁带机足够,把Jwait里的作业插入到内存里,内存队列为Jexe,并建立内存分配信息表记录内存分配情况(对Qpart进行操作)。然后,为内存里每个作业建立一个进程,按照进程调度算法建立好进程队列Al,同时更新Jexe作业的序列,令其对齐于进程队列相应的进程。执行进程队列的第一个进程。当进程完成,将它从进程队头删掉,并把Jexe的首作业删掉添加到完成队列Jdone中,同时在Qpart中找到被删掉的作业并删掉它释放主存。 对于进程调度,进程先来先务采用的是非剥夺式调度,即执行顺序时按进入内存的先后顺序;短进程优先则采用剥夺式调度,即当有新进程建立,且比正在运行的进程剩余执行时间还要短时,终止正在执行的进程,把新进程添加到进程队列Al首位置。 (3)数据结构的说明; typedef int Status; / typedef struct job /建立作业信息结构 char jname10; /作业名 int hour; /到达时刻时钟数 int minute; /到达时刻分钟数 int run; /运行时间 int memory; /要求主存空间 int sign; /所要磁带机数 int fhour; /完成时刻时钟数 int fminute; /完成时刻分钟数 int enterhour; /进入内存时时刻时钟数 int enterminute; /进入内存时刻分钟数 bool done; /记录是否作业已完成,完成true,否则false job,JOB; / typedef struct jcb /作业信息结构 int num; /记录作业位于主存分区表的分区号char name10; /作业名 int rtime; /运行时间 int memory; /申请主存空间 jcb,JCB; typedef struct spart /分区表信息结构 int num; /分区序号 int sadd; /分区始址 int space; /分区大小 char situ10; /分区状态 spart,SPART; / typedef struct pcb /* 定义进程控制块PCB */ char name10; / 进程名 int ntime; / 所需要的运行时间 int stime; /剩余时间 pcb,PCB; typedef struct QBNode PCB base; struct QBNode *next; QBNode,*QCB; typedef struct int tip; / 就绪队列时间片 int num; / 就绪队列成员数 QCB front; / 队头指针 QCB rear; / 队尾指针 Queue; / JOB JWORK5= /定义五个作业 "JOBA",10, 0,25,15,2,0,0,0,0,false, "JOBB",10,20,30,60,1,0,0,0,0,false, "JOBC",10,30,10,50,3,0,0,0,0,false, "JOBD",10,35,20,10,2,0,0,0,0,false, "JOBE",10,40,15,30,2,0,0,0,0,false ; int disk=4; /磁带机数5 int memory=100; /系统可用主存100KB int hour=9; /系统时间 int minute=55; /9:55 Queue Al; /进程队列 vector Jexe; /主存作业队列 vector Jwait; /后备作业队列 vector Jdone; /完成作业队列 vector Jdisk; /输入井作业队列 vector Qjcb; /作业队列 vector Qproce; /位于主存的作业队列 vector Qpart; /分区表状态队列 vector Qfree; /空闲分区表项 vector Pronum; /完成作业的主存分区号 vector:iterator pnext; /记录空闲分区表分配主存后下一个空闲位置 int systime = 0; /系统时间,初始化为0 int sysmemory = 100; /主存空间100KB int pnadr = -1; /记录pnext所要指向的分区始址,-1表示无空闲分区float progressflag = 0; /进度条标志位 核心算法头文件: operator.h:运行操作 Sysmain.h:全局变量及相关数据结构 (4)各主要模块的算法流程图; (5)程序运行情况; 本次课程设计采用可视化界面,便于观察与操作。 .系统已预设好5个作业供模拟。需要添加作业时,请按时间到达的先后添加,那相当于作业信息。开始时可以设定开始时间、磁带机数和内存 运行速度滑动条设定模拟运行的CPU速度,时间间隔最快为0.1s,最慢为1.2s。注意,调整速度时请先暂停运行。 .点击“开始”按钮开始运行 中途可以添加新作业。

    注意事项

    本文(操作系统课程设计任务书与报告.docx)为本站会员(h****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开