Main Page   Modules   Alphabetical List   Data Structures   File List   Data Fields  

ToyMM Struct Reference
[Toy Memory Manager Interface]

Structure that defines a Toy Memory Manager. More...

#include <ToyMem.h>

Collaboration diagram for ToyMM:

Collaboration graph
[legend]

Data Fields

ProcessprocessList [MAX_PROCESSES]
 Array of processes.

ToyMemmem
 Array of memory elements.

int memSize
 Size of memory element array.

SegListmemFree
 Linked list of free space holes.

int pageSize
 Page size. 0 in legacy mode.

InvPageTableinvPageTable
 Inverted page table. NULL in legacy mode.

int page
 Current position of linear scanning pointer.

FILE * swap
 Pointer to swap file, if any.

int watchPaging

Detailed Description

Structure that defines a Toy Memory Manager.

Contains an array of pointers to processes(NULL denotes no process), an array of memory elements, a linked list of free space, and a member describing the size of the memory array.

Definition at line 51 of file ToyMem.h.


Field Documentation

InvPageTable* ToyMM::invPageTable
 

Inverted page table. NULL in legacy mode.

Definition at line 64 of file ToyMem.h.

Referenced by TMM_AssignFrame(), TMM_Create(), TMM_EnablePaging(), TMM_FindFreeFrame(), TMM_FrameFree(), TMM_Free(), TMM_FreeFrame(), TMM_GetFrame(), and TMM_PagingEnabled().

union ToyMem* ToyMM::mem
 

Array of memory elements.

Definition at line 56 of file ToyMem.h.

Referenced by TMM_Create(), TMM_EmptyFrame(), TMM_Free(), TMM_StoreHeapInteger(), TMM_StoreHeapString(), TMM_StoreInteger(), and TMM_StoreString().

struct SegList* ToyMM::memFree
 

Linked list of free space holes.

Definition at line 60 of file ToyMem.h.

Referenced by TMM_Create(), TMM_EnablePaging(), and TMM_Free().

int ToyMM::memSize
 

Size of memory element array.

Definition at line 58 of file ToyMem.h.

Referenced by TMM_Create(), TMM_EnablePaging(), TMM_GetNumPages(), TMM_ParseLine(), TMM_PrintAllMemory(), and TMM_SwapCreate().

int ToyMM::page
 

Current position of linear scanning pointer.

Definition at line 67 of file ToyMem.h.

Referenced by TMM_Create(), TMM_EnablePaging(), TMM_FindFreeFrame(), and TMM_IncrementLinearScan().

int ToyMM::pageSize
 

Page size. 0 in legacy mode.

Definition at line 62 of file ToyMem.h.

Referenced by TMM_Create(), TMM_EmptyFrame(), TMM_EnablePaging(), TMM_GetFramedSize(), TMM_GetNumFrames(), TMM_GetNumPages(), TMM_GetRealAddress(), and TMM_PagingEnabled().

struct Process* ToyMM::processList[MAX_PROCESSES]
 

Array of processes.

Definition at line 54 of file ToyMem.h.

Referenced by TMM_AllocateHeap(), TMM_Create(), TMM_EnablePaging(), TMM_Free(), TMM_FreeHeap(), TMM_MarkPageSwappedOut(), TMM_PagedAllocateProcess(), TMM_PagedTerminateProcess(), TMM_PrintHeap(), TMM_PrintPages(), TMM_PrintPageTable(), TMM_PrintProcessMemory(), TMM_PrintProcessTable(), TMM_ReallocateHeap(), TMM_StoreHeapInteger(), TMM_StoreHeapString(), TMM_StoreInteger(), TMM_StoreString(), and TMM_TerminateProcess().

FILE* ToyMM::swap
 

Pointer to swap file, if any.

Definition at line 69 of file ToyMem.h.

Referenced by TMM_Create(), TMM_SwapCreate(), and TMM_SwapDestroy().


The documentation for this struct was generated from the following file:
Generated on Fri Apr 4 14:29:08 2003 for ToyMem by doxygen1.3-rc3