Pixar Arch 0.25.8
Loading...
Searching...
No Matches
virtualMemory.h
Go to the documentation of this file.
1// Copyright 2019 Pixar
2//
3// Licensed under the terms set forth in the LICENSE.txt file available at
4// https://openusd.org/license.
5//
6// Modified by Jeremy Retailleau.
7
8#ifndef PXR_ARCH_VIRTUAL_MEMORY_H
9#define PXR_ARCH_VIRTUAL_MEMORY_H
10
13
14#include "pxr/arch/pxr.h"
15#include "pxr/arch/api.h"
16
17#include <cstddef>
18
19ARCH_NAMESPACE_OPEN_SCOPE
20
24ARCH_API void *
25ArchReserveVirtualMemory(size_t numBytes);
26
32ARCH_API bool
33ArchCommitVirtualMemoryRange(void *start, size_t numBytes);
34
40ARCH_API bool
41ArchFreeVirtualMemory(void *start, size_t numBytes);
42
50
58ARCH_API bool
59ArchSetMemoryProtection(void const *start, size_t numBytes,
60 ArchMemoryProtection protection);
61
62ARCH_NAMESPACE_CLOSE_SCOPE
63
64#endif // PXR_ARCH_VIRTUAL_MEMORY_H
bool ArchSetMemoryProtection(void const *start, size_t numBytes, ArchMemoryProtection protection)
Change the memory protection on the pages containing start and start + numBytes to protection.
bool ArchFreeVirtualMemory(void *start, size_t numBytes)
Return memory obtained with ArchReserveVirtualMemory() to the system.
void * ArchReserveVirtualMemory(size_t numBytes)
Reserve numBytes bytes of virtual memory.
bool ArchCommitVirtualMemoryRange(void *start, size_t numBytes)
Make the range of numBytes bytes starting at start available for reading and writing.
ArchMemoryProtection
Memory protection options, see ArchSetMemoryProtection().
Definition virtualMemory.h:44
@ ArchProtectNoAccess
Definition virtualMemory.h:45
@ ArchProtectReadOnly
Definition virtualMemory.h:46
@ ArchProtectReadWriteCopy
Definition virtualMemory.h:48
@ ArchProtectReadWrite
Definition virtualMemory.h:47