数学与计算机学院操作系统原理课程设计进程调度模拟程序研究设计

上传人:无*** 文档编号:136176742 上传时间:2022-08-16 格式:DOC 页数:31 大小:1,005KB
收藏 版权申诉 举报 下载
数学与计算机学院操作系统原理课程设计进程调度模拟程序研究设计_第1页
第1页 / 共31页
数学与计算机学院操作系统原理课程设计进程调度模拟程序研究设计_第2页
第2页 / 共31页
数学与计算机学院操作系统原理课程设计进程调度模拟程序研究设计_第3页
第3页 / 共31页
资源描述:

《数学与计算机学院操作系统原理课程设计进程调度模拟程序研究设计》由会员分享,可在线阅读,更多相关《数学与计算机学院操作系统原理课程设计进程调度模拟程序研究设计(31页珍藏版)》请在装配图网上搜索。

1、数学与计算机学院课程设计说明书课 程 名 称: 操作系统原理-课程设计 课 程 代 码: 8404061 题 目: 进程调度模拟程序 年级/专业/班: 2007级计算机科学与技术5班 学 生 姓 名: XCV 学 号: 312007080605528 开 始 时 间: 2009 年 12 月 16 日完 成 时 间: 2010 年 1 月 8 日课程设计成绩:学习态度及平时成绩(30)技术水平与实际能力(20)创新(5)说明书撰写质量(45)总 分(100)指导教师签名: 年 月 日目 录1 引 言11.1问题的提出11.2设计目的11.3设计要求12 系统分析22.1功能需求22.2 程序运

2、行平台33 总体设计33.1 设计思想33.2设计流程图34 功能模块设计与实现54.1进程控制块54.2 先来先服务算法54.3 优先权优先算法64.4 主函数65 系统测试95.1 设计测试数据95.2 测试结果及分析106 结论16致 谢17参考文献18 摘 要 作为新世纪的大学生,应当站在时代发展的前列,掌握现代科学技术知识,调整自己的知识结构和能力结构,以适应社会的发展的要求。新世纪需要具有丰富的现代科学知识,能够独立解决面临任务和充满活力,有创新意识的新型人才。 如果说CPU是计算机系统的心脏,那么进程调度就是计算机系统的灵魂,因为它决定了如何使用CPU。例如,Linux是一个多任

3、务操作系统,它的理想状况是保持CPU有效运行。如果某个正在运行的进程转入等待系统资源,操作系统就调度其他进程运行,从而保证CPU的最大利用率。如何使系统能够保证较短的响应时间和较高的吞吐量,使得多个进程竞争CPU时保持公平、高效,是通用操作系统所追求的目标。关键词:CPU ;心脏 ; 进程调度; 灵魂 ;响应时间 ;吞吐量1 引 言 1.1问题的提出 随着科技的发展,越来越多的人开始了解计算机,熟悉计算机,使用计算机,计算机已经成为人们工作、学习、生活的必备工具。用户使用计算机处理各种各样的事情,那么选用怎样的进程调度方式才能使计算机更快更优的为我们服务呢?这就要求我们必须了解操作系统进程调度

4、的算法及其相关原理。首先硬件机制上如何保证操作系统的内核调度进程可以在一定的时机获得CPU来进行进程调度?通常我们会在软件层次上找答案,其实,它是通过在CPU的硬件处理机制上实现的。CPU在执行完每个指令的周期后会扫描CPU的内部的一个中断寄存器,查询是否存在中断发生,若没有,则继续执行指令;若有,则保存当前的CPU工作环境,跳转到中断服务列程,CPU执行中断服务程序,在退出中断后,跳转到内核调度程序(这是个内核程序,但是是对所有的进程共享的,包括用户进程),此时,内核调度程序占据CPU,进行进程的调度,以决定下个将占用CPU的进程。其次了解几种常见的进程调度算法:先来先服务调度算法;短作业(

5、短任务、短进程、短线程)优先调度算法;时间片轮转调度算法;优先级调度算法;高响应比优先调度算法;多级反馈队列调度算法。1.2设计目的通过课程设计理解进程调度的概念,深入了解进程调度的功能,进程的创建、删除以及各个进程状态间的转换过程:实现先来先服务,优先级调度算法对进程进行调度的过程;通过观察有关队列结构的内容动态变化的过程深入了解该调度算法的特点,从而巩固自己的理论知识。1.3设计要求进程调度算法:采用最高优先数优先的调度算法(即把处理机分配给优先数最高的进程)和先来先服务算法。2 系统分析2.1功能需求每个进程有一个进程控制块( PCB)表示。进程控制块可以包含如下信息:进程名、优先数、到

