0478 Computer Science
Chpater 1 Number System
1.1 Number systems
1.2 Text, sound and images
1.3 Data storage and compression
Chapter 2 Data transmission
2.1 Types and methods of data transmission
2.2 Methods of error detection
2.3 Encryption
Chapter 3 Hardware
3.1 Computer architecture
3.2 Input and output devices
3.3 Data storage
3.4 Network hardware
Chapter 4 Software
4.1 Types of software and interrupts
4.2 Types of programming language, translators and integrated development environments (IDEs)
Chapter 5 The internet and its uses
5.1 The internet and the World Wide Web (WWW)
5.2 Digital currency
5.3 Cyber security
Chapter 6 Automated and emerging technologies
6.1 Automated systems
6.2 Robotics
6.3 Artificial intelligence (AI)
Chapter 7 Algorithm design and problem solving
7.1 The program development life cycle
7.2 Computer systems, sub-systems anddecomposition
未命名
未命名
Chapter 8 Programming
8.1 Programming concepts
8.2 Arrays
Mr. Theo
-
+
首页
4.1 Types of software and interrupts
# Software A set of instructions written in a programming language that performs one or more tasks to tell the computer what to do. ## System Software - provides services that the computer requires , including operating system and utility software - manages/maintains the hardware/software set of programs to control and manage the operation of computer hardware provides a platform on which other software can run required to allow hardware and software to run without problems provides a human computer interface (HCI) controls the allocation and usage of hardware resources. ##### Examples - Compiler: Translates high-level language into machine code, allowing for direct use by a computer to perform tasks without re-compilation. - Linker: Combines object files produced by a compiler into a single program, allowing the use of separately written code modules in the final program. - Device driver: Software that enables hardware devices to communicate with a computer's operating system, without which a device like a printer would be unable to work. - Operating system: Software that manages basic computer functions such as input/output operations, program loading and running, and security management, making computers more user-friendly. - Utility programs: Software that manages, maintains, and controls computer resources by carrying out specific tasks, such as virus checking, disk repair and analysis, file management, and security. ### Utility Software - Computer users have access to utility programs as part of system software - Utility programs can be initiated by the user or run in the background without user input - Common utility programs include virus checkers, defragmentation software, disk analysis and repair tools, file compression and management software, backup software, security tools, and screensavers. #### Virus Checkers & Anti-Virus Software - Virus checkers or anti-virus software are important for protecting computers from malware. - They should be kept up to date and run in the background to maintain their effectiveness. - Anti-virus software checks files before they are run or loaded and compares possible viruses against a database of known viruses. - Heuristic checking is used to identify possible viruses that are not yet on the database. - Infected files are put into quarantine for automatic deletion or for the user to decide. - Anti-virus software must be updated as new viruses are constantly discovered. - Full system scans should be carried out regularly to detect dormant viruses. #### Disk Defragmentation Software - Defragmentation software rearranges the data blocks on a hard disk drive (HDD) to store files in contiguous sectors, reducing head movements and improving data access time. - As an HDD becomes full, blocks used for files become scattered all over the disk surface, making it slower to retrieve data as the HDD read-write head needs several movements to find the data. - When a file is deleted or extended, new data does not fill the vacant sectors immediately, causing the files to become more scattered throughout the disk surfaces. - A disk defragmenter rearranges the data blocks to store files in contiguous sectors wherever possible, allowing for faster data access and retrieval. - The defragmentation process can free up previously occupied sectors and empty some tracks. #### Backup Software - Backup software is a utility software that helps create and manage backup copies of data files and programs. - Manual backups using memory sticks or portable hard drives are good practices, but operating system backup utilities are also recommended. - Backup utilities allow scheduling backups and only backup files if changes have been made to them. - There could be three file versions for total security: the current version stored on the internal HDD/SSD, a locally backed-up copy on a portable SSD, and a remote backup on cloud storage. #### Security Software - Security software is a utility software that manages access control, user accounts, and links to other utilities such as virus and spyware checkers. - It also protects network interfaces using firewalls to prevent unauthorized access. - Security software uses encryption and decryption to ensure intercepted data is unreadable without a decryption key. - It oversees software updates to verify legitimate sources and prevent malicious software from being installed. - Access control and user accounts use IDs and passwords to secure user data and prevent unauthorized access. #### Screensavers - Screensavers display moving and still images on the monitor screen after computer inactivity. - They were originally developed to protect CRT monitors from 'phosphor burn'. - Screensavers are now mostly used for customizing a device and as a part of computer security systems. - They automatically log out of the user after a certain period of inactivity. - Some screensavers activate useful background tasks like virus scans and distributed computing applications. #### Device Drivers - Device drivers translate data into a format that can be understood by the hardware device they are associated with. - Without the appropriate device driver, a hardware device cannot work with a computer and may not be recognised by the operating system. - USB device drivers contain descriptors, which include a vendor ID (VID), product ID (PID) and unique serial number that allow the operating system to identify the device. - Serial numbers must be unique to avoid confusion if two devices with the same serial number are plugged into a computer simultaneously. ### Operating system - A type of software that manages the main functions of the computer - including managing files and managing memory. #### Purpose of the operating system - It **performs** the basic functions of a computer - It **manages** the hardware - It provides a platform to run software - It provides a user interface #### Functions of a typical operating system - managing files - handling interrupts - providing an interface - managing peripherals and drivers - managing memory - managing multitasking - providing a platform for running applications - providing system security - managing user accounts ##### Platform for running applications - allows application software to run on the computer - allowing communication between the applications software and the hardware ##### Managing files - file naming conventions which can be used {i.e. filename.docx (where the extension can be .bat, .htm, .dbf, .txt, .xls, etc.)} - performing specific tasks (for example, create, open, close, delete, rename,copy, and move) - maintaining the directory structures - ensuring access control mechanisms are maintained (for example, access rights to files, password protection, or making files available for editing or locking them) - ensuring memory allocation for a file by reading it from the HDD/SSD and loading it into memory. ##### Memory management - managing what gets allocated where in memory - allocates memory to processes - prevents two processes accessing the same memory ##### Managing peripherals and drivers - managing the communication between any input and output devices that are connected to the computer - allocates data to buffers - transmits data to hardware - receives data from hardware ##### Multitasking managing the process of switching between tasks that are being carrying out ##### System security proving features such as username and password ##### User accounts allowing multiple user accounts to be created on a computer #### Running of Applications - The computer starts its OS (booting up the computer) through the bootstrap loader. - The BIOS (Basic Input/Output System) tells the computer the location of the OS in the storage. - BIOS is often referred to as the firmware -  ##### Firmware - Permanent instructions/software that are programmed into/stored in the ROM. - Instructions/software that allow hardware to be controlled/managed. - Instructions/software that provides the operating system with a platform to run on. ##### Purpose of firmware - Permanently store instructions (in ROM) - Stores instructions to boot up/start up the computer - Provides the operating system with a platform to run on Controls/manages/allows communication with hardware - Store instructions securely (to stop them being easily corrupted) ##### Example - Bootstrap - Bootloader - BIOS - Operating system (in embedded system) - Programs (in embedded systems) ## Application software - A type of software that provides services that the user requires - allows the user to perform tasks on the computer used to perform various applications (apps) on a computer allows a user to perform specific tasks using the computer’s resources may be a single program (for example, NotePad) or a suite of programs (for example, Microsoft Office) user can execute the software as and when they require. ##### Example word processor, web browser, video-editing software ## Interrupt - A signal sent from a device / software - Requests processor time // Processor stops to service interrupt - Interrupts have different priorities - Interrupt is given priority and placed in interrupt queue - Processor finishes current **FE cycle** for program - Processor checks interrupt priority queue // processor checks for higher priority interrupt than program/process - If lower priority processor runs next FDE cycle for program/process // if lower priority processor continues with program/process - (if higher priority) processor **stores** current process/registers on stack - Checks source of interrupt and calls the appropriate ISR - ISR handles/resolves interrupt - If there is another higher priority interrupt (than process) then repeat, (otherwise) processor retrieves content of stack/registers/ previous process (to continue with process from program) ### Purpose of an interrupt To indicate that something requires the attention of the **processor/OS/CPU** ### Why interrupts are needed - To identify that the processor's attention is required // to stop the current process/task - To allow multitasking - To allow for efficient processing // prioritising actions - To allow for efficient use of hardware - To allow time-sensitive requests to be dealt with - To avoid the need to poll devices ### Buffer - a memory area that stores data temporarily ### Generate interrupt - Keyboard - Key pressed - Mouse - Button clicked Devices that make use of interrupts - Keyboard - Printer - Mouse
Theo
2025年9月25日 11:44
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
Word文件
PDF文档
PDF文档(打印)
分享
链接
类型
密码
更新密码
有效期