文档详情

操作系统实验题目1.doc

发布:2018-02-04约4.66千字共6页下载文档
文本预览下载声明
题目1:Windows进程的创建与销毁 内容及要求: ① 掌握Windows进程的创建和销毁API的调用方法;编程代码,在程序中创建和销毁一个Word进程; ② 能够挂起和激活被创建进程的主线程; ③ 通过Windows进程管理器查看系统进程列表的变化。 实验指导: ①创建进程的API BOOL CreateProcess( LPCTSTR lpApplicationName, LPTSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, BOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCTSTR lpCurrentDirectory, LPSTARTUPINFO lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation ); 例程: void main( VOID ){ STARTUPINFO si; PROCESS_INFORMATION pi; ZeroMemory( si, sizeof(si) ); si.cb = sizeof(si); ZeroMemory( pi, sizeof(pi) ); // Start the child process. if( !CreateProcess( NULL, // No module name (use command line). MyChildProcess, // Command line. NULL, // Process handle not inheritable. NULL, // Thread handle not inheritable. FALSE, // Set handle inheritance to FALSE. 0, // No creation flags. NULL, // Use parents environment block. NULL, // Use parents starting directory. si, // Pointer to STARTUPINFO structure. pi ) // Pointer to PROCESS_INFORMATION structure. ) { ErrorExit( CreateProcess failed. ); } // Wait until child process exits. WaitForSingleObject( pi.hProcess, INFINITE ); // Close process and thread handles. CloseHandle( pi.hProcess ); CloseHandle( pi.hThread ); } ② 销毁进程API BOOL TerminateProcess( HANDLE hProcess, UINT uExitCode ); ③ 挂起进程的主线程API DWORD SuspendThread( HANDLE hThread ); ④激活进程的主线程API DWORD ResumeThread( HANDLE hThread ); ⑤进程查看器 题目2:Windows进程间的通信 内容及要求: ① 理解Windows进程间通信的原理,掌握Windows进程间通信的编程方法; ② 掌握Windows管道的编程API调用方法; ③ 编写两个不同的程序,使用管道方式实现这两个程序运行时进程间的通信。 实验指导: 创建管道的API HANDLE CreateNamedPipe( LPCTSTR lpName, DWORD dwOpenMode, DWORD dwPipeMode, DWORD nMaxInstances, DWORD nOutBufferSize,
显示全部
相似文档