6、达时间、需要运行时间、已用CPU时间、进程状态等等。 进程的优先数及需要的运行时间可以事先人为地指定(也可以由随机数产生)。进程的到达时间为进程输入的时间。 进程的运行时间以时间片为单位进行计算。等待I/O的时间以时间片为单位进行计算,可随机产生,也可事先指定。每个进程的状态可以是就绪 R(Ready)、运行R(Run)、等待(Wait)或完成F(Finish)四种状态之一。 就绪进程获得 CPU后都只能运行一个时间片。用已占用CPU时间加1来表示。 如果运行一个时间片后,进程的已占用 CPU时间已达到所需要的运行时间,则撤消该进程,如果运行一个时间片后进程的已占用CPU时间还未达所需要的运行

7、时间,也就是进程还需要继续运行,此时应将进程的优先数减1(即降低一级),然后把它插入就绪队列等待CPU。 每进行一次调度程序都打印一次运行进程、就绪队列、等待进程以及各个进程的 PCB,以便进行检查。重复以上过程,直到所要进程都完成为止。2.2 程序运行平台硬件环境:微型计算机(Intel x86系列CPU)一台软件环境:Windows2000/XP或以上版本Windows操作系统;VC+6.03 总体设计3.1 设计思想1) 先来先服务调度算法:按进程进入就绪队列的先后次序选择可以占用处理器的进程。2)优先级调度算法:对每个进程确定一个优先数,该算法总是让优先数最高的进程先使用处理器。对具有

8、相同优先数的进程,再采用先来先服务的次序分配处理器。系统常以任务的紧迫性和系统效率等因素确定进程的优先数。进程的优先数可以固定的,也可随进程执行过程动态变化。 一个高优先数的进程占用处理器后,系统处理该进程时有两种方法,一是非抢占式,另一种是可抢占式。前者是此进程占用处理器后一直运行到结束,除非本身主动让出处理器,后者则是严格保证任何时刻总是让优先数最高的进程在处理器上运行。3.2设计流程图 主函数1)主函数流程图退出系统优先权优先先来先服务2)先来向服务流程图: 开始 初始化pcb,输入进程信息就绪队列为空? 结束Y 运行进程占用cpuN 运行结束撤销进程 3)优先权优先流程图: 开始结束进

9、程完成撤销该进程就绪队列为空?初始化pcb,输入进程信息进程优先数从高到低排列Y 就绪队列首进程投入运行N 时间片到。运行进程已占用cpu时间+1运行进程已占用cpu时间已达到所需要的时间运行进程优先数-1把运行进程插入就绪队列已到达未到达4 功能模块设计与实现4.1进程控制快struct pcb /* 定义进程控制块PCB */ char name10; char state; int super; int ntime; int rtime; struct pcb* next; *ready=NULL,*p;typedef struct pcb PCB;4.2 先来先服务算法void ini

10、tiapcb()int i,num; printf(n 请输入进程数目:); scanf(%d,&num); for(i=0;iname,&p-super,&p-ntime); p-rtime=0; p-state=w; p-next=NULL; sortf(p); 4.3优先权优先算法void createpcb() /* 建立进程控制块函数*/ int i,num; printf(n 请输入进程数目:); scanf(%d,&num); for(i=0;iname,&p-super,&p-ntime); p-rtime=0; p-state=w; p-next=NULL; sort(p);

11、 4.4主函数void main() printf(请选择进程调度算法:n);printf(1:输入数字1运行先来先服务进程调度算法;n);printf(2:输入数字2运行最高优先权进程调度算法;n);printf(3:输入数字0退出系统。n);int n;scanf(%d,&n);while(n0)if(n=1)printf(*-*n);printf(|*先来先服务调度算法模拟*|n);printf(*-*n);char ch; initiapcb(); printf(n 初始时就绪队列的状态如下:); display1();p=ready;while(p!=NULL) display2(p

12、);p=p-next; printf(n 开始运行:.);while(ready!=NULL) ch=getchar(); p=ready; ready=p-next; p-next=NULL; p-state=R; check(); running2(); printf(n 按任一键继续.); ch=getchar(); printf(n 进程已经完成.n); if(n=2)printf(*-*n);printf(|*最高优先权优先调度算法模拟*|n);printf(*-*n);char ch; createpcb(); printf(n 初始时就绪队列的状态如下:); display1()

