Windows学习旅程-进程(四)

本文详细介绍了进程的概念及其组成部分,包括进程内核对象与地址空间。同时解释了进程与线程的区别,进程如何运行,以及创建进程的具体步骤。

    进程是一个正在运行程序的实例,主要包括两部分: 进程内核对象(一个小的数据结构),地址空间(代码,数据)。进程是不活泼的,线程是活泼的,每个进程必须包括一个线程,当创建一个线程的时候进程必须给线程分配一个虚拟的地址空间(堆栈,堆),还要给线程分配CPU时间片(量程)。
    进程运行流程:首先创建一个进程内核对象,线程内核对象;然后初始化两个内核对象;加载命令行;环境变量;初始化C/C++运行期的全局变量,对C运行期内存单元分配函数(malloc和calloc)和其他低层输入/输出例程使用的内存栈进行初始化,C++类的全局变量;运行主线程(等线程);撤销进程(强烈建议重主线程中退出结束,不要用ExitProces(),TerminateProcess()).
   
   Main函数
  
  BOOL CreateProcess(
  LPCTSTR
lpApplicationName, // pointer to name of executable module
  LPTSTR lpCommandLine// pointer to command line string
  LPSECURITY_ATTRIBUTES lpProcessAttributes// process security attributes
  LPSECURITY_ATTRIBUTES lpThreadAttributes,   // thread security attributes
  BOOL bInheritHandles// handle inheritance flag
  DWORD dwCreationFlags, // creation flags
  LPVOID lpEnvironment// pointer to new environment block
  LPCTSTR lpCurrentDirectory,   // pointer to current directory name
  LPSTARTUPINFO lpStartupInfo// pointer to STARTUPINFO
  LPPROCESS_INFORMATION lpProcessInformation  // pointer to PROCESS_INFORMATION
);
  子进程
  枚举进程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值