《计算机操作系统》课程教学大纲课程编号1620034学分3.
5总学时64理论54实验/上机10英文课程名OperatingSystems开课院(系)信息学院开课系计算机系、网络系修订时间2006年9月1日课程简介"计算机操作系统"是计算机应计算机科学与技术专业学生必修的重要专业基础课,是一门涉及较多硬件知识的计算机系统软件课程.
在计算机软硬件课程的设置上,它起着承上启下的作用.
其特点是概念多、较抽象和涉及面广,其整体实现思想和技术难于理解.
操作系统对计算机系统资源实施管理,是所有其他软件与计算机硬件的唯一接口,所有用户在使用计算机时都要得到操作系统提供的服务.
操作系统技术是衡量一个国家计算机技术整体实力和创新能力的关键.
本课程主要内容包括:操作系统引论、进程管理、存储器管理、文件系统、设备管理等方面的概念和技术方法等.
课程大纲一、课程的性质与任务:操作系统是计算机科学与技术专业的主干课程,它综合了计算机软件和硬件技术,具有很强的系统性,是衡量教学质量和学生专业技能整体水平的重要课程.
操作系统技术的掌握与应用决定了一个国家计算机系统软件的研发能力,是培养计算机创新人才的重要途径.
学生通过本课程的学习,理解操作系统的基本概念和主要功能,它是如何组织和运作的,从而在本质上掌握计算机系统的运行机制,为迅速发展我国自己的操作系统,振兴我国信息产业打下坚实基础.
二、课程的目的与基本要求:本课程的目的掌握操作系统这一重要系统软件的结构与构造,它的各组成部分的具体工作原理与技术实现方法,各部分之间的相互联系.
通过系统的学习,学生站在一定高度掌握计算机系统的软硬件协作关系和整体工作原理,为今后从事专业工作打下坚实基础.
基本要求掌握理论上的重要概念和重要技术,例如多道程序、并发、分时、进程、进程间通信、虚拟存储器等.
由于本课程难度很高,对于专业技术经验不足的一般学生来讲本课程的内容不容易消化和掌握,加上课内学时有限等因素,建议教学过程中多建设网络视频资源,教师将讲授之内容以网络教学资源的形式提供给学生,一方面便于学生课前预习、课后复习,突破学时限制,另一方面为交互式教学和自主式学习创造条件,而且可以扩大课堂容量.
知识掌握要有层次结构.
第一个层次是主流操作系统(类UNIX)的常用命令,第二个层次是学会用系统调用编写C语言应用程序,第三个层次是操作系统原理的掌握.
这种层次结构教学方法保证不同层次的学生均有收获和成就感,也体现了由浅入深、由表及里的教学方法的灵活运用.
教学过程避免"重理论、轻实践"的现象,应该紧密结合一个具体操作系统来帮助学生理解深奥的理论与技术.
三、面向专业计算机科学与技术、信息管理与信息系统四、先修课程计算机组成原理、汇编语言、C语言程序设计、数据结构.
五、本课程与其它课程的联系操作系统是一门综合性较强的课程,需要学生有一定的计算机硬件基础知识,而操作系统本身是一个大型的系统软件,它的功能是通过定义数据结构和程序描述来实现的.
为此,学习本课程之前学生应具备计算机组成、汇编语言、C语言程序设计、数据结构等方面的知识.
操作系统又是其它许多后续课程如计算机网络、编译原理、软件体系结构等的先行课程,它为进一步学习后续课程打下基础.
六、教学内容安排、要求、学时分配及作业:第一章引言(INTRODUCTION),(理论2学时,实验2学时)§1.
1什么是操作系统(WHATISANOPERATINGSYSTEM)从功能扩展机和资源管理器两个角度掌握操作系统的概念(ExtendedMachine&ResourceManager)作业:WhatarethetwomainfunctionsofanoperatingsystemWhatisthedifferencebetweenkernelmodeandusermodeWhyisthedifferenceimportanttoanoperatingsystem§1.
2操作系统历史(HISTORYOFOPERATINGSYSTEMS)结合硬件发展了解操作系统的由来,通过现有的操作系统产品重点掌握分时系统和多任务系统的概念.
作业:WhatismultiprogrammingWhatisspoolingDoyouthinkthatadvancedpersonalcomputerswillhavespoolingasastandardfeatureinthefuture§1.
3操作系统中的重要概念(OPERATINGSYSTEMCONCEPTS)结合实际抽象出并理解进程、文件、shell等概念.
(Processes,Files,andShell)作业:WriteashellthatissimilartoFig.
1-10butcontainsenoughcodethatitactuallyworkssoyoucantestit.
Youmightalsoaddsomefeaturessuchasredirectionofinputandoutput,pipes,andbackgroundjobs.
§1.
4系统调用(SYSTEMCALLS)通过演示UNIX下的带有系统调用的C语言程序,使学生理解操作系统中各种主要的系统调用功能和使用方法.
作业:Writeaprogram(orseriesofprograms)totestalltheMINIX3systemcalls.
Foreachcall,tryvarioussetsofparameters,includingsomeincorrectones,toseeiftheyaredetected.
§1.
5操作系统结构(OPERATINGSYSTEMSTRUCTURE)一般了解单一结构、分层结构、虚拟机操作系统,理解微内核操作系统结构.
作业:Examinethedifferencebetweenamicro-kernelsystemandamonolithicsystem第二章进程(PROCESSES),(理论16学时,实验2学时)§2.
1进程引言(INTRODUCTIONTOPROCESSES),1学时掌握进程模型,理解进程实现,了解线程作业:WhyismultiprogrammingcentraltotheoperationofamodernoperatingsystemWhatarethethreemainstatesthataprocesscanbeinDescribethemeaningofeachonebriefly.
§2.
2进程间通信(INTERPROCESSCOMMUNICATION),2学时理解竞争条件、临界区、临界资源以及信号量的概念,掌握用信号量解决进程同步与互斥的方法作业:Doesthebusywaitingsolutionusingtheturnvariableworkwhenthetwoprocessesarerunningonashared-memorymultiprocessor,thatis,twoCPUs,sharingacommonmemoryConsideracomputerthatdoesnothaveaTESTANDSETLOCKinstructionbutdoeshaveaninstructiontoswapthecontentsofaregisterandamemorywordinasingleindivisibleaction.
Canthatbeusedtowritearoutineenter_regionsuchastheonefoundinFig.
2-12Giveasketchofhowanoperatingsystemthatcandisableinterruptscouldimplementsemaphores.
Showhowcountingsemaphores(i.
e.
,semaphoresthatcanholdanarbitrarilylargevalue)canbeimplementedusingonlybinarysemaphoresandordinarymachineinstructions.
Inasituationwithahigh-priorityprocess,H,andalow-priorityprocess,L,wasdescribed,whichledtoHloopingforever.
Doesthesameproblemoccurifround-robinschedulingisusedinsteadofpriorityschedulingDiscuss.
§2.
3经典进程同步问题(CLASSICALIPCPROBLEMS),1学时掌握进餐的哲学家问题,了解读者-写者和理发师问题作业:Inthesolutiontothediningphilosophersproblem(Fig.
2-20),whyisthestatevariablesettoHUNGRYintheproceduretake_forksConsidertheprocedureput_forksinFig.
2-20.
Supposethatthevariablestate[i]wassettoTHINKINGafterthetwocallstotest,ratherthanbefore.
Howwouldthischangeaffectthesolutionforthecaseof3philosophersFor100philosophersThereadersandwritersproblemcanbeformulatedinseveralwayswithregardtowhichcategoryofprocessescanbestartedwhen.
Carefullydescribethreedifferentvariationsoftheproblem,eachonefavoring(ornotfavoring)somecategoryofprocesses.
Foreachvariation,specifywhathappenswhenareaderorawriterbecomesreadytoaccessthedatabase,andwhathappenswhenaprocessisfinishedusingthedatabase.
§2.
4进程调度(SCHEDULING),1学时掌握轮转和多级队列调度算法作业:Round-robinschedulersnormallymaintainalistofallrunnableprocesses,witheachprocessoccurringexactlyonceinthelist.
WhatwouldhappenifaprocessoccurredtwiceinthelistCanyouthinkofanyreasonforallowingthisFivebatchjobsAthroughE,arriveatacomputercenteratalmostthesametime.
Theyhaveestimatedrunningtimesof10,6,2,4,and8minutes.
Their(externallydetermined)prioritiesare3,5,2,1,and4,respectively,with5beingthehighestpriority.
Foreachofthefollowingschedulingalgorithms,determinethemeanprocessturnaroundtime.
Ignoreprocessswitchingoverhead.
(a)Roundrobin.
(b)Priorityscheduling.
(c)First-come,first-served(runinorder10,6,2,4,8).
(d)Shortestjobfirst.
For(a),assumethatthesystemismultiprogrammed,andthateachjobgetsitsfairshareoftheCPU.
For(b)through(d)assumethatonlyonejobatatimeruns,untilitfinishes.
AlljobsarecompletelyCPUbound.
§2.
5MINIX中进程的实现(IMPLEMENTATIONOFPROCESSES),11学时了解源代码的组织和头文件(1学时);掌握MINIX引导和系统初始化(1学时),MINIX的中断处理、进程间通信和调度(4学时),硬件相关的内核支持(1学时)作业:Duringexecution,MINIXmaintainsavariableproc_ptrthatpointstotheprocesstableentryforthecurrentprocess.
WhyMINIXdoesnotbuffermessages.
Explainhowthisdesigndecisioncausesproblemswithclockandkeyboardinterrupts.
WhenamessageissenttoasleepingprocessinMINIX,theprocedurereadyiscalledtoputthatprocessontheproperschedulingqueue.
Thisprocedurestartsoutbydisablinginterrupts.
Explain.
TheMINIXproceduremini_reccontainsaloop.
Explainwhatitisfor.
MINIXessentiallyusestheschedulingmethodinFig.
2-43,withdifferentprioritiesforclasses.
Thelowestclass(userprocesses)hasround-robinscheduling,butthetasksandserversalwaysareallowedtorununtiltheyblock.
IsitpossibleforprocessesinthelowestclasstostarveWhy(orwhynot)AddcodetotheMINIXkerneltokeeptrackofthenumberofmessagessentfromprocess(ortask)itoprocess(ortask)j.
PrintthismatrixwhentheF4keyishit.
ModifytheMINIXschedulertokeeptrackofhowmuchCPUtimeeachuserprocesshashadrecently.
Whennotaskorserverwantstorun,picktheuserprocessthathashadthesmallestshareoftheCPU.
Modifythehwint_masterandhwint_slavemacrosinmpx386.
ssotheoperationsnowperformedbythesavefunctionareperformedinline.
WhatisthecostincodesizeCanyoumeasureanincreaseinperformance第三章输入/输出(INPUT/OUTPUT)(理论16学时,实验2学时)§3.
1I/O硬件原理(PRINCIPLESOFI/OHARDWARE),1学时了解I/O设备、设备控制器以及DMA等概念作业:Whatismemory-mappedI/OWhyisitsometimesusedExplainwhatDMAisandwhyitisused.
AlthoughDMAdoesnotusetheCPU,themaximumtransferrateisstilllimited.
Considerreadingablockfromthedisk.
Namethreefactorsthatmightultimatelylimittherateoftransfer.
§3.
2I/O软件原理(PRINCIPLESOFI/OSOFTWARE),1学时了解I/O软件的目标;掌握中断处理程序、设备驱动程序、设备无关I/O件以及用户空间I/O软件的概念、原理以及它们之间的层次调用关系作业:Eachdevicedriverhastwodifferentinterfaceswiththeoperatingsystem.
Oneinterfaceisasetoffunctioncallsthattheoperatingsystemmakesonthedriver.
Theotherisasetofcallsthatthedrivermakesontheoperatingsystem.
Nameonelikelycallineachinterface.
Whydooperatingsystemdesignersattempttoprovidedevice-independentI/OwhereveritispossibleInwhichofthefourI/Osoftwarelayersiseachofthefollowingdone(a)Computingthetrack,sector,andheadforadiskread.
(b)Maintainingacacheofrecentlyusedblocks.
(c)Writingcommandstothedeviceregisters.
(d)Checkingtoseeiftheuserispermittedtousethedevice.
(e)ConvertingbinaryintegerstoASCIIforprinting.
Whyareoutputfilesfortheprinternormallyspooledondiskbeforebeingprinted§3.
3死锁(DEADLOCKS),1学时一般了解死锁的概念和原理;了解死锁检测、预防和避免的算法§3.
4MINIXI/O系统概述(OVERVIEWOFI/OINMINIX),2学时掌握MINIX中断处理程序、设备驱动程序、设备无关I/O软件以及用户空间I/O软件的实现.
作业:WhyareRS232terminalsinterruptdriven,butmemory-mappedterminalsnotinterruptdrivenWhydooperatingsystemsprovideescapecharacters,suchasCTRL-VinMINIXAfterreceivingaCTRL-C(SIGINT)character,theMINIXdriverdiscardsalloutputcurrentlyqueuedforthatterminal.
Why§3.
5MINIX块设备(BLOCKDEVICESINMINIX),2学时掌握MINIX块设备驱动程序的软件结构作业:DescribethegeneralprincipleofMINIXblockdevicedrivers.
§3.
6RAM盘驱动(RAMDISKS),1学时理解MINIXRAM盘驱动程序的结构及工作原理§3.
7磁盘驱动(DISKS),2学时了解磁盘硬件和软件;掌握硬盘驱动程序的工作原理作业:ModifytheMINIXfloppydiskdrivertodotrack-at-a-timecaching.
§3.
8时钟(CLOCKS),2学时了解时钟硬件和软件;掌握时钟驱动程序的工作原理作业:ModifyMINIXtodisplaycurrenttimeeveryminuteontheupperrightcornerofthescreen.
Theclockinterrupthandleronacertaincomputerrequires2msec(includingprocessswitchingoverhead)perclocktick.
Theclockrunsat60Hz.
WhatfractionoftheCPUisdevotedtotheclock§3.
9终端驱动(TERMINALS),4学时掌握驱动程序的结构;理解键盘驱动程序;了解显示器驱动程序作业:WriteagraphicsdriverfortheIBMcolordisplay,orsomeothersuitablebitmapdisplay.
Thedrivershouldacceptcommandstosetandclearindividualpixels,moverectanglesaroundthescreen,andanyotherfeaturesyouthinkareinteresting.
Userprogramsinterfacetothedriverbyopening/dev/graphicsandwritingcommandstoit.
Modifytheterminaldriversothatinadditiontoahavingaspecialkeytoerasethepreviouscharacter,thereisakeytoerasethepreviousword.
第四章存储器管理(MEMORYMANAGEMENT)(理论12学时,实验2学时)§4.
1分区(PARTITIONMANAGEMENTALGORITHM),2学时理解位示图、链表等数据结构;掌握BF,WF,FF等分区分配算法;掌握虚地址、实地址、地址变换、重定位等概念与技术.
作业:Acomputerhas1GBofRAMallocatedinunitsof64KB.
HowmanyKBareneededifabitmapisusedtokeeptrackoffreememoryWhatisthedifferencebetweenaphysicaladdressandavirtualaddressUsingthepagemappingofFig.
4-8,givethephysicaladdresscorrespondingtoeachofthefollowingvirtualaddresses:(a)20(b)4100(c)8300§4.
2分段(SEGMENTATION),2学时理解保护模式下分段系统的硬件支持;掌握段表等重要的数据结构;掌握段的共享与保护机制.
作业:Describetheprincipleofsegmentation.
WhatmechanismsdoesPentiumusetoprotectoneprocessaccessedfromanotherDescribethecorrespondinghardwareandtables.
WhatmechanismsdoesPentiumusetoprotectkerneldataaccessedfromcommonprocessDescribethecorrespondinghardwareandtables.
§4.
3分页系统(PAGINGSYSTEMS),2学时掌握分页系统中页表结构、TLB、MMC及缺页中断等概念;掌握分页系统的地址变换过程;了解工作集、抖动等概念;掌握LRU和FIFO等页面置换算法;了解分页与分段的对比;了解段页式存储管理方案.
官方网站:点击访问青果云官方网站活动方案:—————————–活动规则—————————1、选购活动产品并下单(先不要支付)2、联系我司在线客服修改价格或领取赠送时间3、确认价格已按活动政策修改正确后,支付订单,到此产品开设成功4、本活动产品可以升级,升级所需费用按产品原价计算若发生退款,按资源实际使用情况折算为产品原价再退还剩余余额! 美国洛杉矶CN2_GIACPU内存系统盘流量宽带i...
hostwebis怎么样?hostwebis昨天在webhosting发布了几款美国高配置大硬盘机器,但报价需要联系客服。看了下该商家的其它产品,发现几款美国服务器、法国服务器还比较实惠,100Mbps不限流量,高配置大硬盘,$44/月起,有兴趣的可以关注一下。HostWebis是一家国外主机品牌,官网宣称1998年就成立了,根据目标市场的不同,以不同品牌名称提供网络托管服务。2003年,通过与W...
华为云怎么样?华为云用在线的方式将华为30多年在ICT基础设施领域的技术积累和产品解决方案开放给客户,致力于提供稳定可靠、安全可信、可持续创新的云服务,做智能世界的“黑土地”,推进实现“用得起、用得好、用得放心”的普惠AI。华为云作为底座,为华为全栈全场景AI战略提供强大的算力平台和更易用的开发平台。本次年终聚惠618活动相当给力,1核2G内存1m云耀云服务器仅88元/年起,送主机安全基础版套餐,...