windows下创建进程和线程

windows下创建进程和线程

ID:27524522

大小:178.00 KB

页数:17页

时间:2018-12-03

windows下创建进程和线程_第1页
windows下创建进程和线程_第2页
windows下创建进程和线程_第3页
windows下创建进程和线程_第4页
windows下创建进程和线程_第5页
资源描述:

《windows下创建进程和线程》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、Windows下创建进程和线程(ConsoIe下使用API)操作系统实验[2]…Windows下创建进程和线程(Console下使用API)EmilMatthew(EmilMatthew@126.com)摘要参照中所提供的方法,实现了Windows下,基于Console控制台模式的进程及线程的创建.Abstract:Bythereferenceofpassage[1],realizethecreationofthreadsandprocessesundertheconsolemode,withtheusageofWin32APIs.关键词Win32APIs,进程创建,线程创建.KeyWor

2、ds:Win32APIs,ProcessCreation,ThreadCreation前言谈到在Windows创建线程的例子,在网上的很多的参考都是基于MFC的。其实,就操作系统实验这个前提而言,大可不必去碰那个大型的MFC的框架。中提到了在Windows命令控制台下创建进程及线程的方法,木文对中的方法加以了实现,并做些简单的进程及线程的测试程序.1实验准备要实验的Windows下的多线程实验,应做如下准备a)在新建中选”Win32ConsoleApplication^aAnemptyprojectb)选”工程”设置”选项,在”设置”中选择“C/C++”标签,在”ProjectOption

3、中,将”MLd”参数改成“MTd”(如图1).General

4、DebugC/C++LinkResources

5、Bi

6、►ProjectSettingsSettingsFor:Win32DebugY分类Generali警告级别:□2优化:B刷新Level3「w警告作为错误旦调试信息:▼!Disable(Debug)S产生浏览信息ProgramDatabaseforEditandContinue£预处理程序定义:WIN32,DEBUG,CONSOLE,MBCSProjectOptions:yu/MLd/W3/Gm/GXfZ/Od/D1WIN3211/D"一DEBUG../D"_CONSOLE"

7、/D"_MBCS"/F^-Debug/testpch11/YX/Fo'-Debugf1/Fd"Debugf/FD确定结束图1以上两步对实验成功至关重要,否则,即是代码无误,在连接时同样会出现问题。2Windows下进程的创建在中,Windows的进程和线程模型被描述成”多进程,基于单进程的多线程”.在创建一个线程时,Windows会做大量的工作™创建一个新的地址空间,为进程分配资源以及创建一个基线程.CreateProcess函数的原型如下CreateProcess(LPCTSTRIpApplicationName,//pointertonameofexecutablemoudleLPTS

8、TRcmdLine,//pointertocommandlinestringLPSECURITY_ATTRIBUTESIpProcessAttributes,//pointertoprocesssecurityattributesLPSECURITY_ATTRIBUTESlpThreadAttributes,//pointertothereadsecurityattributesBOOLblnheritHandle,//handleinheritanceflagDWORDdwCreationFlag,//variouscreationflagsLPVOIDlpEnviroment,//En

9、viromentvariableLPCTSTRlpCurrentDirectory,//Child’scurrentdirectoryLPSTARTUPINFOIpStartupInfo,//pointertoStartuplnfoLPPROCESSJNFORMATIONIpProcessInformation//pointertoPROCESSJNFORMATION)虽然参数多了些,不过在现阶段的实验级别,大多数参数只要用默认值即可。下而要做的关于Windows使用进程的实验,在Linux系统下,可以使用类似execve(char*cmdName,char*cmdArgu)的语句从一个程

10、序中去执行其它的程序。而如果在Windows下,当使用CreateProcess去执行相应的功能时,只要去改变cmdLine中的内容即可,其它的参数使用默认值,具体见代码1:代码1执行的功能是从命令行中启动这个名叫的launch的测试程序,在launch后而应加上保存有需要打开程序路径的文件名如在命令行中键入>launchset.txt而set.txt中的内容为C:\WINDOWS\SYSTEM32\CALC.EX

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。