3.4 Computer Systems CGP Guide Flashcards
Computer
The purpose of a computer is to take data, process it, then output it. Computers were created to help process data and complete tasks more efficiently than humans.
A computer system consists of hardware and software that work together to process data/complete tasks.
Hardware
The physical stuff that makes up your computer system, like the CPU, motherboard, monitor and printer.
Software
The programs that a computer system runs.
Application software
Software that performs end-user tasks.
E.g. word processors, web browsers, database software, games.
System software
Manages the computer system resources and acts as a platform to run application software.
Operating systems, utilities.
Operating systems
Operating systems manage hardware and run software.
Complex piece of software on most computer systems. The main functions of the OS are:
- Input and output devices.
- Applications and a user interface.
- Memory management.
- Organise the CPU and it’s processing tasks.
- File management and disk management.
- Manage system security.
Input/output devices
Input/output devices allow computers to take inputs and give outputs.
• Operating systems use device drivers to communicate with input/output devices connected to the computer system:
- Every I/O device connected to the computer system requires a device driver. Drivers essentially act as a ‘translator’ for the signals between the OS and the device.
- When a computer is booted up, the OS will choose the correct device drivers for the device it detects. If new devices are connected to the computer, the system may automatically find and install a new, matching driver.
- Device manufacturers may release updates to device drivers in order to fix bugs, add features or improve the performance of the device. Updates may be installed automatically by the OS or manually by the user.
Application management
• Operating systems provide a platform for applications to run on, and manage system resources to allow computers to run multiple applications at once - known as multitasking.
• It also allows applications to access hardware and other peripheral devices as needed, including access to RAM and secondary storage.
• The OS also provides a user interface that applications are accessed through. Most desktop computers traditionally use graphical interfaces that are WIMP-based, where applications are displayed with windows, icons, menus and pointers.
• These interfaces are ideal for use with a mouse and keyboard, but devices with different input methods may have different interfaces.
• Applications are usually written for a particular OS and will take advantage of its features. E.g. allowing users to tap, pinch swipe on a touchscreen device.
Memory management
• When an application is opened the OS copies the necessary part of the application to memory, followed by any additional parts when they are required. The OS will decide if applications or features have been used recently if not they may be removed from the memory.
• The OS manages how much RAM a program has access to. This will depend on the program. Certain things, like having more documents open, can make a program require additional memory.
• When running multiple applications at once, the OS makes sure that they don’t overwrite or interfere with each other by allocating certain applications certain memory addresses, keeping their processes in separate locations.
Processor management
• When an application is launched, it creates one or more processes. Each process has instructions it needs the CPU to execute. However. CPUs can only carry out instructions one process at a time.
• Operating systems deal with this by scheduling to determine the most efficient order for the CPU to execute instructions.
• Each process is allocated a ‘priority’ by the OS. The CPU carries out the instructions from the highest-priority processes first, and other processes wait in a queue.
• The OS may interrupt the current CPU process if a higher priority process becomes available.
• In order to allow multitasking, the CPU swaps between different processes very rapidly.
File and disk management
• Computers store data as files. Images, music, videos and spreadsheets are just collections of data. File extensions tell the computer which software should be used to open the file.
• The OS is responsible for file management - the organisation of data into a usable hierarchical structure. It also deals with the movement, editing and deletion of data.
• The OS manages the hard disk. It splits the physical disk into storage sectors, decides which sectors to write data to, and keeps track of free space on the disk. Ideally, the data for a single file would be placed in adjacent sectors but this isn’t always possible.
• The OS also organises and maintains the hard disk utility programs like defragmentation software.
System security
• Most popular OSs include way of keeping data stored on a system secure. One common way in which they do this is through user account control. User accounts allow different users to be granted or denied access to specific data or resources on a computer system.
• On most desktop operating systems, each user has access to their own personal data and desktop, but cannot access other users’ personal data, unless they are a system administrator.
• Operating systems may have anti theft measures to prevent other users from accessing locked devices or accounts to steal information. User accounts may be password or pin protected. Some devices also require a user to draw a specific pattern on the screen, or have fingerprint or retina scans.
Utilities
Utilities help to maintain or configure a computer.
Examples:
• Disk defragmentation
• Auto backup and restore
• Anti-virus
• Firewall
• Compiler
Disk defragmentation
• Organises files on a disk to be located contiguously.
• Often after defragmentation performance is improved because a file can be accessed from one location on a disk.
• Files can become fragmented when the original file increases in size and no longer fit into a contiguous location and has to be split over multiple locations.
Auto backup and restore
Ability to automatically back-up files on the computer, either using cloud storage or another form of secondary storage.
Antivirus
Scans the computer to identify malicious code.
Firewall
Scans input and output packets and prevent malicious packets entering the computer.
Compiler
Converts high level computing code into low level.
High level languages
Most of the programming languages are high-level languages. The source code is easy for humans to write, but computers need to translate it before they can read and run it.
Low level languages
Tricky for humans to read and write but are easier for computers to run. They consist of machine code and assembly languages.