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

Zygoma Namespace Reference


Classes

class  Cpu
 Generic processor base class. More...
class  Freestore
 The kernel freestore is a sequential container of bytes. More...
class  Interrupt
 The base class for an inyerrupt service routine. More...
struct  ISR
 An interrupt service routine entry. More...
class  InterruptDispatcher
 Relates hardware interrupts and software traps to routines that can service them. More...
class  Marrow
 The central core of the zygoma kernel. More...
class  MemoryStrider
 An iterator over a MemoryRange. More...
class  MemoryRange
 A template class for defining an iterable range of raw memory. More...
class  MemoryManager
 The central object which manages physical memory for the entire OS. More...
class  Module
 A loadable module. More...
class  PageFrame
 Expresses information on a Page Frame. More...
class  PageFrameLinearPolicy
class  PageFrameSelectionPolicy
 The Page Frame Selection Policy is used by the PageFrameTable to select an available (or replacement) page frame. More...
class  PageFrameTableIterator
 Iterators over the page frame table model STL-style random access iterators. More...
class  PageFrameTable
 The PageFrameTable maps physical RAM into used and unused page frames. More...
class  ProcessDescriptor
 A structure containing all information required to run a process. More...
class  Scheduler
 The scheduler/dispatcher for CPUs looking for something to do. More...
class  SpinLockMutex
 A MUTual EXclusion object that is lockable via a spinlock. More...
class  SpinLock
 A SpinLock. More...
class  ThreadDescriptor
 A structure containing all information required to run a thread. More...

Namespaces

namespace  Arch
 Brings all names defined in the architecture-specific namespace into the Zygoma::Arch namespace.
namespace  ia32

Typedefs

typedef Arch::AtomicWord AtomicWord
 An atomic word.
typedef std::list< ISRISRChain
 A chain of interrupt service handlers.
typedef std::vector< ISRChainISRTable
 A collection of ISR chains for all interrupts and exceptions.
typedef Arch::KStreamBuf KStreamBuf
 An architecture-independant kernel stream buffer type based on an architecture-dependant implementation.
typedef Arch::PhysicalAddress PhysicalAddress
 An address in (unmapped) physical memory.
typedef Arch::u08 u08
 A One-byte unsigned integral type.
typedef Arch::u16 u16
 A Two-byte unsigned integral type.
typedef Arch::u32 u32
 A Four-byte unsigned integral type.

Functions

static u32 getCR2 ()
 Gets the contents of Control Register 2.
static void setCR3 (u32 pagedir)
 Sets the contents of Control Register 3.
static u32 getCR3 ()
 Gets the contents of Control Register 3.
AtomicWord atomicExchange (volatile AtomicWord *mem, AtomicWord value)
 Atomically exchanges the value found at mem with the value passed in as value, returns the original value found at mem.
AtomicWord atomicExchangeAndAdd (volatile AtomicWord *mem, AtomicWord value)
 Atomically sets the value at mem to value, returns the sum of value and the value originally found at mem.
void atomicAdd (volatile AtomicWord *mem, AtomicWord value)
 Atomically adds value to the value stored at mem, stores result at mem.
Freestorefreestore ()
 Gets a reference to the global freestore object.
std::basic_ostream< char > & kerr ()
 Returns a reference to a standard IOStream object that will perform error message output to an appropriate platform-defined medium.
std::basic_ostream< char > & klog ()
 Returns a reference to a standard IOStream object that will output a log-level message to an appropriate platform-defined medium.
template<int stride>
bool operator== (const MemoryStrider< stride > &lhs, const MemoryStrider< stride > &rhs)
 Compares two memory strider objects for equality.
template<int stride>
bool operator!= (const MemoryStrider< stride > &lhs, const MemoryStrider< stride > &rhs)
 Compares two memory strider objects for equality.
bool operator== (const PageFrameTable &lhs, const PageFrameTable &rhs)
 Compares two PageFrameTables for equality.
bool operator== (const PageFrameTableIterator &lhs, const PageFrameTableIterator &rhs)
 Compares two PageFrameTable iterators for equality.
bool operator!= (const PageFrameTableIterator &lhs, const PageFrameTableIterator &rhs)
 Compares two PageFrameTable iterators for inequality.
bool operator< (const PageFrameTableIterator &lhs, const PageFrameTableIterator &rhs)
 Compares two PageFrameTable iterators for strict weak ordering.
PageFrameTableIterator operator+ (PageFrameTableIterator::difference_type n, const PageFrameTableIterator &i)
 Adds a scalar amount to a page frame table iterator.
PageFrameTableIterator operator+ (const PageFrameTableIterator &i, PageFrameTableIterator::difference_type n)
 Adds a scalar amount to a page frame table iterator.


Typedef Documentation

typedef std::list<ISR> Zygoma::ISRChain
 

A chain of interrupt service handlers.

typedef std::vector<ISRChain> Zygoma::ISRTable
 

A collection of ISR chains for all interrupts and exceptions.

typedef Arch::u08 Zygoma::u08
 

A One-byte unsigned integral type.

typedef Arch::u16 Zygoma::u16
 

A Two-byte unsigned integral type.

typedef Arch::u32 Zygoma::u32
 

A Four-byte unsigned integral type.


Function Documentation

Freestore& Zygoma::freestore  ) 
 

Gets a reference to the global freestore object.


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