进程,顾名思义,是一个进行中的程序,即操作系统正在运行的程序的实例。它由两部分组成:

  1.进程的一部分是操作系统管理进程的内核对象。系统使用内核对象来存放进程的信息

  2.进程的另一部分是进程的地址空间,它包含进程运行所需要的代码和数据

  我们可以使用CreateProcess函数来创建一个进程,因为进程由两部分组成,所以系统在调用CreatProcess函数的时候,会创建一个进程内核对象,并将进程内核对象的是使用计数设置为1,然后系统为新进程创建一个虚拟的地址空间,并将进程运行需要的可执行文件和DLL文件的代码和数据加载到这个进程的地址空间中。

  进程就像一个容器,它自生是无法运行的,必须依靠一个在进程环境中的线程来负责执行进程中的代码。因此,进程创建的过程中,系统会为新进程创建一个主线程,然后通过执行C/C++运行库的启动代码就可以引发主线程的执行,主线程接着就会调用(w)WinMain和(w)main函数。

转载于:https://www.cnblogs.com/liujack/p/5466169.html

windows创建进程的过程相关推荐

  1. Windows的进程创建和映像装入

    关于Windows的进程创建和映像装入的过程,"Microsoft Windows Internals 4e"一书的第六章中有颇为详细的说明.本文就以此为依据,夹译.夹叙.夹议地作 ...

  2. 转载:Windows的进程创建和映像装入

    原文地址:http://blog.chinaunix.net/uid-20476365-id-1942481.html  关于Windows的进程创建和映像装入的过程,"Microsoft ...

  3. Linux下创建进程简介

    在博文https://blog.csdn.net/fengbingchun/article/details/108940548中简单介绍了Windows下通过函数CreateProcess创建进程的过 ...

  4. Windows创建的基本含义和进程的进程的内核

    过程 1 这意味着过程: 1.1   一个是在操作系统的内核对象管理处理. 的统计信息的地方. 1.2   还有一个是地址空间.它包括全部可运行模块或DL L 模块的代码和数据.它还包括动态内存分配的 ...

  5. 漫谈兼容内核之十七:再谈Windows的进程创建

    在漫谈之十中.我根据"Microsoft Windows Internals 4e"一书第六章的叙述介绍了Windows的进程创建和映像装入的过程.但是,由于缺乏源代码的支撑,这样 ...

  6. Windows下创建进程简介

    正在执行的应用程序称为进程,进程不仅仅是指令和数据,它还有状态.状态是保存在处理器寄存器中的一组值,如当前执行指令的地址.保存在内存中的值,以及唯一定义进程在任一时刻任务的所有其他值.进程与应用程序的 ...

  7. 【操作系统】进程的创建与终止过程中的父子进程

    进程在执行过程中,能通过系统调用创建多个新进程. 创建进程称为父进程,而新进程称为该进程的子进程.每一个新进程可以再创建其他进程,从而形成了进程树. 通常,进程需要一定的资源(如CPU时间.内存.文件 ...

  8. C/C++:Windows编程—创建进程、终止进程、枚举进程、枚举线程、枚举DLL

    创建进程的2种方式 1. 创建进程最简单的方法 UINT WINAPI WinExec(_In_ LPCSTR lpCmdLine, // 指向可执行文件_In_ UINT uCmdShow // 程 ...

  9. Windows平台下的session0创建进程的问题与解决办法

    Windows平台下的session0创建进程的问题与解决办法 参考文章: (1)Windows平台下的session0创建进程的问题与解决办法 (2)https://www.cnblogs.com/ ...

最新文章

  1. 网站不允许上传asp cer cdx htr等文件时
  2. SpringCloud(第二部分)
  3. python中change的用法_vue中select的使用、默认选择、onchange/change事件等操作实例
  4. YARN执行作业报错Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out.
  5. 三种复方门冬维甘滴眼液的抗菌能力比较
  6. 园区交换网络和路由网络综合设计,测试完工啦
  7. spring @component的作用详细介绍
  8. JDK自带的Timer类
  9. .net core中使用autofac进行IOC
  10. 2009年统考计算机考研真题
  11. python的输出语句_python 中简单的输出语句
  12. Doris export任务概率性cancelled第二种情况
  13. workman+thinkPHP 即时通讯
  14. 在VB.NET中生成随机数
  15. トゥーヴァ / 土法
  16. 超微服务器芯片,北京超微GPU服务器
  17. 自学CTP客户端开发记录001
  18. amdroid studio给备忘录添加背景音乐
  19. Python的各种转换
  20. 人生成功的生活经典治理名言

热门文章

  1. 《疯狂Java讲义》(十五)---- 内部类
  2. git pull 分支问题
  3. 字符串 不是有效的 AllXsd 值。
  4. [冷枫推荐]:数据库操作,内外联查询,分组查询,嵌套查询,交叉查询,多表查询,语句小结。...
  5. PowerPC E500 MMU详解
  6. MySQL裸机性能测试(2021)
  7. 浙江linux学习,浙江大学现代教务管理系统
  8. FPGA时钟激励编写(方法四)
  9. AD7606实际采样率输出数据量偏小
  10. vivado fpga最最简单的入门--led闪烁 创建工程+代码输入+添加引脚约束完整具体流程