13、;p=ready;while(p!=NULL) display2(p);p=p-next; printf(n 开始运行:.);while(ready!=NULL) ch=getchar(); p=ready; ready=p-next; p-next=NULL; p-state=R; check(); running(); printf(n 按任一键继续.); ch=getchar(); printf(n 进程已经完成.n); return ;5 系统测试5.1 设计测试数据测试数据 调度算法:先来先服务进程数:3进程名:a b c优先数:2 3 2要求服务时间:3 3 4测试数据调度算法:优

14、先权调度进程数:3进程名:a b c 优先数:2 2 3 要求服务时间:3 4 4 5.2 测试结果及分析1) .当输入数据后,结果运行如图5.2.1:图5.2.1 数据运行结果结果分析:通过对运行过程的监视与分析,按照先来先服务调度算法,进程按照顺序依次执行,因此结果正确2).当输入数据后,结果运行如图5.2.2:图5.2.2 数据运行结果结果分析:通过对运行过程的监视与分析,结合优先权优先调度算法的特点(优先数高的进程先执行)和对时间片知识的认识,结果正确6 结论 通过这次课程设计我获益匪浅。首先为了做这个课程设计我看了很多参考书,让自己再次深入学习了有关队列 、结构体、指针、进程调度算法

15、等的知识,在遇到一些不懂或不会的知识时通过向同学和老师的虚心请教,使自己认识到了自己诸多不足的地方和团队力量的重要性,从而激励自己以后一定要更加努力的学习,加强自己专业知识能力的培养和团队意识;其次因为自己平时很少时间上机编程,此次课程设计为自己提供了一个上机实践的平台,锻炼了自己的动手编程能力和对理论与实践相结合的能力 本次设计作得比较好的地方有:流程清晰,通过绘制流程图,较好地理解了进程调度算法的工作流程;算法设计合理,容易理解,实现简单;结果显示清晰明了,能清晰地看出各算法的运行情况。致 谢 经过一段时间的努力,我终于完成了此次操作系统原理课程设计。这个课程设计的工作量比较大,内容比较丰

16、富。就我个人现在的能力而言,完成这个课程设计有相当大的困难。在这次课程设计中,通过不断的查阅资料,并向同学老师请教,才顺利完成。在此, 我首先要感谢教我操作系统课程的严兵老师,正是在他细心而耐心的教学,我才有了可以完成这次课程设计的能力;其次我要感谢带本次课程设计的谭三老师,感谢他给我提供了锻炼的机会;最后感谢在这次课程设计中向我提供帮助的同学和老师,没有你们的帮助我是不可能这么快完成此次课程设计的任务的。参考文献1 张尧学等编著. 计算机操作系统教程.北京:清华大学出版社,2006.022 汤子瀛等编著.计算机操作系统.西安:西安电子科技出版社,1996.123 陈向群 编著.操作系统教程.

17、北京:北京大学出版社,2007.014 罗宇等编著.操作系统课程设计.北京:机械工业出版社,2005.09気持今Flying Get!dou都斗豆逗陡抖痘兜读蚪窦篼蔸乧侸兠凟剅吺唗投斣枓梪橷毭氀浢渎渎瞗窬窦脰艔豆读逾郖酘酡钭鋀钭閗闘阧餖饾斗鬦鬪鬬鬭du读度毒渡堵独肚镀赌睹杜督都犊妒顿蠹笃嘟渎椟牍黩髑芏儥凟剢剫匵厾噣土涂妬嬻剬塅媏彖断毈瑖碫篅簖缎专腶葮褍踹躖锻鍴Mr Najib met search crews at Pearce RAAF base near Perth on Thursday morning, before their planes left for the day, and

18、 then later held talks with Mr Abbott.The disappearance of MH370 has tested our collective resolve, he told a news conference.Faced with so little evidence, and such a Herculean task, investigators from Malaysia, the US, the UK, China, Australia and France have worked without pauseHe thanked both se

19、arch teams and the Australian government for their efforts in recent weeks, and said the search would go on.Continue reading the main storyMH370 - Facts at a glance 8 March:Malaysia Airlines Kuala Lumpur-Beijing flight carrying 239 people disappears Planes transponder, which communicates with ground

20、 radar, was switched off as it left Malaysian airspace Satellite pings indicate plane was still flying seven hours after satellite contact was lost 24 March:Based on new calculations, Malaysian PM says beyond reasonable doubt that plane crashed in southern Indian Ocean with no survivors What we know

