实验一__进程控制和描述课件.ppt

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验一__进程控制和描述课件

操作系统原理实验;实验一 进程控制与描述;Windows 所创建的每个进程都从调用CreateProcess() API函数开始,该函数的任务是在对象管理器子系统内初始化进程对象; 每一进程都以调用ExitProcess() 或TerminateProcess() API函数终止。;进程创建实例;各项参数意义;bInheritHandles,:表明新进程是否可继承创建者进程的句柄。 dwCreationFlags:定义控制优先类和进程创建的附加标志。 lpEnvironment:指向一个新进程的环境块。 lpCurrentDirectory:指向一个以空结尾的串,该串定义了子进程的当前驱动器和当前目录。 lpStartupInfo:指向一个STARTUPINFO结构,该结构定义了新进程的主窗口将如何显示。 lpProcessInformation:指向进程信息描述结构,该结构接受关于新进程的描述信息。;可执行文件运行时的文件名及其命令行,如 lpCommandLine=c:\\windows\\system32\\cmd.exe“ lpStartupInfor描述新进程的窗口显示情况。定义STARTUPINFO结构,并赋予初始值, 如:STARTUPINFO si; memset(si,0,sizeof(si)); si.cb=sizeof(si); lpProcessInformation指向进程信息描述结构,接受关于新进程的描述信息,如:PROCESS_INFORMATION pi;所有进程都是以调用ExitProcess() 或者TerminateProcess() 函数结束的。 TerminateProcess() API函数只要打开带有PROCESS_TERMINATE访问权的进程对象,就可以终止进程,并向系统返回指定的代码。 如果不知道所创建进程中所有线程的状态,最好使用TerminateProcess() 终止进程。;VOID ExitProcess( UINT uExitCode ); uExitCode [in] Exit code for the process and all threads terminated as a result of this call. Use the GetExitCodeProcess function to retrieve the processs exit value. Use the GetExitCodeThread function to retrieve a threads exit value.;BOOL TerminateProcess( HANDLE hProcess, UINT uExitCode ); hProcess[in] Handle to the process to terminate. The handle must have the PROCESS_TERMINATE access right. uExitCode[in] Exit code to be used by the process and threads terminated as a result of this call. Value 0 means current process. ;typedef struct _PROCESS_INFORMATION { HANDLE hProcess; //Handle to the newly created process. HANDLE hThread; //Handle to the primary thread of the newly created process. DWORD dwProcessId; //Value that can be used to identify a process. DWORD dwThreadId; //Value that can be used to identify a thread. } PROCESS_INFORMATION, *LPPROCESS_INFORMATION; ;进程的创建和终止。编写一段程序,可以创建一个进程,并终止当前创建的进程。试观察记录程序执行的结果,并分析原因。 利用VC++6.0实现上述程序设计和调试操作,对于进程创建的成功与否、终止进程操作的成功与否提供一定的提示框。 通过阅读和分析实验程序,学习创建进程、观察进程和终止进程的程序设计方法;在开始本实验之前,请回顾教科书的相关内容 需要做以下准备: 一台运行Windows 2000 /XP 操作系统的计算机 计算机中需安装Visual C

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档