The operating system performs the following four major functions:
• Memory management Use Use Use Use Software System software Application software Operating system Hardware CP RA I/O • Process management • Device Management • File Management Examples: UNIX, Ms-DOS, Ms Windows, Windows/NT, OS/2 and Mac OS. b) Programming language translators These are programs used to translate the source program to object into low level language that the computer can execute. Examples of programming language translators are assemblers, translators and interpreters. i). Assembler: These programs are used to translate the symbolic instruction codes of programs written in an assembler language into machine language instructions. ii). Compiler: These are programs used to compile high-level language statements (source programs) to machine language programs. iii). Interpreter: These are programs used to translate and execute each program statement one at a time, instead of first producing a complete machine language program, like compilers and assemblers. c) Utility programs These are programs used to perform a specific task in maintaining and managing a computer system. These programs can be purchased as stand alone product or embedded in the operating system. Some of the utility programs include: Security utilities: These are utility programs used to protect computer system e.g. antivirus Disk defragmenters: These are utility programs used to reorganize files and unused space in the disk to enable the programs to run faster. Diagnostic utilities: These are utility programs used to compile technical information and make recommendation fixing any errors detected. Screen savers: These are utility programs used to display a constantly moving image whenever the system is idle. File manager: These are utility programs used to copy, delete, move and rename files. Uninstaller: These are utility programs used to remove installed programs and their associated files. Back up utility: This is a utility program used to copy all or selected files from one hard disk to another hard disk or other media. Disk scanner: This is a utility program used to detect and correct problems in the hard disk as well as removing unnecessary files from the hard disk. d) Library programs These consist of a collection of resources (pre-written code and subroutines) used to develop software. These programs contain code and data and are used to provide services to other programs such as interface, printing, network code and even the graphic engines of computer games. Most programming language have library programs that can be imported by programmers when developing the source code. 2.4.2. Application Software Application software are programs used to perform a specific task for the user(s). All software prepared by users in the computer lab can come under the category of Application software. Application software may consist of a single program, such as a Microsoft's notepad for writing and editing simple text. It may also consists of a collection of programs, often called a software package, which work together to accomplish a task, such as a spreadsheet package. The application softwares can be classified further into: • General purpose software • Special purpose software • Bespoke software a) General purpose software These are application softwares that have several features and so can be used in a variety of applications. They are also referred to as off-the-shelf (OTS). These softwares are often cheap, readily available in the market, are well tested and have well documented user support. i). Spreadsheets: These are programs used to manipulate numeric data. Features include workbooks, worksheets, cells, ranges, text and numeric entries, formulas, functions, charts, recalculation, and what-if analysis. ii). Database software: Software used to create and manipulate database (tables, records, fields, joins, data types). Features include tools for sorting, filtering, defining criteria, querying, creating forms, and reports. iii). Desktop publishing software: Software used to create sophisticated documents such as brochures, manuscripts, reports, conference programs, catalogue articles, pamphlets, business presentations, business graphics, advertisements e.t.c. Features include frames, text boxes, wizards, graphics tools e.t.c. iv). Word processor: This is software used to create text-based documents. Features support entering, editing, and formatting text. v). Presentation software: This is software used to create presentations in form of slide shows. Features include slides, views, presentation styles, colour schemes, slide layouts, special effects, design templates, and master slides. vi). Multimedia Software: These are programs used to create and play audio and video files. Examples: Audio converters, audio players, burners, video encoders and decoders are some forms of multimedia software. Features include compression, decompression, edit, format e.t.c. b) Special purpose software This is a software used for specific purpose or specific task. These softwares have fewer features meant for a specific task. Examples: • Payroll software • Stock control software • Garden design software • Kitchen design software c) Bespoke software(Tailor-made) This is a software that is specifically created for a particular user (i.e. a business or organisation). It may have several features and consequently perform several tasks but the user owns it. Examples: ABC payroll software, XYZ employee management system. 2.5. Assignment-self test questions a) Write short notes on: i. System software ii. Application software b) Briefly discuss three advantages and three disadvantages of tailor-made softwares c) Outline any five features of the following softwares: i. Presentation software ii. Database software iii. Spreadsheet d) Distinguish between the following terms: i. Soft copy and hard copy ii. Program and programmer iii. Compiler and interpreter