A system that simulates the activity of the memory management unit(MMU) in Java.
The purpose of the project is to create a system that simulates the activity of a memory management unit. The project is written in JAVA language.
There are several different paging algorithms where the pages are mapped to memory, we were asked to implement:
LRU - Least Recently Used. NRU - NOT Recently Used. Random. Application and system architecture In the project we created a client-server interface where we manage to send requests from the client using the GUI. Requests such as data access for the "browse" operation, update and delete information.
This system is built on OOP principles and has been used in common Design Pattern:
Observe Pattern. Strategy Pattern. Also, the GUI is used with the help of SWING and working with JSON files.
The system is structured to hold pages in memory identified by ID. The system transfers memory clips between the secondary memory and the head according to user requests. With the help of multi-threading, the system is able to receive requests from several customers at the same time.
You can watch the project in youtube: project filming