Unit vmemorymanager
Uses
Classes, Interfaces, Objects and Records
Constants
Description
VMemoryManager - Virtual Memory Management.
Overview
Functions and Procedures
procedure init; |
function new_page(page_number : uint16) : boolean; |
function page_mappable(page_number : uint16) : boolean; |
function map_page(page_number : uint16; block : uint16) : boolean; |
function map_page_ex(page_number : uint16; block : uint16; PD : PPageDirectory) : boolean; |
function new_page_at_address(address : uint32) : boolean; |
procedure free_page(page_number : uint16); |
procedure free_page_at_address(address : uint32); |
function new_page_directory: uint32; |
function new_kernel_mapped_page_directory: uint32; |
function vtop(address : uint32) : uint32; |
Types
PPageDirEntry = ˆTPageDirEntry; |
TPageDirEntry = bitpacked record
Present,
Writable,
UserMode,
WriteThrough,
NotCacheable,
Accessed,
Reserved,
PageSize,
GlobalPage: Boolean;
Available: UBit3;
Address: UBit20;
end; |
TPageDirectory = Array[0..1023] of TPageDirEntry; |
PPageDirectory = ˆTPageDirectory; |
Variables
KERNEL_PAGE_DIRECTORY: PPageDirectory; |
PageDirectory: PPageDirectory; |
Description
Functions and Procedures
procedure init; |
function new_page(page_number : uint16) : boolean; |
function page_mappable(page_number : uint16) : boolean; |
function map_page(page_number : uint16; block : uint16) : boolean; |
function map_page_ex(page_number : uint16; block : uint16; PD : PPageDirectory) : boolean; |
function new_page_at_address(address : uint32) : boolean; |
procedure free_page(page_number : uint16); |
procedure free_page_at_address(address : uint32); |
function new_page_directory: uint32; |
function new_kernel_mapped_page_directory: uint32; |
function vtop(address : uint32) : uint32; |
Types
PPageDirEntry = ˆTPageDirEntry; |
TPageDirEntry = bitpacked record
Present,
Writable,
UserMode,
WriteThrough,
NotCacheable,
Accessed,
Reserved,
PageSize,
GlobalPage: Boolean;
Available: UBit3;
Address: UBit20;
end; |
TPageDirectory = Array[0..1023] of TPageDirEntry; |
PPageDirectory = ˆTPageDirectory; |
Variables
KERNEL_PAGE_DIRECTORY: PPageDirectory; |
PageDirectory: PPageDirectory; |
Author
Generated by PasDoc 0.16.0.