21、 The search for flight MH370I know that until we find the plane, many families cannot start to grieve. I cannot imagine what they must be going through. But I can promise them that we will not give up, he said.Malaysian authorities have come in for heavy criticism over their management of the search

22、, especially from relatives of thWeather conditions were fair, with visibility of approximately 10km (6 miles), the Joint Agency Coordination Centre (JACC) - which is overseeing the search - said.The British submarine HMS Tireless is also in the southern Indian Ocean and is due to be joined by Royal

23、 Navy ship HMS Echo.The Australian Navy ship Ocean Shield is heading to the region and has equipment for detecting the planes black-box flight recorder.Experts say timing is critical as the flight recorder may only have enough battery power to send out a signal until 7 April.Air Chief Marshall Angus

24、 Houston, head of the JACC, warned that the search operation faced multiple difficulties.This is one of the most demanding and challenging search and rescue operations, or search and recovery operations, that I have ever seen and I think probably one of the most complex operations of this nature tha

25、t the world has ever seen, he told Mr Najib and Mr Abbott.On Wednesday Malaysian police chief Khalid Abu Bakar said investigators had cleared all passengers of possible involvement in hijacking, sabotage or having personal or psychological problems that could have been connected to the disappearance

26、.But he said that the criminal investigation could go on and on and on. We have to clear every little thing.At the end of the investigations, we may not even know the real cause. We may not even know the reason for this incident, he added.The police chief said that more than 170 interviews had been

27、conducted with family members of the pilots and crew members, and that even cargo and food served on the plane were being investigated in case ofdui对队堆兑敦镦碓怼憝兊兑垖埻塠夺夺対对嵟憞怼捶杸濧濻瀢瀩痽磓祋綐膭薱謉譈譵追鈗锐锐錞鎚镦鐜锐陮队頧鴭dul乧dun吨顿蹲墩敦钝盾囤遁不趸沌盹镦礅炖砘伅俊吨墪壿庉忳敦憞撉撴楯橔潡炖犜獤碷腞腯蜳豚踲蹾趸逇遯钝镦鐜顿驐duo多朵夺舵剁垛跺惰堕掇哆驮度躲踱沲咄铎裰哚缍亸仛兊兑兑凙刴剟剫吋喥嚉嚲垜埵堕墯夛夺奲媠嫷尮

28、崜嶞憜挅挆捶揣敓敚敠敪朶杂杕枤柁柂柮桗棰椯椭毲沰沱泽痥硾缍茤袳詑誃貀趓跢跥跿躱軃郸郸鈬錞锗铎锗陀陊隋隋隓飿饳驮駄鬌鮵鵽点e饿哦额鹅蛾扼俄讹阿遏峨娥恶厄鄂锇谔垩锷阏萼苊轭婀莪鳄颚腭愕呃噩鹗屙亚亜亚伪佮侉偔伪伪僫匎匼卾吪呝咢咹哑唖啈啊啐哑恶囐囮垭垭垩堨堮妸妿姶娾娿媕屵岋峉峩崿庵廅悪恶戹搕搤搹擜曷枙桠櫮唉歞歹歺洝涐湂猡珴琧痷皒睋砈砐砨砵硆硪磀礘胺蒍蕚蘁蚅蝁覨讹咯誐谔譌讍豟轭軶輵迗遌遻邑鈋锇锷鑩閜阏阨阸隘頞頟额颚饿餩騀鬲魤魥鳄鰪鳄鴳鵈鹅鵞鹗齃腭齾青年()、技术()、恋爱()、翡翠()、読书()、人(,)、幸福()、训读词汇:青()、术()、恋()、好()、読()、人()、幸()、汉字“海”可以读成“”

29、也可以读成“”。“”是它的音读,“”是它的训读。“史宪巨”等汉字一般只使用它们的一种音读,“贝又咲()”一般只使用它们的一种训读,但这类汉字较少。日语里的汉字通常都有两三种甚至更多的音训读发音。比如“生”,音读可读作“”,训读可读作“”等。同上面所说的,汉字每个字都有与之对应的音读、训读,但也有一些比较特殊。比如“梅雨”,它的发音为“”,不能把每个汉字分别读什么区分开来。我们把这类发音叫做“熟字训”。以下这些也是“熟字训”:田舎() 时雨()相扑(写作“相扑”,)土产() 为替()红叶()吹雪() 足袋()日和()蒲公英()en恩摁蒽嗯奀峎煾饐唔eng鞥eo仒eol乻eom欕eos旕er而二耳

