资源描述:
《操作系统 实验指导书1》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验1Win32常用API的使用实验目的:掌握使用常用的WindowsAPI函数,其中包括进程创建、等待进程结束和退出进程等。通过实验熟悉VC程序设计环境和MSDN帮助的使用。实验内容及要求:独立编写一个基于Windows的应用程序,在程序中完成一个新的进程的创建,并通过菜单控制新进程的结束。在新进程结束后自动结束该应用程序。SomeWin32APIcalls实验1Win32常用API的使用实验1Win32常用API的使用STARTUPINFOsi;PROCESS_INFORMATIONpi;ZeroMemory(&si,sizeof(si));si.cb=sizeof(si);
2、ZeroMemory(&pi,sizeof(pi));//Startthechildprocess.if(!CreateProcess("D:\Winamp\Winamp.exe",//Modulename.NULL,//Commandline.NULL,//Processhandlenotinheritable.NULL,//Threadhandlenotinheritable.FALSE,//SethandleinheritancetoFALSE.0,//Nocreationflags.NULL,//Useparent'senvironmentblock.NULL,//U
3、separent'sstartingdirectory.&si,//PointertoSTARTUPINFOstructure.&pi)//PointertoPROCESS_INFORMATIONstructure.){::MessageBox(NULL,"CreateProcessfailed.","CreateProcessfailed.",MB_OKCANCEL);}//Waituntilchildprocessexits.WaitForSingleObject(pi.hProcess,INFINITE);//Closeprocessandthreadhandles.Clo
4、seHandle(pi.hProcess);CloseHandle(pi.hThread);ExitProcess(1);ExampleofCodes实验2使用信号量解决生产者-消费者问题实验目的:掌握信号量的使用,利用信号量解决生产者-消费者问题。实验内容及要求:独立编写一个基于Windows的应用程序,在程序中创建两个线程,其中一个作为生产者,一个作为消费者,缓冲区的大小设置为1。首先不使用信号量同步两个线程,生产者将0-9十个数字依次放入缓冲区,消费者取出显示在显示器上,观察实验结果。接着使用信号量同步,观察实验结果。最后对实验结果进行分析。实验2使用信号量解决生产者-消费
5、者问题CreateThreadCreateSemaphoreWaitForSingleObjectReleaseSemaphoreExitThreadSetThreadPrioritySeveralCandidateWin32APIs实验3调度算法模拟及分析实验目的:通过模拟实验比较不同调度算法的性能,加深对进程调度算法的理解。实验内容及要求:独立编写一个基于Windows的应用程序,在程序中首先随机的或手工产生一个CPU等待队列(包括到达时间和估计运行时间),分别使用FCFS和SJF调度算法对该队列进行调度,计算平均轮转时间和系统吞吐率。最后对两种算法作出对比。Experime
6、nt4Programasimulationofthebanker’salgorithm.Yourprogramshouldcyclethrougheachofthebankclientsaskingforarequestandevaluatingwhetheritissafeorunsafe.Outputalogofrequests.Eachclientcanbemodeledbyanarrayofresourcerequests.Ateachschedulingpoint,arequestchosenrandomlyisevaluated(Thelotteryschedulin
7、galgorithmseemstobeagoodcandidate).Recordalogintoanarrayandoutputitfinally.Experiment5Writeaprogramthatsimulatesapagingsystem.Atthestartoftheprogram,theusershouldbeaskedtochooseapagereplacementalgorithm,e.g.FIFO,LRU.Inputthenumbersofreference