1.2.1 - 1.2.2 Systems software + Applications generation Flashcards
What are the main purposes of an operating system?
- Managing the hardware
- Managing the software (loading programs in and out of RAM)
- Security (username and password)
- Providing a user interface
Name 4 common operating systems.
Windows, Android, Linux, iOS
What is the kernel?
The kernel is the core of the operating system.
What are the tasks of the kernel?
- Loading and unloading programs from RAM
- CPU scheduling
- Memory management
- Storing files to and from storage
- File management
- Data security
Why do different operating systems have different kernels?
Because different devices have different priorities.
e.g. A kernel for a mobile phone will need to be as power efficient as possible whereas one for a desktop will be optimised for performance
What are device drivers?
A device driver is a piece of software which enables the operating system to interact with and control a specific device.
Who makes the driver for a specific device?
The company who created the device.
What is a user interface?
Software that allows the user to interact with a computer.
Name and describe two common user interfaces.
GUI - graphical user interface - uses images, graphics and icons to provide a clear interface for the user to control the computer.
CLI - command line interface - allows the user to type commands directly into the computer.
Give 3 examples of utilities.
- Print queue
- File management
- Antivirus
- Disk defragmenter
What is the job of the memory manager?
- Allocating memory to each program that runs
- Mapping logical addresses to actual physical addresses
- Prevents programs from overwriting each other
- Moving files to virtual memory when running short on RAM
Give two ways that an operating system manages memory.
Segmentation and Pagination
How does segmentation work?
- An application which is running is split into processes called segments
- Each segment is a program that is allocated a space in RAM and executed separately.
- The large program is run by running the smaller segments as required.
What does segmentation do?
Allows a program to be run on a system without using up too much memory.
What is the code segment?
A segment which holds the executable instructions for the process.
What is the data segment?
A segment which holds all of the variables for the process.
What is the stack segment?
A segment which holds the memory addresses for the process which is running.
What is the free memory segment?
A segment which allows the stack segment to grow and shrink as necessary.
How does segmentation prevent files from overwriting each other?
All the processes have a set section of memory which is controlled by the OS.
What is virtual memory?
A section of the hard disk which can be used as memory when the memory is full.
Why is virtual memory not ideal to use?
Because the hard disk is much slower than the RAM.
How does paging work?
- The RAM is split up into numbered pages, each 4MB in size.
- Pages that have not recently been used can be copied from the RAM into virtual memory to free up space in thr RAM.
What is disk thrashing?
When more time is spent swapping data in and out of RAM than on actually processing the data.
What is a memory leak?
When a program does not flush its used data and so it takes up more and more space the longer it runs.