Вы находитесь на странице: 1из 2

National University of Computer & Emerging Sciences, Karachi Campus Operating Systems (CS206) Spring 2012

Project Phase 3

Phase 3 (CLI/GUI) What to do?


Make a command line interpreter/graphical user interface so that we can load the processes, run them and view the details You are required to support the commands listed below. Any other useful command according to your implementation would be appreciated but not required.

Process Related Commands


Load Process load file Execute Process run p process_id Debug Process debug -p process_id Debug All debug -a Execute All run -a Kill Process kill p process_id *Create Clone clone process_id *Block Process block process_id *Unblock Process unblock process_id Prompts the user for a process filename and loads the process into memory. Displays the process ID of the loaded process Asks user to select / enter a process id and then completely execute only the selected process Asks user to select / enter a process id and then execute only one instruction of the selected process Execute only one instruction of all the loaded processes Completely execute all the loaded processes Forcefully kill a process Create a clone of selected process Block a process (move it to blocked queue) Unblock a process (move it from blocked queue to ready queue)

Display Related Commands


List Process list a list b list r list -e Display PCB display p process_id Display Page Table display m process_id Memory Dump Lists the processes currently loaded. There should be additional option to display processes in a specified state (like blocked). -a all process -b blocked processes -r processes in ready state -e process in running state Displays the PCB of the selected process Displays the page table of the selected process

Show the memory dump of the selected process. Dump will be

Page 1 of 2

National University of Computer & Emerging Sciences, Karachi Campus Operating Systems (CS206) Spring 2012
Project Phase 3

dump process_id Free Frames frames -f Memory Details mem Allocated Frames frames -a Display Registers registers

shown on the screen and also written in a file named process_file_name.dump Show the frame number and location of free frames List the details about memory allocated to a given process Show the process id and frame number of all allocated frames Displays the current contents of the CPU registers (GPR, SPR, flag reg.)

Notes for CLI: Commands are case-sensitive Give appropriate error message if any error in the command/option or the argument Return to the prompt immediately after executing the command and displaying the required output Notes for CLI and GUI All output will also be written in a (log) file. Do not make any assumptions on file names (like specific extensions) A valid file name can contain letters/numbers/_/. All output files must be saved in one directory

Miscellaneous Commands
Shutdown *Hibernate Shuts down the operating system, during shutdown process all processes should be killed and their process IDs displayed Save the current state of the system and resume from the same state when the system is started again

Commands marked with * carry bonus marks

Page 2 of 2

Вам также может понравиться