1.2.1 Systems Software Flashcards
What is the need of an “Operating System”?
It manages the hardware and the programs running on the system.
What examples of “Operating Systems” are there?
Windows, OS X, Linux, iOS and Android.
What different roles does the “Operating System” have?
Managing the hardware of the system;
Managing programs installed on the system and the those being run;
Managing the security of the system;
Providing the user with an interface that they can use.
What types of “Memory Management” are there?
Paging, Segmentation and Virtual Memory.
What is the purpose of “Memory Management”?
The OS has to ensure that memory is used efficiently without wasting space, and that data is stored securely so that data from different programs don’t interfere with each other.
What is “Paging”?
The process of dividing programs physically into equal-sized blocks.
What is “Segmentation”?
The process of dividing programs logically into blocks containing modules or routines.
Why is programs stored in memory divided into sections?
Because storing the entire program is wasteful, as the entire program is most likely not being used at a single team.
What is “Virtual Memory”?
This is the process of segmenting part of the Secondary Storage to be used as Main Memory.
Why is “Virtual Memory” used?
Because RAM (Main Memory) is much more expensive than ROM (Secondary Storage), and there is often hundreds of times more Secondary Storage than Main Memory, parts of the Secondary Storage is used as Main Memory if it is needed, to increase speed of the system and compensate for any Bottlenecking that may be occurring.
What is “Disk Thrashing”?
When parts of Secondary Storage is temporarily converted into Virtual Memory, it can also convert back and forth depending on what it is needed for, allowing for the store of data, as well as the store of the current programs being run. If this swap back and forth happens too often, Disk Thrashing occurs.
What is an “Interrupt”?
A Control Signal that is triggered when a device is in need of attention. Each Interrupt has a certain priority, meaning some Interrupts can overpower others.
When are the only times a NEW “Interrupt” can take effect immediately?
If the task currently being attended to has a lower priority than the new Interrupt.
What happens during the “ISR” (Interrupt Service Routine)?
The contents of the PC and other registers are copied to a stack;
The ISR can then be loaded by changing the PC to the value of where the ISR is in memory;
When the ISR is complete, the previous values of registers stored in the stack are restored from memory to the CPU.
When does the OS run an “ISR”?
If the OS finds an Interrupt with higher priority than the current task at the end of the Fetch-Decode-Execute cycle iteration, then the relevant ISR is run.