Question: Write a Java program that simulates a small CPU VM. The program dose not need a GUI. just displaying to the terminal, and outputting to a text file. I have enclose the described of the program and the file it will need to read. If you are able to help let me know thank you.
Project Description
Design and implement a program to simulate the operation of the SIMMAC based on the descriptions above.
Add a HALT instruction that dumps the contents of all registers and memory and then prints an "End of Job" message.
Your project must implement multi-tasking in a single queue using a round-robin scheduling discipline. You will implement process entities (jobs) that will allow your machine to run several SIMMAC machine-language programs. In order to do this you will define a Process Control Block (PCB) data structure that will be created for each job in your system. For this assignment assume each SIMMAC instruction is equivalent to one clock cycle. Additionally the time quantum value for round-robin scheduling is an integer multiple of a clock cycle.
The quantum value is to be set on the command line or prompted for during initialization. You will define the notion of an interrupt handler that will process a time quantum for each running job. On each job switch, you will print some state information such as which job will be loaded and the current state of the job queues.
Your version of SIMMAC will then run multiple SIMMAC machine language programs simultaneously. These programs will test the ability of your SIMMAC to handle multitasking and scheduling. You must design your system such that all SIMMAC machine programs are loaded from text files.
The SIMMAC must be designed to take command line arguments or to prompt for input files in addition to the previously specified items. By this mechanism, all SIMMAC language programs will be loaded. Since there is the LDI command, all data can be loaded into SIMMAC memory using SIMMAC programming statements.