3.1.1ReactOS系统中搜索给定长度的空间地址区间函数的实现

系列文章目录

//搜索给定长度的空间地址区间

MmFindGap();

PMADDRESS_SPACE AddressSpace,//该进程用户空间

ULONG_PTR Length,//寻找的空间间隔大小

ULONG_PTR Granularity,//粒度位,表明空间起点的对齐要求,注意是起点地址

ULONG_PTR TopDown);

函数的定义:

PVOID

NTAPI

MmFindGap(

PMADDRESS_SPACE AddressSpace,

ULONG_PTR Length,

ULONG_PTR Granularity,

BOOLEAN TopDown

);

文章目录


MmFindGap函数的实现

//搜索给定长度的空间地址区间

c 复制代码
//所属给定长度的空间地址区间


PVOID STDCALL
MmFindGap(
   PMADDRESS_SPACE AddressSpace,
   ULONG_PTR Length,
   ULONG_PTR Granularity,
   BOOLEAN TopDown)
{
   if (TopDown)//表示寻找的方向时从高端到低段还是从低端往高端
      return MmFindGapTopDown(AddressSpace, Length, Granularity);//高端往地段

   return MmFindGapBottomUp(AddressSpace, Length, Granularity);//低端往高端
}

//搜索给定长度的空间地址区间

PMADDRESS_SPACE AddressSpace,//该进程用户空间

ULONG_PTR Length,//寻找的空间间隔大小

ULONG_PTR Granularity,//粒度位,表明空间起点的对齐要求,注意是起点地址

ULONG_PTR TopDown);

下一篇文章对函数对函数MmFindGapTopDowm的实现最详细的分析,

相关推荐
andylauren1 小时前
(5)STM32 USB设备开发-USB键盘
stm32·嵌入式硬件·计算机外设
qq_243050791 小时前
irpas:互联网路由协议攻击套件!全参数详细教程!Kali Linux入门教程!黑客渗透测试!
linux·网络·web安全·网络安全·黑客·渗透测试·系统安全
Ronin-Lotus2 小时前
嵌入式硬件篇---ADC模拟-数字转换
笔记·stm32·单片机·嵌入式硬件·学习·低代码·模块测试
IT北辰2 小时前
Linux下 date时间应该与系统的 RTC(硬件时钟)同步
linux·运维·实时音视频
Jason Yan2 小时前
【经验分享】ARM Linux-RT内核实时系统性能评估工具
linux·arm开发·经验分享
肖田变强不变秃2 小时前
C++实现矩阵Matrix类 实现基本运算
开发语言·c++·matlab·矩阵·有限元·ansys
promising-w3 小时前
单片机基础模块学习——数码管
单片机·嵌入式硬件·学习
华清远见IT开放实验室3 小时前
嵌入式STM32创新教学:华清远见虚拟仿真实验平台与智能车项目师资培训
stm32·单片机·嵌入式硬件
步、步、为营3 小时前
.net无运行时发布原理
linux·服务器·.net
andylauren3 小时前
(1)STM32 USB设备开发-基础知识
stm32·单片机·嵌入式硬件