3.6 computer systems Flashcards
hardware
electronic/mechanical components of a computer system
software
instructions / programs / code
software categories
application software
system software > operating systems - utility programs - library programs - translators
application software
carrying out specific tasks that are user-oriented / perform a function for the end-user
examples of application software
word processors, image editors, internet browsers, email clients
system software
controls/manages the operation of the system, required to operate a computer
operating system
controls computer’s hardware + software resources, allows software to interact with hardware - hides the complexities of the hardware
tasks of an operating system
- resource management
- processor scheduling
- memory management
- i/o management
- provision of a user interface / hiding complexities of the hardware from the user
resources that the os manages
- processors
- memory
- i/o devices
processor scheduling
determining order in which processes executed, allows for multi-tasking
utility programs
- analyse, configure, optimise or maintain a computer system
- perform additional common tasks needed by users
examples of utility programs
compression software, disk defrag software, anti-malware software, backup software, disk utilities, file repair, file manager
disk utilities
- management of secondary storage devices, such as hdd, ssd
- disk defrag software is an example of this utility
library programs
collection of pre-compiled routines that can be used across many programs, eg. math, random, turtle etc in python
virtual memory (VM)
- area on disk that is used as RAM if RAM insufficent to hold all data / instructions in a running process
- data copied from RAM to disk, while next block of data/code is loaded from VM
- allows many processes to be running at once, but noticeably slows down PC
why is VM less common
RAM cheaper and systems have more RAM than they did a decade ago
multitasking
execution of more than 1 task simultaneously, cpu processes only 1 task at a time but switches between processes so fast that it appears to be processing multiple processes at same time
multiprocessing
more than one processor being used, different parts of a task may be distribute among processors in separate CPUs, or a CPU may have 2+ processors