1.2.1 Systems Software Flashcards
What is an Operating System?
a collection of programs that work together to supply a level of abstraction for the user to manage a computer.
What are the purposes of an OS?
#to manage processor #memory managment #device managment #platform for applications to run on #security (accepting or declining requests) #providing user interface
What is layering in terms of the OS
user -> application ->OS - > hardware
each layer doesnt concern about its neighbours but need data from them
Why is the OS needed?
As applications cannot allocate themself memory, processing time or secuirty.
Why do we require memory managment from the OS?
Since RAM is finite, so operating system will have to divide up and keep track of free space. Poor memory managment leads to fragmentation.
Methods of memory managment?
Paging
Segmentation
What does the OS rely on memory management to do ?
Split memory into blocks, which are allocated to processes.
Ensure security where processes dont cross data.
Extend memory if necessary using secondary memory
What is paging ?
When memory is split into equal size PAGES. It allows programs to run even if RAM is full by using virtual memory.
What are the drawbacks of paging ?
Some programs may not work if pages are split between RAM and secondary storage
Some memory can be wasted if a page isnt filled up.
What can paging be thought of ?
A person reading a book, so pages already read can be forgotten(freeing PAGES up) and the future are not needed yet(so theyre placed into virtual memory).
What is segmentation ?
A process that is similar to paging.However data is split into different size segments, which have an ID and a LENGTH, allowing modules to link in memory.
Which memory divisions are logical ?
Segments
Which memory divisions are physical ?
Pages
Why does the OS use a scheduler ?
The order of jobs has to be decided at the most efficient timing by using CPU time.
Describe the scheduling process…
- CPU is broken into time slices (given by the clock generating interrupts at regular intervals).
- The interrupt tells OS to give control to the scheduler.
- Scheduler saves the state of current process into a process descriptor table.
- Scheduler decides which process will run next and allows the CPU to execute it
What is a scheduler ?
A program, instructions used by the OS on manipulating jobs and CPU
Why are schedulers used?
To maximise the amount of processes completed in the shortest time possible To make efficient use of the processor To minimise delay To work upon priorities To ensure all jobs get processed
What is a process?
Instance of a computer that is being executed managed by a scheduler.
Descibe the scheduling queue.
A new processed opened by the user enters a ready queue waiting to be executed, when its turn is reached it enters a RUNNING PROCESS QUEUE. At this stage it can either be completed or be sent to the BLOCKED QUEUE due to an interupt. When interrupt is sorted it is put back into ready queue when it awaits further execution.
What happens in the PROCESS RUNNING QUEUE?
A processed with allocated CPU time is now being executed.They can only leave once finished unless it needs an I/O or there is an interrupt occurance.