Add memory manager probe functions
All checks were successful
Builds / ExectOS (i686, release) (push) Successful in 34s
Builds / ExectOS (i686, debug) (push) Successful in 41s
Builds / ExectOS (amd64, release) (push) Successful in 36s
Builds / ExectOS (amd64, debug) (push) Successful in 43s

This commit is contained in:
2026-06-30 22:27:01 +02:00
parent ef4f9ba74d
commit d8f4f6bfd0
5 changed files with 325 additions and 0 deletions

View File

@@ -0,0 +1,44 @@
/**
* PROJECT: ExectOS
* COPYRIGHT: See COPYING.md in the top level directory
* FILE: xtoskrnl/includes/mm/probe.hh
* DESCRIPTION: Memory Manager read/write probe support
* DEVELOPERS: Aiken Harris <harraiken91@gmail.com>
*/
#ifndef __XTOSKRNL_MM_PROBE_HH
#define __XTOSKRNL_MM_PROBE_HH
#include <xtos.hh>
/* Memory Manager */
namespace MM
{
class Probe
{
public:
STATIC XTAPI VOID ProbeForRead(IN CONST PVOID Address,
IN SIZE_T Size,
IN ULONG Alignment);
STATIC XTAPI VOID ProbeForReadArray(IN CONST PVOID Array,
IN ULONG ItemSize,
IN ULONG ItemCount,
IN ULONG Alignment);
STATIC XTAPI VOID ProbeForReadStructure(IN CONST PVOID Address,
IN SIZE_T Size,
IN ULONG Alignment);
STATIC XTAPI VOID ProbeForWrite(IN PVOID Address,
IN SIZE_T Size,
IN ULONG Alignment);
STATIC XTAPI VOID ProbeForWriteArray(IN OUT PVOID Array,
IN ULONG ItemSize,
IN ULONG ItemCount,
IN ULONG Alignment);
STATIC XTAPI VOID ProbeForWriteStructure(IN PVOID Address,
IN SIZE_T Size,
IN ULONG Alignment);
};
}
#endif /* __XTOSKRNL_MM_PROBE_HH */