欢迎来到天天文库
浏览记录
ID:14616342
大小:65.50 KB
页数:7页
时间:2018-07-29
《操作系统实验报告四》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《操作系统原理》实验报告实验序号: 04 实验项目名称:进程控制学 号0907012112姓 名刘秀香专业、班计1实验地点实1-307指导教师李远敏实验时间2011/9/22一、实验目的及要求(1)通过对WindowsXP进行编程,来熟悉和了解系统。(2)通过分析程序,来了解进程的创建、终止。二、实验设备(环境)及要求(1)一台WindowsXP操作系统的计算机。(2)计算机装有MicrosoftVisualStudioC++6.0专业版或企业版三、实验内容与步骤1.实验编程(1)利用CreateProcess()函数创建一个子进程并且装
2、入画图程序(mspaint.exe)。阅读该程序,完成实验任务。原程序如下:#include#includeintmain(void){STARTUPINFOsi;PROCESS_INFORMATIONpi;ZeroMemory(&si,sizeof(si));si.cb=sizeof(si);ZeroMemory(&pi,sizeof(pi));if(!CreateProcess(NULL,"c:WINDOWSsystem32mspaint.exe",NULL,NULL,FALSE,0,NULL,NULL,&s
3、i,&pi)){fprintf(stderr,"CreatProcessFailed");return-1;}WaitForSingleObject(pi.hProcess,INFINITE);printf("childComplete");CloseHandle(pi.hProcess);CloseHandle(pi.hThread);}在“命令提示符”窗口运行CL命令产生可执行程序4-1.exe:C:>CL4-1.cpp(2)下面给出了一个使用进程和操作系统版本信息应用程序(文件名为4-5.cpp)。它利用进程信息查询的API函数GetProcessV
4、ersion()与GetVersionEx()的共同作用。确定运行进程的操作系统版本号。阅读该程序并完成实验任务。源程序如下:#include#include//利用进程和操作系统的版本信息的简单示例voidmain(){//提取这个进程的ID号DWORDdwIdThis=::GetCurrentProcessId();//获得这一进程和报告所需的版本,也可以发送0以便指明这一进程DWORDdwVerReq=::GetProcessVersion(dwIdThis);WORDwMajorReq=(WORD)(dw
5、VerReq>16);WORDwMinorReq=(WORD)(dwVerReq&0xffff);cout<<"ProcessID:"<6、_cast(&osvix));cout<<"RunningonOS:"<=5){//改变优先级::SetPriorityClass(::GetCurrentProcess(),//利用这一进程HIGH_PRIORITY_CL7、ASS);//改变为high//报告给用户cout<<"TaskManagershouldnownowindicatethis""processishighpriority."<#include#includestaticLPCTSTRg_szMutexName="w2kdg.ProcTer8、m.mutex.Suicide";//创建当前进程的
6、_cast(&osvix));cout<<"RunningonOS:"<=5){//改变优先级::SetPriorityClass(::GetCurrentProcess(),//利用这一进程HIGH_PRIORITY_CL
7、ASS);//改变为high//报告给用户cout<<"TaskManagershouldnownowindicatethis""processishighpriority."<#include#includestaticLPCTSTRg_szMutexName="w2kdg.ProcTer
8、m.mutex.Suicide";//创建当前进程的
此文档下载收益归作者所有