A Level Computer Science Paper 1: 1.2.1 System Software
This flashcard set explains the role of an operating system as a collection of programs that manage hardware and software interactions. It outlines key functions like user interface, memory management, interrupt handling, and processor scheduling, while clarifying that users typically interact with the OS through applications.
Operating System
A collection of programs that interact to provide an interface between a user and the computer
Key Terms
Operating System
A collection of programs that interact to provide an interface between a user and the computer
Do you interact with the OS?
Only via applications
OS Functions
User interface, memory management, interrupt management, processor scheduling
What does a user interface do?
Hides the complexity of the hardware by providing an interface for the user to interact with
4 types of user interface
Graphical User Interface
Command Line Interface
Menu-based Interface
Voice Interface
Graphical User Interface (GUI)
A computer interacts with a series of graphics
e.g. iPhones
Convenient, easy to use, intuitive
Related Flashcard Decks
Study Tips
- Press F to enter focus mode for distraction-free studying
- Review cards regularly to improve retention
- Try to recall the answer before flipping the card
- Share this deck with friends to study together
| Term | Definition |
|---|---|
Operating System | A collection of programs that interact to provide an interface between a user and the computer |
Do you interact with the OS? | Only via applications |
OS Functions | User interface, memory management, interrupt management, processor scheduling |
What does a user interface do? | Hides the complexity of the hardware by providing an interface for the user to interact with |
4 types of user interface | Graphical User Interface |
Graphical User Interface (GUI) | A computer interacts with a series of graphics |
Command Line Interface | The user has a command line they can use |
Menu-based Interface | The user can interact with a series of menus |
Voice Interface | You interact using your voice |
Paging |
|
Contiguous | Where all the memory for a process is next to each other |
Paging advantages and disadvantages | + Improves efficiency of space as data can be stored in all available space
|
Segmentation | Memory is divided into segments which can be of different lengths |
Segmentation advantages and disadvantages | + All memory for a process is together
|
Virtual Memory | An area of the hard disk drive is designated as virtual memory |
Swapping | Moving pages between RAM and Virtual Memory |
Disk Thrashing | Repeatedly swapping pages can slow down the computer as more time is spent swapping pages than running code |
Interrupt |
|
Parity Error | An error caused by irregular changes in data - caused by electromagnetism |
Arithmetic Overflow | Where the answer to the calculation is bigger than the memory space available e.g. /0 |
Buffer | A region of memory to temporarily store data |
Interrupt cycle |
|
How do interrupts work? | They have different priorities and are processed in order of priority |
What happens if an interrupt is interrupted? | The registers for the interrupt are also pushed onto the stack |
Why is scheduling needed? | A single-core CPU can only process instructions for one application at a time so the OS must schedule when each process uses the CPU |
Pre-emptive | The job that is running can be interrupted |
What is scheduling used for? | a) Provide an acceptable response time to all users |
Round Robin (RR) | Each process is allocated a maximum amount of processor time, at which stage it is put back on the ready queue |
First-come First-served (FCFS) | The first job to enter the ready queue is the first to enter the running state |
Shortest remaining time (SRT) | The ready queue is sorted based on how long each time each process has left, with the shortest running |
Shortest job first (SJF) | The user estimates how long each job will take and the shortest is run to completion |
Multilevel Feedback Queues (MLFQ) |
|
Starvation | Where a job has to wait a long time before it gets running on the CPU |
Fragmentation | When memory or storage is used inefficiently, reducing capacity or performance |
Intermediate code | Code between machine code and object code, independent of the processor architecture. Used to create a development environment to test programs |