1.2.1 (Operating Systems) Flashcards
What is an Operating System?
- Software that manages computers, and allows humans to use them
- Held in permanent memory
- Loaded by BIOS
- Manages the computers hardware
What are the key roles of the OS?
(UFUMP)
- User Interface
- File management
- User management
- Memory management
- Peripheral management
What are the key roles of the OS?
(MBIPI)
- Memory management
- Backing store management
- Interrupt service routines
- Processor scheduling
- Input/Output management
What does the User Interface do?
Displays output to the user and allows them to interface with the hardware
What is file management?
- Allocating space in secondary storage for files
- Allowing users to open and rename / delete / create etc. files
What is user management?
- Creating user accounts and passwords
- Allocating space in memory for users’ data
- Setting rules for what users are allowed to do
What is memory management?
Transferring data between different areas of memory e.g. moving data from secondary storage to primary memory
What is peripheral management?
Allowing the user and operating system to interface with additional hardware
What are device drivers?
Software that allows an operating system to interface with peripheral devices
What is backing store management?
- Allocating and tracking data on secondary storage
- Allocating addresses in secondary memory
- modifying and deleting data in secondary memory
What is an interrupt, and give examples?
- A signal to the CPU to change the process it is completing
- Power failure, scheduled clock interrupt, input/output request
What is the interrupt process?
- Interrupt signal is received
- Stores values of registers for current task
- Completes interrupt service routine
- Restores previous task
What is paging?
- Memory is divided into 4kb sections
- Processes can be stored across several pages
- Pages can be loaded/ dumped as needed
- Can haveinternal fragmentation
What is segmentation?
- Dividing memory logically according to program needs
- Memory is divided into sections of variable length
- Sections can be loaded individually
- Can have external fragmentation
What is processor scheduling?
- Assigning different tasks to a CPU at different times to give the appearance of multitasking