




已阅读5页,还剩41页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课 程 设 计设计题目: 作业调度 课程设计任务书一、课程设计的原始资料及依据查阅有关计算机操作系统的教材、实验指导书等资料,进一步熟悉操作系统的基本原理,算法的设计思想。作业调度是批处理操作系统中的重要内容。本设计要求用高级语言编写和调试一个简单的作业调度程序。通过本设计可以加深理解有关作业控制块、作业队列的概念,并体会和了解先来先服务、短作业优先和响应比高者优先作业调度算法的具体实施办法。加深理解有关作业控制块、作业队列的概念和状态转换。二、课程设计主要内容及要求1认真阅读资料,掌握作业调度的原理和相关算法的思想。2要求在设计的过程中,建立清晰的层次结构。3画出主要的功能结构图和主要算法的流程图。4设计作业控制块jcb表结构,分别适用于先来先服务、短作业优先和响应比高者优先调度算法。 jcb结构通常包括以下信息:作业名,作业到达系统的时间,作业要求服务时间,作业的完成时间等。根据调度算法的不同,jcb结构的内容可以作适当的增删。5建立作业并送入后备队列。对两种不同算法编制入链子程序。6分别显示三种不同算法下,后备队列中所有的作业排列情况。7编制作业调度算法:先来先服务、短作业优先和响应比高者优先调度算法。8显示根据不同调度算法形成的作业调度顺序。9运行程序,检查结果是否和理论值一致。10环境可以使用windows,turbo c环境或linux。三、对课程设计说明书撰写内容、格式、字数的要求1课程设计说明书是体现和总结课程设计成果的载体,主要内容包括:设计题目、设计目的、设备器材、设计原理及内容、设计步骤、遇到的问题及解决方法、设计总结、参考文献等。一般不应少于3000字。2在适当位置配合相应的实验原理图、功能模块图、算法流程图等图表进行说明。应做到文理通顺,内容正确完整,书写工整,装订整齐。3设计总结部分主要写本人完成工作简介以及自己的设计体会,包括通过课程设计学到了什么,哪里遇到了困难,解决的办法以及今后的目标。4课程设计说明书手写或打印均可。手写要用学校统一的课程设计用纸,用黑或蓝黑墨水工整书写;打印时采用a4纸,页边距均为20mm,正文采用宋体小四号字,行间距18磅。文中大标题采用黑体小三号字,一级节标题采用黑体四号字,二级节标题采用黑体小四号字,表题与图题采用宋体五号字。5课程设计说明书装订顺序为:封面、任务书、成绩评定表、目录、正文、参考文献。四、设计完成后应提交成果的种类、数量、质量等方面的要求1完成“任务书”中指定的功能,运行结果正确。2课程设计说明书。五、时间进度安排顺序阶段日期计 划 完 成 内 容备注12011.05.23阅读资料及系统分析设计22011.05.24程序编制32011.05.25程序编制、调试及运行42011.05.26成绩评定52011.05.27书写程设计说明书六、主要参考资料(文献)1凤羽.操作系统.北京:电子工业出版社,20042马季兰、冯秀芳等.操作系统原理与linux. 北京:人民邮电出版社,2000 3孟静.操作系统原理教程.北京:清华大学出版社,20004周苏、金海溶. 操作系统原理实验.北京: 科学出版社,2000沈 阳 工 程 学 院操作系统课程设计成绩评定表系(部): 信息工程系 班级: 软本094 学生姓名: 矫娜 指 导 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分调研论证能独立查阅文献,收集资料;能制定课程设计方案和日程安排。0.15432工作能力态度工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作, 0.25432工作量按期圆满完成规定的设计任务,工作量饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.55432指导教师评审成绩(加权分合计乘以8) 分加权分合计指 导 教 师 签 名: 年 月 日评 阅 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分查阅文献查阅文献有一定广泛性;有综合归纳资料的能力0.25432工作量工作量饱满,难度适中。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.35432评阅教师评审成绩(加权分合计乘以4)分加权分合计评 阅 教 师 签 名: 年 月 日答 辩 小 组 评 审 意 见评价内容具 体 要 求权重评 分加权分学生汇报汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。0.55432答 辩思路清晰;回答问题有理论依据,基本概念清楚;主要问题回答准确,深入,有说服力。0.55432答辩小组评审成绩(加权分合计乘以8)分加权分合计答辩小组教师签名: 年 月 日课 程 设 计 总 评 成 绩分沈 阳 工 程 学 院操作系统课程设计成绩评定表系(部): 信息工程系 班级: 软本094 学生姓名: 孙雨薇 指 导 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分调研论证能独立查阅文献,收集资料;能制定课程设计方案和日程安排。0.15432工作能力态度工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作, 0.25432工作量按期圆满完成规定的设计任务,工作量饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.55432指导教师评审成绩(加权分合计乘以8) 分加权分合计指 导 教 师 签 名: 年 月 日评 阅 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分查阅文献查阅文献有一定广泛性;有综合归纳资料的能力0.25432工作量工作量饱满,难度适中。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.35432评阅教师评审成绩(加权分合计乘以4)分加权分合计评 阅 教 师 签 名: 年 月 日答 辩 小 组 评 审 意 见评价内容具 体 要 求权重评 分加权分学生汇报汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。0.55432答 辩思路清晰;回答问题有理论依据,基本概念清楚;主要问题回答准确,深入,有说服力。0.55432答辩小组评审成绩(加权分合计乘以8)分加权分合计答辩小组教师签名: 年 月 日课 程 设 计 总 评 成 绩分沈 阳 工 程 学 院操作系统课程设计成绩评定表系(部): 信息工程系 班级: 软本094 学生姓名: 缪斯 指 导 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分调研论证能独立查阅文献,收集资料;能制定课程设计方案和日程安排。0.15432工作能力态度工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作, 0.25432工作量按期圆满完成规定的设计任务,工作量饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.55432指导教师评审成绩(加权分合计乘以8) 分加权分合计指 导 教 师 签 名: 年 月 日评 阅 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分查阅文献查阅文献有一定广泛性;有综合归纳资料的能力0.25432工作量工作量饱满,难度适中。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.35432评阅教师评审成绩(加权分合计乘以4)分加权分合计评 阅 教 师 签 名: 年 月 日答 辩 小 组 评 审 意 见评价内容具 体 要 求权重评 分加权分学生汇报汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。0.55432答 辩思路清晰;回答问题有理论依据,基本概念清楚;主要问题回答准确,深入,有说服力。0.55432答辩小组评审成绩(加权分合计乘以8)分加权分合计答辩小组教师签名: 年 月 日课 程 设 计 总 评 成 绩分沈 阳 工 程 学 院操作系统课程设计成绩评定表系(部): 信息工程系 班级: 软本094 学生姓名: 吕岩 指 导 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分调研论证能独立查阅文献,收集资料;能制定课程设计方案和日程安排。0.15432工作能力态度工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作, 0.25432工作量按期圆满完成规定的设计任务,工作量饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.55432指导教师评审成绩(加权分合计乘以8) 分加权分合计指 导 教 师 签 名: 年 月 日评 阅 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分查阅文献查阅文献有一定广泛性;有综合归纳资料的能力0.25432工作量工作量饱满,难度适中。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.35432评阅教师评审成绩(加权分合计乘以4)分加权分合计评 阅 教 师 签 名: 年 月 日答 辩 小 组 评 审 意 见评价内容具 体 要 求权重评 分加权分学生汇报汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。0.55432答 辩思路清晰;回答问题有理论依据,基本概念清楚;主要问题回答准确,深入,有说服力。0.55432答辩小组评审成绩(加权分合计乘以8)分加权分合计答辩小组教师签名: 年 月 日课 程 设 计 总 评 成 绩分沈 阳 工 程 学 院操作系统课程设计成绩评定表系(部): 信息工程系 班级: 软本094 学生姓名: 孟昭鹏 指 导 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分调研论证能独立查阅文献,收集资料;能制定课程设计方案和日程安排。0.15432工作能力态度工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作, 0.25432工作量按期圆满完成规定的设计任务,工作量饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.55432指导教师评审成绩(加权分合计乘以8) 分加权分合计指 导 教 师 签 名: 年 月 日评 阅 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分查阅文献查阅文献有一定广泛性;有综合归纳资料的能力0.25432工作量工作量饱满,难度适中。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.35432评阅教师评审成绩(加权分合计乘以4)分加权分合计评 阅 教 师 签 名: 年 月 日答 辩 小 组 评 审 意 见评价内容具 体 要 求权重评 分加权分学生汇报汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。0.55432答 辩思路清晰;回答问题有理论依据,基本概念清楚;主要问题回答准确,深入,有说服力。0.55432答辩小组评审成绩(加权分合计乘以8)分加权分合计答辩小组教师签名: 年 月 日课 程 设 计 总 评 成 绩分操作系统课程设计报告 摘要 摘要随着社会科学技术的迅猛发展,计算机以它卓越的进步已经遍布各行各业,其实计算机本身就是一堆废铁,而操作系统使它有了生命和灵魂,操作系统就相当于人的各个组织,如果没有操作系统那计算机就像一个植物人一样,毫无价值。操作系统是配置在计算机上的第一层软件,是对硬件系统的首次扩充。它在计算机系统中占据了特别重要的地位,很多系统软件以及大量的应用软件都依赖于操作系统的支持,取得它的服务。在计算机系统上所配置的操作系统的主要目标与计算机系统的规模和操作系统的应用环境有关,而操作系统在计算机系统中所起的作用也可以从不同的角度来观察。操作系统已成为从大型机直至微型机都配置的软件,在不同的操作系统中采用的调度方式是不同的,它不仅是计算机与用户之间的接口,也是计算机资源的管理者。当今的的计算机已经从无操作系统到单道批处理系统再发展到多道程序系统然后是分时系统和实时系统。在多道程序系统中,一个作业被提交后必须经过处理机调度后,方能获得处理机执行。作业是一个比程序更为广泛的概念,它不仅包含了通常的程序和数据,而且还应配有一分作业说明书,系统根据该说明书来对程序的运行进行控制。在批处理系统中,是以作业为基本单位从外存调入内存的。对于批量型作业而言,通常要经历作业调度和进程调度两个过程方能获得处理机。为了管理和调度作业,在多道批处理系统中为每个作业设置了一个作业控制块,即pcb(job control block)每当作业进入系统是,系统便为每个作业创建一个pcb,根据作业类型将它插入相应的后备队列中,作业调度程序根据一定的算法来调度它们,被调度到的作业将会装入内存。作业调度的主要功能是根据作业控制块中的信息,审查系统能否满足用户作业的资源需求,以及按照一定的算法,从外存的后备队列中选取某些作业调入内存,并为它们创建进程,分配必要的资源,然后,再将新创建的进程排在就绪队列上,准备准备执行。每次执行作业调度时,都需要做以下两个决定:1.接纳多少个作业,取决于多道程序度即允许多少个作业同时在内存中运行,多道程序度的确定是根据系统的规模和运行速度等情况做适当的折中。2.接纳哪些作业,取决于采用的调度算法。作业调度的算法主要包括三种:先来先服务算法、短作业优先调度算法和高响应比优先调度算法。本系统采用结构体定义作业的数据类型,用数组接纳各个作业,通过把创建的jcb结构体组织成链,用不同算法循环测试处理的每个作业,来确定各个作业接受系统服务的次序,从而输出每个算法对作业处理结果,即平均周转时间。从而确定哪种算法对于本次的作业调度是最佳的算法。关键词 操作系统,作业调度,调度算法,优先权,响应比,平均周转时间,最佳算法i沈阳工程学院课程设计报告 目录 目录第1章 引言11.1设计题目11.2设计目的11.3设备器材11.4任务分析11.5 操作系统概述21.5.1 发展历史21.5.2 分类31.6 系统开发技术51.6.1 visual c+概述51.6.2 c+发展历史简单介绍61.6.3 visual c+的特点61.6.4 c+语言发展及设计原则71.6.5 c+编程技巧8第2章 设计原理112.1先来先服务调度算法112.2短作业优先调度算法112.3高响应比优先调度算法11第3章 程序分析133.1系统操作133.2程序功能结构图133.3程序功能流程图143.3.1 创建作业流程图143.3.2 先来先服务调度算法流程图143.3.3 短作业优先调度算法流程图153.3.4 响应比优先调度算法流程图163.3.5总结最优调度算法流程图16第4章 程序实现方法184.1主函数程序实现184.1.1主程序实现功能184.1.2 主程序实现代码184.1.3 主程序运行界面194.2 创建作业函数的实现204.2.1 函数说明204.2.2 创建函数实现代码204.2.3 创建函数运行界面214.3 先来先服务函数214.3.1函数说明214.3.2先来先服务代码214.3.3 程序运行界面234.4短作业优先函数244.4.1函数说明244.4.2短作业优先代码244.4.3程序运行界面264.5 响应比高者优先函数264.5.1函数说明264.5.2响应比高者优先代码264.5.3响应比高者优函数运行结果284.6总结函数294.6.1 函数说明294.6.2 总结函数实现代码294.6.3 总结函数运行界面30第5章 遇到的问题及解决方法315.1 遇到的问题315.2 解决的方法31总结32致谢33参考文献34iii沈阳工程学院课程设计报告 第1章 引言 第1章 引言1.1设计题目作业管理1.2设计目的了解作业进入系统至运行完毕的总过程。掌握并学会运用不同的调度算法。进一步了解作业调度中作业的创建过程与实现过程。学会并理解优先权在高响应比优先高度算法中的作用。1.3设备器材硬件:计算机一台软件:windows操作系统,vc+环境或tc2.0环境1.4任务分析本次课程设计的题目为作业调度,其调度算法分别为先来先服务调度算法、短作业优先调度算法、高响应比优先调度算法。作业调度的主要功能是根据作业控制块中的信息,审查系统能否满足用户作业的资源需求,以及按照一定的算法,从外存的后备队列中选取某些作业调入内存,并为它们创建进程、分配必要的资源。然后再将新创建的进程插入就绪队列,准备执行。每个系统在选择作业调度算法时,既应考虑用户的要求,又能确保系统具有较高的效率。在每次执行作业调度时,都须做出两个决定,一是决定接纳多少个作业;二是决定接纳哪些作业。在os中调度的实质是一种资源分配,因而调度算法是指:根据系统的资源分配策略所规定的资源分配算法。对于不同的系统和系统目标,通常采用不同的调度算法。先来先服务调度算法是一种最简单的调度算法,每次调度都是从后备作业队列中选择一个或多个最先进入该队列的作业,将它们调入内存,为它们分配资源、创建进程,然后放入就绪队列。短作业优先调度算法是指对短作业优先调度的算法。短作业优先的调度算法是从后备队列中选择一个或若干个估计运行时间最短的作业,将它们调入内存运行。高响应比优先调度算法,是指将就绪队列中排序的优先权最高的作业调入内存执行。在高响应比调度算法中,优先权的计算公式为:优先权=(等待时间+要求服务时间)/要求服务时间,该算法既照顾了短作业,又考虑了作业到达的先后次序,不会使长作业长期得不到服务。因此,该算法实现了一种较好的折衷。当然,在利用该算法时,每要进行调度之前,都须先做响应比的计算,这会增加系统开销。在执行高响应比优先调度算法时,每有一个作业调入内存运行后就需根据最后一次调入内存的业状态计算就绪队列中的其它作业的优先权。在编写程序时,调度算法前建立系统源文件扩展名为.txt,利用创建(输入)函数creat()向源文件中输入作业流,把作业的基本信息输入到文件中,如:作业的名称、作业的提交时间、作业的运行时间。作业初始排序为到达时间先后(即先来先服务调度排序作业流)。采用高响应比优先调度算法时,从就绪队列中选出优先权最高的作业调入内存执行,系统自动将处理机分配给它,使它立即执行并一直执行到完成。该程序代码中执行的操作步骤主要为以二进制模式打开源文件,利用高响应比优先调度算法在就绪队列中选出当前优先权最高的作业调度运行,通过程序中的计算方法求出并输出该作业的开始时间、完成时间、周转时间。1.5 操作系统概述操作系统(operating system,简称os)是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。它在计算机系统中占据了特别重要的地位;而其它的诸如汇编程序、编译程序、数据库管理系统等系统软件,以及大量的应用软件,都将依赖于操作系统的支持,取得它的服务。操作系统已成为现代计算机系统(大、中、小及微型机)、多处理机系统、计算机网络、多媒体系统以及嵌入式系统中都必须配置的、最重要的系统软件。它是计算机系统中各种资源的管理者和各种活动的组织者、指挥者。操作系统是一个庞大的管理控制程序,大致包括5个方面的管理功能。进程与处理机管理、作业管理、存储管理、设备管理、文件管理。目前微机上常见的操作系统有dos、os/2、unix、xenix、linux、windows、netware等。 操作系统是控制其他程序运行,管理系统资源并为用户提供操作界面的系统软件的集合。操作系统身负诸如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。操作系统是管理计算机系统的全部硬件资源包括软件资源及数据资源;控制程序运行;改善人机界面;为其它应用软件提供支持等,使计算机系统所有资源最大限度地发挥作用,为用户提供方便的、有效的、友善的服务界面。所有的操作系统具有并发性、共享性、虚拟性和不确定性四个基本特征。操作系统的型态非常多样,不同机器安装的os可从简单到复杂,可从手机的嵌入式系统到超级电脑的大型操作系统。许多操作系统制造者对os的定义也不大一致,例如有些os集成了图形用户界面,而有些os仅使用文本接口,而将图形界面视为一种非必要的应用程序。操作系统理论在计算机科学中为历史悠久而又活跃的分支,而操作系统的设计与实现则是软件工业的基础与内核。 1.5.1 发展历史os的形成迄今已有50多年的时间。在上世纪50年代中期出现了单道批处理系统;60年代中期产生了多道程序批处理系统;不久又出现了基于多道程序的分时系统,与此同时也诞生了用于工业控制和武器控制的实时操作系统。20世纪80年代开始至21世纪初,是微型机、多处理机和计算机网络高速发展的年代,同时也是微型机os、多处理机os和网络os以及分布式os的形成和大发展的年代。综观电脑之历史,操作系统与电脑硬件的发展息息相关。操作系统之本意原为提供简单的工作排序能力,后为辅助更新更复杂的硬件设施而渐渐演化。从最早的批次模式开始,分时机制也随之出现,在多处理器时代来临时,操作系统也随之添加多处理器协调功能,甚至是分布式系统的协调功能。其他方面的演变也类似于此。另一方面,在个人电脑上,个人电脑之操作系统因袭大型电脑的成长之路,在硬件越来越复杂、强大时,也逐步实践以往只有大型电脑才有的功能。总而言之,操作系统的历史就是一部解决电脑系统需求与问题的历史。第一代微型计算机并不像大型电脑或小型电脑,没有装设操作系统的需求或能力;它们只需要最基本的操作系统,通常这种操作系统都是从rom读取的,此种程序被称为监视程序(monitor)。1980年代,家用电脑开始普及。通常此时的电脑拥有8-bit处理器加上64kb内存、屏幕、键盘以及低音质喇叭。而80年代早期最著名的套装电脑为使用微处理器6510(6502芯片特别版)的commodore c64。此电脑没有操作系统,而是以一8kb只读内存bios初始化彩色屏幕、键盘以及软驱和打印机。它可用8kb只读内存basic语言来直接操作bios,并依此撰写程序,大部分是游戏。此basic语言的解释器勉强可算是此电脑的操作系统,当然就没有内核或软硬件保护机制了。此电脑上的游戏大多跳过bios层次,直接控制硬件。apple i电脑,苹果电脑的第一代产品。延续80年代的竞争,1990年代出现了许多影响未来个人电脑市场深厚的操作系统。由于图形化使用者界面日趋繁复,操作系统的能力也越来越复杂与巨大,因此强韧且具有弹性的操作系统就成了迫切的需求。此年代是许多套装类的个人电脑操作系统互相竞争的时代。在1990年代初,微软与ibm的合作破裂,微软从os/2(早期为命令行模式,后来成为一个很成功但是曲高和寡的图形化操作系统)项目中抽身,并且在1993年7月27日推出windows 3.1,一个以os/2为基础的图形化操作系统。直到这时,windows系统依然是建立在ms-dos的基础上,因此消费者莫不期待微软在2000年所推出的windows 2000上,因为它才算是第一个脱离ms-dos基础的图形化操作系统。现代操作系统通常都有一个使用的绘图设备的图形化使用者界面,并附加如鼠标或触控面版等有别于键盘的输入设备。旧的os或效能导向的服务器通常不会有如此亲切的接口,而是以命令行接口(cli)加上键盘为输入设备。以上两种接口其实都是所谓的壳,其功能为接受并处理使用者的指令(例如按下一按钮,或在命令提示列上键入指令)。选择要安装的操作系统通常与其硬件架构有很大关系,只有linux与bsd几乎可在所有硬件架构上执行,而windows nt仅移植到了dec alpha与mips magnum。在1990年代早期,个人电脑的选择就已被局限在windows家族、类unix家族以及linux上,而以linux及mac os x为最主要的另类选择,直至今日。大型机与嵌入式系统使用很多样化的操作系统。大型主机近期有许多开始支持java及linux以便共享其他平台的资源。嵌入式系统近期百家争鸣,从给sensor networks用的berkeley tiny os到可以操作microsoft office的windows ce都有。1.5.2分类目前的操作系统种类繁多,很难用单一标准统一分类。根据应用领域来划分,可分为桌面操作系统、服务器操作系统、主机操作系统、嵌入式操作系统。根据所支持的用户数目,可分为单用户(msdos、os/2)、多用户系统(unix、mvs、windows)。根据源码开放程度,可分为开源操作系统(linux、chrome os)和不开源操作系统(windows、mac os)。根据硬件结构,可分为网络操作系统(netware、windows nt、os/2 warp)、分布式系统(amoeba)、多媒体系统(amiga)。根据操作系统的使用环境和对作业处理方式来考虑,可分为批处理系统(mvx、dos/vse)、分时系统(linux、unix、xenix、mac os)、实时系统(iemx、vrtx、rtos,rt windows)。根据操作系统的技术复杂程度,可分为简单操作系统、智能操作系统(见智能软件)。所谓的简单操作系统,指的是计算机初期所配置的操作系统,如ibm公司的磁盘操作系统dos/360和微型计算机的操作系统cp/m等。这类操作系统的功能主要是操作命令的执行,文件服务,支持高级程序设计语言编译程序和控制外部设备等。下面介绍一下操作系统的五大类型:批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统。 1. 批处理操作系统 批处理(batch processing)操作系统的工作方式是:用户将作业交给系统操作员,系统操作员将许多用户的作业组成一批作业,之后输入到计算机中,在系统中形成一个自动转接的连续的作业流,然后启动操作系统,系统自动、依次执行每个作业。最后由操作员将作业结果交给用户。 单道批处理系统上世纪50年代中期发明了晶体管,人们开始用晶体管代替真空管来制作计算机,为了充分的利用它应尽量让该系统连续运行,以减少空闲时间,这样就出现了早期的单道批处理系统。单道批处理系统是最早出现一种os。严格的说,它只能算作是os的前身而并非是现在人们所理解的os。通常把一批作业以脱机方式输入到磁带上,并在系统中配上监督程序(monitor),在它的控制下使这批作业能一个接一个地连续处理。由于系统对作业的处理都是成批地进行的,且在内存上始终只保持一道作业,故称此系统为单道批处理系统。多道批处理系统20世纪60年代中期,人们开始利用小规模集成电路来制作计算机,生产出第三代计算机。有ibm公司生产的第一台小规模集成电路计算机360机,较之于晶体管计算机无论在体积功耗速度和可靠性上,都有了显著的改善。虽然在开发360机器使用的操作系统时,未能在机器上运行多道程序而遇到了极大的困难,但最终还是成功的开发出能在一台机器中运行多道程序的操作系统os/360。多道程序设计标志着操作系统的形成。在多道批处理系统中,用户所提交的作业都先放在外存上并排成一个队列,成为“后备队列”;然后,有作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享cpu和系统中的各种资源。2分时操作系统 第一台真正的分时操作系统(ctss)是有麻省理工学院开发成功的。分时系统是指,在一台主机上连接多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互方式使用计算机,共享主机中资源。用户交互式地向系统提出命令请求,系统接受每个用户的命令,采用时间片轮转方式处理服务请求,并通过交互方式在终端上向用户显示结果。用户根据上步结果发出下道命。分时操作系统将cpu的时间划分成若干个片段,称为时间片。操作系统以时间片为单位,轮流为每个终端用户服务。每个用户轮流使用一个时间片而使每个用户并不感到有别的用户存在。分时系统具有多路性、交互性、“独占”性和及时性的特征。它支持位于不同终端的多个用户同时使用一台计算机,彼此独立互不干扰,用户感到好像一台计算机全为他所用。分时系统与多道批处理系统之间有截然不同的性能差别,它能很好地将一台计算机提供多个用户同时使用,提高计算机的利用率。常见的通用操作系统是分时系统与批处理系统的结合。其原则是:分时优先,批处理在后。“台”响应需频繁交互的作业,如终端的要求;“后台”处理时间性要求不强的作业。3实时操作系统 实时操作系统(realtimeoperatingsystem,rtos)是指系统功能及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。实时操作系统要追求的目标是:对外部请求在严格时间范围内做出反应,有高可靠性和完整性。其主要特点是资源的分配和调度首先要考虑实时性然后才是效率。此外,实时操作系统应有较强的容错能力。4网络操作系统 网络操作系统是基于计算机网络的,是在各种计算机操作系统上按网络体系结构协议标准开发的软件,包括网络管理、通信、安全、资源共享和各种网络应用。其目标是相互通信及资源共享。在其支持下,网络中的各台计算机能互相通信和共享资源。其主要特点是与网络的硬件相结合来完成网络的通信任务。5分布式操作系统 它是为分布计算系统配置的操作系统。大量的计算机通过网络被连结在一起,可以获得极高的运算能力及广泛的数据共享。这种系统被称作分布式系统(distributedsystem)。它在资源管理,通信控制和操作系统的结构等方面都与其他操作系统有较大的区别。由于分布计算机系统的资源分布于系统的不同计算机上,操作系统对用户的资源需求不能像一般的操作系统那样等待有资源时直接分配的简单做法而是要在系统的各台计算机上搜索,找到所需资源后才可进行分配。对于有些资源,如具有多个副本的文件,还必须考虑一致性。所谓一致性是指若干个用户对同一个文件所同时读出的数据是一致的。为了保证一致性,操作系统须控制文件的读、写、操作,使得多个用户可同时读一个文件,而任一时刻最多只能有一个用户在修改文件。分布操作系统的通信功能类似于网络操作系统。由于分布计算机系统不像网络分布得很广,同时分布操作系统还要支持并行处理,因此它提供的通信机制和网络操作系统提供的有所不同,它要求通信速度高。分布操作系统的结构也不同于其他操作系统,它分布于系统的各台计算机上,能并行地处理用户的各种需求,有较强的容错能力。1.6 系统开发技术1.6.1 visual c+概述在这次课程设计中,我们采用的是visual c+环境。它是一种使用非常广泛的计算机编程语言。c+是一种静态数据类型检查的,支持多重编程范式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、制作图标等等泛型程序设计等多种程序设计风格。visual c+是microsoft公司于1993年推出的一个可视化集成开发环境(integrated development,ide)。自1998年microsoft公司推出功能完善的visual c+6.0后,越来越多的程序员选用visual c+作为软件开发工具。使用visual c+6.0后,越来越多的程序员选用visual c+6.0 集成开发环境,visual c+6.0集成开发环境由很多工具和向导组成,要真正掌握它们的使用方法必须结合具体的编程内容。visual c+是一个功能强大的可视化软件开发工具,它不仅是一个c+编译器,还是一个基于windows操作系统的集成开发环境。visual c+由许多组件组成,包括编辑器、编译器、调试器以及程序向导appwizard、类向导classwizard等。1.6.2 c+发展历史简单介绍 c语言之所以要起名为“c”,是因为它是主要参考那个时候的一门叫b的语言,它的设计者认为c语言是b语言的进步,所以就起名为c语言;但是b语言并不是因为之前还有个a语言,而是b语言的作者为了纪念他的妻子,他的妻子名字的第一个字母是b;当c语言发展到顶峰的时刻,出现了一个版本叫c with class,那就是c+最早的版本,在c语言中增加class关键字和类,那个时候有很多版本的c都希望在c语言中增加类的概念;后来c标准委员会决定为这个版本的c起个新的名字,那个时候征集了很多种名字,最后采纳了其中一个人的意见,以c语言中的+运算符来体现它是c语言的进步,所以就叫c+,也成立了c+标准委员会。美国at&t贝尔实验室的本贾尼斯特劳斯特卢普(bjarne stroustrup)博士在20世纪80年代初期发明并实现了c+(最初这种语言被称作“c with classes”)。一开始c+是作为c语言的增强版出现的,从给c语言增加类开始,不断的增加新特性。虚函数(virtual function)、运算符重载(operator overloading)、多重继承(multiple inheritance)、模板(template)、异常(exception)、rtti、命名空间(name space)逐渐被加入标准。1998年国际标准组织(iso)颁布了c+程序设计语言的国际标准iso/iec 1488-1998。c+是具有国际标准的编程语言,通常称作ansi/iso c+。1998年是c+标准委员会成立的第一年,以后每5年视实际需要更新一次标准,下一次标准更新将是在2009年,目前我们一般称该标准c+0x。遗憾的是,由于c+语言过于复杂,以及他经历了长年的演变,直到现在(2009年)只有visual c+ 2010 ctp开发环境的编译器完全符合这个标准。另外,就目前学习c+而言,可以认为他是一门独立的语言;他并不依赖c语言,我们可以完全不学c语言,而直接学习c+。根据c+编程思想(thinking in c+)一书所评述的,c+与c的效率往往相差在正负5%之间。所以有人认为在大多数场合c+ 完全可以取代c语言(然而我们在单片机等需要谨慎利用空间、直接操作硬件的地方还是要使用c语言)。 1.6.3 visual c+的特点 visual c+中源程序采用c/c+语言编写,它支持面向对象程序设计,并能够使用功能强大的微软基础类库mfc(microsoft foundation class),充分体现了microsoft公司的技术精华。由于windows操作系统的市场垄断地位,利用visual c+开发出来的软件具有稳定性好、可移植性强的特点。利用visual c+可以编制各种类型的windows应用程序,从简单的单文档、多文档和对话框程序到复杂的组合界面程序。并且,visual c+作为visual studio可视化家族中最重要的一个成员,它与其他可视化开发工具如visual j+、visual basic及visual c#紧密集成,可进行不同类型以及综合软件项目的开发,适用于开发非常专业的windows、web和企业级应用程序。visual c+6.0源代码编辑器功能强大,使用非常方便。它提供了语句自动完成功能,编辑输入源程序时能自动显示当前对象的成员变量和成员函数,并表明函数的参数类型。visual c+6.0的编译器增加了新的编译参数,改进了对ansi c+标准的支持,并采用microsoft的代码优化技术,使生成的目标代码更精练,程序运行的速度更快。比较其他程序调试工具,visual c+6.0程序调试器debug功能更强大,它提供了诊断映射机制、无须重编译的调试、远程调试和实时调试等功能。visual c+6.0的联机帮助系统msdn library(microsoft developer network library)可以称得上是一本内容非常丰富的电子参考书。它既能与集成开发环境有机地结合在一起,使程序员在编程进可以随时查询需要的帮助信息和技术文档,又能脱离集成开发环境而独立地运行,并且用户还可以通过因特网获取实时的帮助信息和实例。visual c+6.0通过visual studio还为用户提供了很多实用工具,如spy+查看器、activex control test container控件测试窗口及register control控件注册程序等,扩展了visual c+的功能,有利于专业程序的开发。除了visual c+,其他一些知名公司也推出了自己的c+集成开发环境,如borland的c+ bulider和ibm的visualage c+。迄今为止,visual c+可以说是一个功能最强大和使用范围最广泛的软件开发工具。当然,由于windows编程的困难和mfc类库功能的庞大,加上应用程序向导生成的程序框架的复杂,使得学习visual c+比学习其他软件开发工具更困难。但当熟练掌握visual c+编程方法后,就会感受到作为visual c+程序员的无比优越性。1.6.4 c+语言发展及设计原
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 药物制剂质量的评估考题试题及答案
- 脑震荡考试题及答案
- 选定护士资格证学习工具试题及答案
- 育婴师个性化教育方法试题及答案
- 计算机二级考试知识补充试题及答案
- 建华入职考试试题及答案
- 解析专利代理人资格证考试试题及答案
- 文化产业管理考试的趋势试题及答案解说
- 荣誉与责任2025年卫生执业考试试题及答案
- 数学五年级下册一、图形的运动(二)一等奖教案
- 2025年许昌职业技术学院单招职业适应性考试题库及答案1套
- 《中华人民共和国药品管理法实施条例》
- 《建筑基坑工程监测技术标准》(50497-2019)
- 数字经济学导论-全套课件
- 冲压作业机械类作业活动风险分级管控清单
- TCVN-2622-越南建筑防火规范(中文版)
- 不负韶华只争朝夕-一模考试反思 课件-2021-2022学年高中主题班会(共17张PPT)
- 什么是管壁厚度号Sch
- 液压阀详细讲解课件
- DB13(J)∕T 256-2018 农村气代煤工程技术规程
- 小学数学基础知识大全
评论
0/150
提交评论