[−][src]Module sunrise_bootstrap::paging::table
i386 page table / directory
Modules
detail | |
entry | i386 page table entry |
Structs
ActivePageDirectory | The page directory currently in use. |
ActivePageTable | A page table currently in use. |
ActivePageTables | The page tables set currently in use. |
EntryFlags | The flags of a table entry |
InactivePageDirectory | A temporary mapped page directory. |
InactivePageTable | A temporary mapped page table. |
InactivePageTables | A set of PageTables that are not the ones currently in use. We can't use recursive mapping to modify them, so instead we have to temporarily map the directory and tables to make changes to them. |
NoFlush | When passing this struct the TLB will not be flushed. Used by Inactive/PagingOff page tables |
PageDirectory | A page directory |
PageTable | A page table |
PagingOffDirectory | A directory we can modify by directly accessing physical memory because paging is off |
PagingOffPageSet | Used at startup when paging is off to create and initialized the first page tables |
PagingOffTable | A table we can modify by directly accessing physical memory because paging is off |
SmartHierarchicalTable | This is just a wrapper for a pointer to a Table or a Directory. It enables us to do handle when it is dropped |
TlbFlush | When passing this struct the TLB will be flushed. Used by ActivePageTables |
Enums
MappingType | The type of a Virtual Memory mapping. Can either be Present, in which case it is linked to a Frame and some flags, or Guard. |
Constants
DIRECTORY_RECURSIVE_ADDRESS | When paging is on, accessing this address loops back to the directory itself thanks to recursive mapping on directory's last entry |
Traits
Flusher | A trait used to decide if the TLB cache should be flushed or not |
HierarchicalTable | A table of entries, either the directory or one of the page tables |
PageDirectoryTrait | A trait describing all the things that a PageDirectory can do. |
PageTableTrait | |
PageTablesSet |