Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Kernel Physical Memory Management
[Kernel Memory Management]

Collaboration diagram for Kernel Physical Memory Management:


Detailed Description

These functions and objects manage the physical memory in the system in an architecture-independant way.

they are necessarily built on the architecture-specific physical memory management.


Files

file  memorymanager.h
 Arch-independent memory manager interface.
file  pageframe.h
 Interface for a Page Frame entry.
file  pageframetable.h
 Kernel physical memory management declarations.

Classes

class  Zygoma::MemoryStrider< stride >
 An iterator over a MemoryRange. More...
class  Zygoma::MemoryRange< stride >
 A template class for defining an iterable range of raw memory. More...
class  Zygoma::PageFrame
 Expresses information on a Page Frame. More...
class  Zygoma::PageFrameTableIterator
 Iterators over the page frame table model STL-style random access iterators. More...
class  Zygoma::PageFrameTable
 The PageFrameTable maps physical RAM into used and unused page frames. More...

Typedefs

typedef Arch::PhysicalAddress Zygoma::PhysicalAddress
 An address in (unmapped) physical memory.

Functions

template<int stride>
bool Zygoma::operator== (const MemoryStrider< stride > &lhs, const MemoryStrider< stride > &rhs)
 Compares two memory strider objects for equality.
template<int stride>
bool Zygoma::operator!= (const MemoryStrider< stride > &lhs, const MemoryStrider< stride > &rhs)
 Compares two memory strider objects for equality.
bool Zygoma::operator== (const PageFrameTableIterator &lhs, const PageFrameTableIterator &rhs)
 Compares two PageFrameTable iterators for equality.
bool Zygoma::operator!= (const PageFrameTableIterator &lhs, const PageFrameTableIterator &rhs)
 Compares two PageFrameTable iterators for inequality.
bool Zygoma::operator< (const PageFrameTableIterator &lhs, const PageFrameTableIterator &rhs)
 Compares two PageFrameTable iterators for strict weak ordering.
PageFrameTableIterator Zygoma::operator+ (PageFrameTableIterator::difference_type n, const PageFrameTableIterator &i)
 Adds a scalar amount to a page frame table iterator.
PageFrameTableIterator Zygoma::operator+ (const PageFrameTableIterator &i, PageFrameTableIterator::difference_type n)
 Adds a scalar amount to a page frame table iterator.
bool Zygoma::operator== (const PageFrameTable &lhs, const PageFrameTable &rhs)
 Compares two PageFrameTables for equality.


Typedef Documentation

typedef Arch::PhysicalAddress Zygoma::PhysicalAddress
 

An address in (unmapped) physical memory.


Function Documentation

bool Zygoma::operator!= const PageFrameTableIterator &  lhs,
const PageFrameTableIterator &  rhs
[inline]
 

Compares two PageFrameTable iterators for inequality.

Parameters:
lhs [IN] A page frame table iterator.
rhs [IN] A page frame table iterator.
Returns:
true if lhs is not equal to rhs.

template<int stride>
bool Zygoma::operator!= const MemoryStrider< stride > &  lhs,
const MemoryStrider< stride > &  rhs
[inline]
 

Compares two memory strider objects for equality.

Parameters:
lhs [IN] A memory strider.
rhs [IN] A memory strider.
Returns:
true if the MemorySTriders are not equal, false otherwise.

PageFrameTableIterator Zygoma::operator+ const PageFrameTableIterator i,
PageFrameTableIterator::difference_type  n
 

Adds a scalar amount to a page frame table iterator.

Parameters:
i [IN] The amount to icrement the iterator.
n [IN] The iterator to increment.
Returns:
the incremented iterator.

PageFrameTableIterator Zygoma::operator+ PageFrameTableIterator::difference_type  n,
const PageFrameTableIterator i
 

Adds a scalar amount to a page frame table iterator.

Parameters:
n [IN] The iterator to increment.
i [IN] The amount to icrement the iterator.
Returns:
the incremented iterator.

bool Zygoma::operator< const PageFrameTableIterator &  lhs,
const PageFrameTableIterator &  rhs
[inline]
 

Compares two PageFrameTable iterators for strict weak ordering.

Parameters:
lhs [IN] A page frame table iterator.
rhs [IN] A page frame table iterator.
Returns:
true if lhs compares less than rhs.

bool Zygoma::operator== const PageFrameTable &  lhs,
const PageFrameTable &  rhs
[inline]
 

Compares two PageFrameTables for equality.

Parameters:
lhs [IN] A page frame table.
rhs [IN] A page frame table.
Returns:
true if lhs is equal to rhs.

bool Zygoma::operator== const PageFrameTableIterator &  lhs,
const PageFrameTableIterator &  rhs
[inline]
 

Compares two PageFrameTable iterators for equality.

Parameters:
lhs [IN] A page frame table ietrator.
rhs [IN] A page frame table ietrator.
Returns:
true if lhs is equal to rhs.

template<int stride>
bool Zygoma::operator== const MemoryStrider< stride > &  lhs,
const MemoryStrider< stride > &  rhs
[inline]
 

Compares two memory strider objects for equality.

This is a value comparison, in that two memory striders are considered equal if they are both currently pointing to the same physical memory address.

Parameters:
lhs [IN] A memory strider.
rhs [IN] A memory strider.
Returns:
true if the MemorySTriders are equal, false otherwise.


Generated on Fri Sep 2 10:45:03 2005 for zygoma by doxygen 1.4.2