1.2.1 systems software Flashcards
What are the functions of an operating system?
- Managing the hardware
- Managing software (secondary storage loading programs in and out of RAM to be executed)
- Provide a user interface (so user can interact with hardware)
- manages system security
- provides a platform for utilities/applications
- manages external devices (efficient comms with devices and manage functionality issues)
- managing the processor/scheduling
- provides a platform for networking and multitasking
- memory management (paging, segmentation and VM)
- handle interrupts
What does an OS provide?(4)
- User interface
- Memory/resource Management
- Interrupt handling
- Processor scheduling
Name 4 common operating systems.
Windows, Android, Linux, iOS
What is the kernel?
- the core of the operating system that provides basic services for all other parts of the OS.
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? (think of mr caselton vs bus driver who act as software)
- software installed which enables communication between OS and device so OS can interact with and control it.
- Mr Caselton can drive but can’t use all bus functionality. Bus driver (software) has more capability.
What does a device driver do?
- Translates commands from the OS into series of hardware specific commands that only that device understands. The device can also pass data back to the OS using the device driver.
Device drivers are…
hardware dependent and OS specific
Who makes the driver for a specific device?
The company who created the device.
What is a user interface? What does it contain.
- Software that allows the user to interact with computer’s hardware.
- WIMP (Windows, Icons, Menus, Pointers)
Name two user interfaces.
GUI and CLI
what is a GUI. Give advantages and disadvantages
- graphical user interface
- uses WIMP (Windows, Icons, Menus, Pointers) to provide clear graphical interface for user to control computer.
- visual, interactive and optimised for mouse and touch gesture input
- allows for multitasking
- can take longer to perform tasks
- more resource intensive
- requires more power (more data involved)
What is a CLI. Give advantages and disadvantages
- command line interface
- allows user to type commands directly into the computer.
- more reliable + more control due to direct communication from commands
- requires less power
- hard to use without knowledge of commands. But if experienced, its fast to use
Give 3 examples of utilities.
(utilities help to maintain the computer)
- Print queue
- File management
- Encryption software
- Compression Software
- 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.
Paging (Pagination) and Segmentation
Give some similarities about paging and segmentation
- both allow programs to run despite insufficient memory
- pages and segments are stored on disk
- pages and segments are transferred into memory when needed
- Allows programs to be stored in memory non-contiguously
- both are ways of partitioning memory
Give 3 differences about paging and segmentation
- pages = fixed size, segments = different sizes
- pages made to fit section of memory, segments are complete sections of program
- pages are physical divisions but segments are logical divisions
How does segmentation work?
- An application running is split into processes (segments)
- Each segment is a complete section of 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 are segments?
- logical divisions of varied sizes
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.