免费预览已结束,剩余10页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
操作系统原理实验 浙江工业大学计算机科学与技术学院王振华 实验一进程创建与终止 实验目的 利用Windows提供的API函数 编写程序 实现进程的创建和终止 如创建写字板进程及终止该进程 加深对操作系统进程概念的理解 观察操作系统进程运行的动态性能 获得包含多进程的应用程序编程经验 Windows所创建的每个进程都从调用CreateProcess API函数开始 该函数的任务是在对象管理器子系统内初始化进程对象 每一进程都以调用ExitProcess 或TerminateProcess API函数终止 背景知识 进程创建实例 BOOLCreateProcess LPCTSTRlpApplicationName LPTSTRlpCommandLine LPSECURITY ATTRIBUTESlpProcessAttributes LPSECURITY ATTRIBUTESlpThreadAttributes BOOLbInheritHandles DWORDdwCreationFlags LPVOIDlpEnvironment LPCTSTRlpCurrentDirectory LPSTARTUPINFOlpStartupInfo LPPROCESS INFORMATIONlpProcessInformation 各项参数意义 lpApplicationName 指定要执行的模块 包括可执行代码的EXE文件的文件名 lpCommandLine 指向一个以空结尾的串 该串定义了要执行的命令行 该命令行是可以在Windows提示符下执行的命令行 lpProcessAttributes 指向一个SECURITY ATTRIBUTES结构 该结构决定了返回的句柄是否可被子进程继承 lpThreadAttributes 指向一个SECURITY ATTRIBUTES结构 该结构决定了返回的句柄是否可被子线程继承 bInheritHandles 表明新进程是否可继承创建者进程的句柄 dwCreationFlags 定义控制优先类和进程创建的附加标志 lpEnvironment 指向一个新进程的环境块 lpCurrentDirectory 指向一个以空结尾的串 该串定义了子进程的当前驱动器和当前目录 lpStartupInfo 指向一个STARTUPINFO结构 该结构定义了新进程的主窗口将如何显示 lpProcessInformation 指向进程信息描述结构 该结构接受关于新进程的描述信息 各项参数意义 可执行文件运行时的文件名及其命令行 如lpCommandLine c windows system32 cmd exe 或lpApplicationName c windows system32 cmd exe lpStartupInfor描述新进程的窗口显示情况 定义STARTUPINFO结构 并赋予初始值 如 STARTUPINFOsi memset lpProcessInformation指向进程信息描述结构 接受关于新进程的描述信息 如 PROCESS INFORMATIONpi CreateProcess 调用的核心参数 所有进程都是以调用ExitProcess 或者TerminateProcess 函数结束的 TerminateProcess API函数只要打开带有PROCESS TERMINATE访问权的进程对象 就可以终止进程 并向系统返回指定的代码 如果不知道所创建进程中所有线程的状态 最好使用TerminateProcess 终止进程 终止进程 VOIDExitProcess UINTuExitCode uExitCode in Exitcodefortheprocessandallthreadsterminatedasaresultofthiscall UsetheGetExitCodeProcessfunctiontoretrievetheprocess sexitvalue UsetheGetExitCodeThreadfunctiontoretrieveathread sexitvalue ExitProcess BOOLTerminateProcess HANDLEhProcess UINTuExitCode hProcess in Handletotheprocesstoterminate ThehandlemusthavethePROCESS TERMINATEaccessright uExitCode in Exitcodetobeusedbytheprocessandthreadsterminatedasaresultofthiscall Value0meanscurrentprocess TerminateProcess typedefstruct PROCESS INFORMATION HANDLEhProcess Handletothenewlycreatedprocess HANDLEhThread Handletotheprimarythreadofthenewlycreatedprocess DWORDdwProcessId Valuethatcanbeusedtoidentifyaprocess DWORDdwThreadId Valuethatcanbeusedtoidentifyathread PROCESS INFORMATION LPPROCESS INFORMATION PROCESS INFORMATION 进程的创建和终止 编写一段程序 可以创建一个进程 并终止当前创建的进程 试观察记录程序执行的结果 并分析原因 利用VC 6 0实现上述程序设计和调试操作 对于进程创建的成功与否 终止进程操作的成功与否提供一定的提示信息 通过阅读和分析实验程序 学习创建进程 观察进程和终止进程的程序设计方法 实验内容与步骤 在开始本实验之前 请回顾教科书的相关内容需要做以下准备 一台运行Windows操作系统的计算机VisualStudio开发环境 工具 准备工作 思考 系统是怎样创建进程的 可执行文件加载时进行了那些处理 当首次调用新创建进程时
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能考试题库及答案
- 企业安全员年终总结范文四篇
- 2025年新《安全生产法》考试题库含答案
- 2025年园林局考试试题及答案
- 2015、2016年四川公务员考试《申论》真题及答案
- 2025年下半年下半年上海市市属部分事业单位招考工作人员易考易错模拟试题(共500题)试卷后附参考答案
- 2025山西太原尖草坪区城建城管应急大队招聘100人易考易错模拟试题(共500题)试卷后附参考答案
- 2025安徽望江宁能热电限公司招聘19人易考易错模拟试题(共500题)试卷后附参考答案
- 2025安徽安庆依江产业限公司招聘10人易考易错模拟试题(共500题)试卷后附参考答案
- 2025国网安徽省电力公司高校毕业生招聘170人(第三批)易考易错模拟试题(共500题)试卷后附参考答案
- 数控加工中心操作员培训教材
- 2024年上海选调考试真题
- 医疗事故处理条例的解读
- 智能电网建设2025年技术创新前景分析可行性
- 拜金主义课件
- 重冶浸出工三级安全教育(公司级)考核试卷及答案
- 安全检查表培训知识课件
- 出口退税实操课件
- 广西壮族自治区南宁市第二十四中学2024-2025学年七年级上学期期中考试数学试卷(含答案)
- 2024年国网青海电力考试真题
- 瑜伽线上教学课件模板图片
评论
0/150
提交评论