操作系统原理实验四(6页).doc
《操作系统原理实验四(6页).doc》由会员分享,可在线阅读,更多相关《操作系统原理实验四(6页).doc(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-操作系统原理实验四-第 6 页实验4 进程控制1、 实验目的(1) 通过对WindowsXP进行编程,来熟悉和了解系统。(2) 通过分析程序,来了解进程的创建、终止。2、 实验工具(1) 一台WindowsXP操作系统的计算机。(2) 计算机装有Microsoft Visual Studio C+6.0专业版或企业版。3、 预备知识(3) CreateProcess()调用:创建一个进程。(4) ExitProcess()调用:终止一个进程。4、实验编程(1)编程一 利用CreateProcess()函数创建一个子进程并且装入画图程序(mspaint.exe)。阅读该程序,完成实验任务。源程
2、序如下: # include # include int main(VOID) STARTUPINFO si; PROCESS INFORMATION pi; ZeroMemory(&si,sizeof(si); Si.cb=sizeof(si); ZeroMemory(&pi,sizeof(pi); if(!CreateProcess(NULL, “c: WINDOWSsystem32 mspaint.exe”, NULL, NULL, FALSE, 0, NULL, NULL, &si,&pi) fprintf(stderr,”Creat Process Failed”);return 1
3、;WaitForSingleObject(pi.hProcess,INFINITE);Printf(“child Complete”);CloseHandle(pi.hProcess);CloseHandle(pi hThread); 在“命令提示符”窗口运行CL命令产生可执行程序4-1.exe: C: CL 4-1.cpp 实验任务:写出程序的运行结果。 4正在运行的进程 (2)、编程二 下面给出了一个使用进程和操作系统版本信息应用程序(文件名为4-5.cpp)。它利用进程信息查询的API函数GetProcessVersion()与GetVersionEx()的共同作用。确定运行进程的操作系
4、统版本号。阅读该程序并完成实验任务。 #include #include/利用进程和操作系统的版本信息的简单示例Void main() /提取这个进程的ID号 DWORD dwIdThis=:GetCurrentProcessId(); /获得这一进程和报告所需的版本,也可以发送0以便指明这一进程DWORD dwVerReq=:GetProcessVersion(dwIdThis);WORD wMajorReq=:(WORD)dwVerReq16);WORD wMinorReq=:(WORD)dwVerReq & oxffff);std:cout ”Process ID:” dwIdThis
5、”,requires OS:” wMajorReq wMinorReq std:endl;/设置版本信息的数据结构,以便保存操作系统的版本信息OSVERSIONINFOEX osvix;:ZeroMemory(&osvix,sizeof(osvix);Osvix.dwOSVersionInfoSize=sizeof(osvix);/提取版本信息和报告:GetVersionEx(reinterpret cast(&osvix);Std:cout ”Running on OS:” osvix.dwMajorVersion ”.” osvix.dwMinorVersion =5 /改变优先级:Ser
6、PriorityClass(:GetCurrentProcess() /利用这一进程 HIGH PRIORITY CLASS); /改变为high/报告给用户Std:cout ”Task Manager should now now indicate this” “process is high priority.” std:endl;实验参考:在Visual C+窗口的工具栏中单击“打开”按钮,在“打开“对话框中找到并打开4-2.cpp源程序。单击Build菜单中的Compile 4-2.cpp命令,再单击“是”按钮确认。系统对4-2.cpp源程序进行编译。编译完成后,单击Build菜单中的
7、Build 4-2.exe命令,建立4-2.exe可执行文件。在工具栏单击Execute Program(执行程序)按钮,执行4-2.exe程序。实验任务:写出程序运行后的以下几项结果。当前PID信息 。当前操作系统版本 。系统提示信息 。5、终止进程(3)编程三 下面给出了一个终止进程的应用程序(文件名为4-3.cpp),它先创建一个子进程,然后命令它发出“自杀弹”互斥体去终止自身的运行。阅读该程序并完成实验任务。 #include #include #include satic LPCTSTR g szMutexName=”w2kdg.ProcTerm.mutex.Suicide”;/创建
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 原理 实验
限制150内