Sample logfile for the Memory Manager

The information in parentheses is for your information and need not be printed to the log file.

Activity Log (this will list the events in order of occurrance)

Memory manager started at <time> on <date> using <first/best/worst fit> for <seconds> seconds. (NB: the sample output that you will provide with your documentation should be for a run of 30 seconds)

.
.
.
(events in order of occurrance, eg...)

process <pid> created at <time>. Located from block <start block number> for <process size> blocks. Percentage free memory (after process allocation) <%>.

process <pid> attempted to access block <block number>. Access <refused/granted>.

process <pid> terminated at <time>. Percentage free memory (after process terminated) <%>.

request for space denied (not enough space to accommodate new process). Request size <size>. Max consecutive free blocks <size>. .
.
.

Memory manager about to force existing processes <pid1, pid2, etc> to terminate to prepare to shut down at <time>. (This will be the last event recorded in the activity log. The average percentage of free memory will not be updated beyond this point).

(What is produced up to this point is the list of events, written to the log file as they occur. The remainder of the information is written to the log file after the memory manager has forced all processes to terminate, and before the memory manager itself terminates).

Events in order of process (this will list the events in order of process - i.e., this is the list of process activity lists)

Process <pid1>:
Created at <time>. Located from block <start block number> for <process size> blocks.

.
.
(memory access attempts)
block requested <block number>: <granted/refused>
.
.
.
Terminated at <time>

Process <pid2>:
Created at <time>. Located from block <start block number> for <process size> blocks.
.
.
.
(memory access attempts)
.
.
.
Terminated at <time>.

(etc, for all processes that ever existed)

(and finally)

Statistics:

Number of requests for space granted:
Number of requests for space denied:
Percentage of requests for space denied:
Number of memory access attempts granted:
Number of memory access attempts denied:
Average percentage free memory: