FreeNOS
ARM64Map.cpp
Go to the documentation of this file.
1/*
2 * Copyright (C) 2025 Ivan Tan
3 * Copyright (C) 2015 Niek Linnenbank
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 3 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19#include <FreeNOS/System.h>
20#include <MemoryBlock.h>
21#include <Memory.h>
22#include "ARM64Map.h"
23
ARM64Map()
Constructor.
Definition ARM64Map.cpp:24
static void * set(void *dest, int ch, unsigned count)
Fill memory with a constant byte.
@ UserData
< User program data from libexec, e.g.
Definition MemoryMap.h:56
@ UserArgs
< Used for copying program arguments and file descriptors
Definition MemoryMap.h:61
@ UserStack
< User stack
Definition MemoryMap.h:58
@ UserShare
< User shared dynamic memory mappings
Definition MemoryMap.h:60
@ UserPrivate
< User private dynamic memory mappings
Definition MemoryMap.h:59
@ UserHeap
< User heap
Definition MemoryMap.h:57
@ KernelPrivate
< Kernel dynamic memory mappings
Definition MemoryMap.h:55
@ KernelData
< Kernel program data from libexec, e.g.
Definition MemoryMap.h:54
Memory::Range m_regions[MEMORYMAP_MAX_REGIONS]
Memory ranges.
Definition MemoryMap.h:95
#define GigaByte(v)
Convert gigabytes to bytes.
Definition Macros.h:60
#define MegaByte(v)
Convert megabytes to bytes.
Definition Macros.h:57
#define KiloByte(v)
Convert kilobytes to bytes.
Definition Macros.h:54
@ Executable
Definition Memory.h:43
@ Readable
Definition Memory.h:41
@ Writable
Definition Memory.h:42
Size size
Size in number of bytes.
Definition Memory.h:59
Address phys
Physical address.
Definition Memory.h:58
Address virt
Virtual address.
Definition Memory.h:57
Access access
Page access flags.
Definition Memory.h:60