30、儿饵尔贰洱珥鲕鸸佴迩铒侕児儿刵咡唲奶尒尓峏弍弐杒栭栮樲毦洏渪濡尔粫耏聏胹臑荋薾衈袻誀貮贰趰輀輭轜迩铒陑陾隭饵駬髵髶鲕鸸fa发法罚伐乏筏阀珐垡砝佱傠姂废彂拔拨拨栰橃泛沷泛灋珐疺発发瞂笩罚罸茷蕟藅贬贬醗发鍅阀髪发fan反饭翻番犯凡帆返泛繁烦贩范樊藩矾钒燔蘩畈蕃蹯梵幡仮伋凢凣勫匥噃墦奿婏嬎嬏嬔忛憣払拚旙幡杋柉棥枫橎氾泛渢滼瀪瀿烦犿璠畨盕矾笲笵范籓籵緐翻羳膰舤舧舩薠蟠蠜袢襎訉贩軓軬轓辺钒鐇颿飜饭飰鱕鷭攵犭fang放房防纺芳方访仿坊妨肪钫彷邡枋舫鲂仿匚埅堏旊昉昘昞汸淓牥瓬眆眪祊纺蚄访趽钫錺雱髣鲂鰟鳑鴋鶭fei非飞肥费肺废匪吠沸菲诽啡篚蜚腓扉妃斐狒芾悱镄霏翡榧淝鲱绯痱俷剕厞墢奜婓婔扉廃废怫拂昲暃曊朏杮柹棐

31、橃橨櫠渄濷犻猆琲痱癈砩祓笰绋绯绋巯胏胐茀茇萉蕜蕟蕡蜰蟦裴裵裶襏诽费镄陫靅靟飞飝餥馡騑騛髴鲱鼣鼥fen分份芬粉坟奋愤纷忿粪酚焚吩氛汾棼瀵鲼玢偾鼢偾匪喷喷坆坋坟奔奋妢岎帉幩弅愍愤扮拚敃昐朆朌枌梤棻橨歕濆炃燌燓燔獖盼瞓砏秎竕粪纷羒羵翂肦膹葐蒶蕡蚠蚡衯訜豮豶贲贲躮轒鈖錀鐼隫雰颁颁餴饙馚馩魵鱝鳻黂黺鼖feng风封逢缝蜂丰枫疯冯奉讽凤峰锋烽砜俸酆葑沣唪仹偑僼凨凬凮埄堸夆妦寷峯崶捀捧摓桻枫檒沨泛浲渢湗溄漨沣炐焨煈熢犎猦琒甮疯盽碸篈綘缝肨舽艂莑蘕蘴蚌覂讽豊丰賵赗逄鄷锋鎽鏠靊风飌冯鳯凤鴌鹏鹏麷覅fo佛仏仸坲梻fou否缶不垺妚炰紑缹缻芣杯雬鴀fu副幅扶浮富福负伏付复服附俯斧赴缚拂夫父符孵敷赋辅府腐腹妇抚覆辐肤氟佛俘傅讣弗涪袱市甫釜脯腑阜咐黼砩苻趺跗蚨芾鲋幞茯滏蜉拊菔蝠鳆蝮绂绋赙罘稃匐麸凫桴莩孚馥驸怫祓呋郛芙艴黻不乀仅夫俌俛偩逼冨冹刜包呒咈哹哺呒坿垘垺报妋姇娐婏妇媍嬎嬔宓尃岪峊巿帗弣彳佛复怀怤懯抙捊捬掊抚旉枎枹柎柫柭栿棴椨椱榑汱沕沸泭洑溥澓炥烰焤玞玸琈璷甶畉畐畗癁盙砆祔禣秿稪竎笰筟箁箙簠粰糐紨绂绋絥綍綒緮缚纀罘翇胕肤艀芣茀荂荴莆萉萯葍蓲蕧虙蚥蚹蛗蜅蝜衭袚袝复褔襆襥覄讣詂諨豧负费赋赙费踾軵辅輹辐还邚邞郍郙鄜酜酻釡鈇鉘鉜錇鍑鍢锫阝陚鞴韍韛韨頫颫颰驸髴鬴鮄鲋鮲鳆凫凫鳺鴔鵩鶝麸麬麱

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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