当前位置: 首页 > article >正文

3.5 windows xp ReactOS EiAllocatePool()

系列文章目录

文章目录

  • 系列文章目录
    • @[TOC](文章目录) 道过 ExAllocatePool()分配缓冲区
  • EiAllocatePool()

道过 ExAllocatePool()分配缓冲区

EiAllocatePool()

道过 ExAllocatePool()分配缓冲区

/* FUNCTIONS ***************************************************************/

static PVOID STDCALL
EiAllocatePool(POOL_TYPE PoolType,
               ULONG NumberOfBytes,
               ULONG Tag,
               PVOID Caller)
{
   PVOID Block;

   /* FIXME: Handle SESSION_POOL_MASK, VERIFIER_POOL_MASK, QUOTA_POOL_MASK */
   if (PoolType & PAGED_POOL_MASK)//最低位为1
   {
      Block = ExAllocatePagedPoolWithTag(PoolType,NumberOfBytes,Tag);
   }
   else
   {
      Block = ExAllocateNonPagedPoolWithTag(PoolType,NumberOfBytes,Tag,Caller);
   }

   if ((PoolType & MUST_SUCCEED_POOL_MASK) && Block==NULL)
   {//只许成功不许失败,但是失败了
      KEBUGCHECK(MUST_SUCCEED_POOL_EMPTY);
   }
   return(Block);
}


http://www.kler.cn/a/380924.html

相关文章:

  • webpack的常见配置
  • 微控制器(MCU)如何运行存储在Flash的程序???
  • PowerCat反弹Shell
  • 深度学习基础知识-损失函数
  • WindowsDocker安装到D盘,C盘太占用空间了。
  • Visual Studio | 配置管理
  • HarmonyOS 移动应用开发
  • C++学习笔记----10、模块、头文件及各种主题(一)---- 模块(4)
  • MFCC特征与Fbank特征在语音识别中的应用
  • Unity3D PCG地图的使用与优化详解
  • npm入门教程2:npm历史
  • AI 写作(一):开启创作新纪元(1/10)
  • Qt 文件目录操作
  • Linux 进程终止 进程等待
  • linux同步执行命令脚本 (xcall)
  • ubuntu工具 -- ubuntu服务器临时没有网络,急需联网下载东西怎么办? 使用手机提供网络
  • AI打造超写实虚拟人物:是科技奇迹还是伦理挑战?
  • 【Python爬虫实战】深入 Selenium:从节点信息提取到检测绕过的全攻略
  • 基于C语言实现的TCP客户端
  • 哈希表相关知识
  • 解决wsl重启后debian配置vm.max_map_count不生效问题以及设置docker开机自启
  • Kafka在大数据处理中的作用及其工作原理
  • 20.04Ubuntu配置opencv并使用头文件
  • CSS--综合练习
  • 商业数据库 - oracle -数据字典
  • SQL 语法学习