zoukankan      html  css  js  c++  java
  • wrk 进程管理

    4.3.1 

          四种情况创建新进程并调用MmInitializeProcessAddressSpace, 调用完这个函数的时候,一个进程的地址空间基本建立了,

          可执行文件的映像和ntdll.dll(内存区对象)已经被映射到恰当的虚拟地址范围内。

          介绍到 在新进程的地址空间中,会克隆系统空间的页目录到新进程的页目录.

      KeAttachProcess() 与 KeDetachProcess()

      KeAttachProcess()函数的执行的时候,会把当前线程附载在新的的进程对象上,关键是把CR3切换为新进程的页目录

          KeDetachProcess   把线程恢复到父进程!

    4.3.2

         每个进程都有自己独立的页目录,前半部分对应于0x0 -- 0x7ff fffff 是每个进程私有的,后半部分是拷贝系统空间的页目录。

    4.3.3 VAD来管理0x0 -- 0x7ff fffff 空间!

    4.3.4  在VAD的节点中有一种重要的类型 内存区对象。 内存区对象是windows 平台 ,两个或多个进程之间共享内存的一种常用方法。

            它可以被映射到系统的页面文件或者其他文件上!

             内存区对象分种:一种建立在页面文件的基础上,称为:页面文件支撑的内存区

                另外一种被映射到其他文件,称为文件支撑的内存区,或者文件映射对象

  • 相关阅读:
    并发编程3
    并发编程2
    4/23
    4/22
    并发编程1
    粘包问题
    Navicat12激活
    IDEA创建maven项目报错解决:Failed to create a Maven project: 'C:/Users/../IdeaProjects/../pom.xml' already e
    IDEA
    windows下查看端口运行情况--解决端口冲突问题
  • 原文地址:https://www.cnblogs.com/shenlian/p/3504131.html
Copyright © 2011-2022 走看看