|
AquilaOS documentation
How it works, and its code
|
A mapping (map entry): a range of an address space, its permissions, and where its pages come from. More...
#include <vm.h>
Data Fields | |
| paddr_t | paddr |
| physical memory to map all at once (vm_map()), or 0 for pages that come in on page faults | |
| vaddr_t | base |
| where the mapping starts in its address space | |
| size_t | size |
| its size | |
| uint32_t | flags |
| its permissions and flags (VM_*) | |
| struct vm_anon * | vm_anon |
| its anon: the pages the process wrote to | |
| struct vm_object * | vm_object |
| its object: what its other pages come from (a file) | |
| size_t | off |
| where the mapping starts in its object | |
| struct qnode * | qnode |
| its node in its address space's list of mappings | |
A mapping (map entry): a range of an address space, its permissions, and where its pages come from.
| vaddr_t vm_entry::base |
where the mapping starts in its address space
Definition at line 72 of file vm.h.
Referenced by acpi_map(), arch_sigcode_map(), binfmt_elf_load_segments(), binfmt_fmt_load(), fb_putc(), mm_page_fault(), procfs_proc_maps(), procfs_proc_vmstats(), sys_mmap(), sys_munmap(), sys_sbrk(), vm_map(), vm_space_find(), vm_space_fork(), vm_space_insert(), and vm_unmap_full().
| uint32_t vm_entry::flags |
its permissions and flags (VM_*)
Definition at line 78 of file vm.h.
Referenced by acpi_map(), arch_sigcode_map(), binfmt_elf_load_segments(), binfmt_fmt_load(), check_violation(), earlycon_fb_init(), fbdev_vesa_map(), fbdev_vesa_prope(), mm_page_fault(), pf_anon(), pf_object(), pf_present(), pf_zero(), procfs_proc_maps(), procfs_proc_vmstats(), sys_mmap(), vm_map(), and vm_space_fork().
| size_t vm_entry::off |
where the mapping starts in its object
Definition at line 87 of file vm.h.
Referenced by binfmt_elf_load_segments(), fbdev_vesa_map(), mm_page_fault(), procfs_proc_maps(), procfs_proc_vmstats(), and sys_mmap().
| paddr_t vm_entry::paddr |
physical memory to map all at once (vm_map()), or 0 for pages that come in on page faults
Definition at line 69 of file vm.h.
Referenced by acpi_map(), earlycon_fb_init(), earlycon_fb_register(), fbdev_vesa_map(), fbdev_vesa_prope(), and vm_map().
| struct qnode* vm_entry::qnode |
its node in its address space's list of mappings
Definition at line 90 of file vm.h.
Referenced by binfmt_elf_load_segments(), binfmt_fmt_load(), sys_mmap(), sys_munmap(), vm_space_fork(), and vm_space_insert().
| size_t vm_entry::size |
its size
Definition at line 75 of file vm.h.
Referenced by acpi_map(), arch_sigcode_map(), binfmt_elf_load_segments(), binfmt_fmt_load(), earlycon_fb_init(), earlycon_fb_scroll(), fbdev_vesa_map(), fbdev_vesa_prope(), procfs_proc_maps(), procfs_proc_vmstats(), sys_mmap(), sys_munmap(), vm_map(), vm_space_find(), vm_space_fork(), vm_space_insert(), and vm_unmap_full().
| struct vm_anon* vm_entry::vm_anon |
its anon: the pages the process wrote to
Definition at line 81 of file vm.h.
Referenced by mm_page_fault(), pf_anon(), pf_object(), pf_present(), pf_zero(), vm_entry_destroy(), and vm_space_fork().
| struct vm_object* vm_entry::vm_object |
its object: what its other pages come from (a file)
Definition at line 84 of file vm.h.
Referenced by arch_sigcode_map(), binfmt_elf_load_segments(), binfmt_fmt_load(), mm_page_fault(), pf_object(), procfs_proc_maps(), procfs_proc_vmstats(), sys_mmap(), vfs_map(), vm_entry_destroy(), and vm_space_fork().