操作系统实验报告4.. 下载本文

内容发布更新时间 : 2024/12/27 17:11:51星期一 下面是文章的全部内容请认真阅读。

《操作系统 》实验报告

实验序号: 4 实验项目名称:进程控制 学 号 实验地点 一、 1207122219 1-418 姓 名 指导教师 邝沃佳 李远敏 专业、班 实验时间 软金二班 2014/10/21 实验目的及要求 (1) 通过对WindowsXP进行编程,来熟悉和了解系统。 (2) 通过分析程序,来了解进程的创建、终止。 二、实验设备(环境)及要求 (1) 一台WindowsXP操作系统的计算机。 (2) 计算机装有Microsoft Visual Studio C++6.0专业版或企业版。 (3) ·CreateProcess()调用:创建一个进程。 (4) ·ExitProcess()调用:终止一个进程。 三、实验内容与步骤 (1)编程一 利用CreateProcess()函数创建一个子进程并且装入画图程序(mspaint.exe)。阅读该程序,完成实验任务。源程序如下: # include < stdio.h > # include < windows.h > int main(VOID) ﹛ STARTUPINFO si; PROCESS INFORMATION pi; ZeroMemory(&si,sizeof(si)); Si.cb=sizeof(si); ZeroMemory(&pi,sizeof(pi)); if(!CreateProcess(NULL, “c: \\ WINDOWS\\system32\\ mspaint.exe”, NULL, NULL, FALSE, 0, NULL, NULL, &si,&pi)) ﹛fprintf(stderr,”Creat Process Failed”); return — 1; ﹜ WaitForSingleObject(pi.hProcess,INFINITE); Printf(“child Complete”); CloseHandle(pi.hProcess); CloseHandle(pi hThread); ﹜ 修改后: #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, \ NULL, NULL, FALSE, 0, NULL, NULL, &si,&pi)) { fprintf(stderr,\ return -1; } WaitForSingleObject(pi.hProcess,INFINITE); printf(\ CloseHandle(pi.hProcess); CloseHandle(pi.hThread); } 在“命令提示符”窗口运行CL命令产生可执行程序4-1.exe: C:\\ >CL 4-1.cpp 实验任务:写出程序的运行结果。 4.正在运行的进程 (2)、编程二 下面给出了一个使用进程和操作系统版本信息应用程序(文件名为4-5.cpp)。它利用进程信息查询的API函数GetProcessVersion()与GetVersionEx()的共同作用。确定运行进程的操作系统版本号。阅读该程序并完成实验任务。 #include #include