java os代写

You are to simulate a multi-partitioned memory management system where

processes are initiated and terminated requiring that memory space be allocated

and de-allocated. Free memory space is to kept in a singly linked list as

discussed in class, using the data structure containing allocation bits and

various pointers also discussed. This is a variable-partition system with

different sized “holes” and not the fixed (same) sized partions also

discussed in the text.

 

New processes are to be entered from a GUI with a size as a parameter.

(numbering should be automatic). Processes are also to be terminated by a

GUI action. With each process change a free memory list status is to

be output clearly showing the list items and their sizes. First-fit is to

be the allocation algorithm. Memory sizes and numbers of processes can be

small, just big enough to demonstrate the below listed functionality.

 

Functionality to be provided by you:

 

  1. FF allocation.

 

  1. De-allocation with the four combination possibilities accounted for and

demonstrated.

 

  1. A free space status provided for every instance of #1 and #2 above.

 

  1. A process status on command (p#, size, and where located).

 

  1. Garbage compaction as necessary.

 

  1. Appropriate error msg when there is insufficient memory available AFTER

compaction.