3.5 SOFTWARE
The software drives the computer to perform some useful function
Two main types of programs,
- Program is stored as text (or equivalent), and each instruction is read, and interpreted as the program is running.
- Easier to write operating systems
- Suited to simple programming languages
- BASIC is a popular interpreted language.
- Programs are converted, and stored in machine language before execution.
- Can allow very advanced debugging tools
- Programming can be complex
- Easier to protect copyrights
- FORTRAN and C are good examples of compiled languages.
Programs may be divided into a number of various categories,
- Software which provides fundamental services for the computer, such as running printers, user accounting, etc.
- Required for any computer to operate
- Acts as a go between for the programs and the hardware
- Popular Operating systems are UNIX, MS-DOS, VMS, NOS.
- This is a program which the engineers write to control the CPU when it is initially designed.
- This is not seen by a user.
- Tells CPU how to deal with instructions
- Written in the lowest level of language available to the user
- These programs are very fast and efficient.
- These programs are difficult to write.
Graphical User Interface,
- A program which makes extensive use of graphical abilities to interact with the user.
- Requires a powerful computer
- Can be slow, and use up to 90% of CPU time
- Makes programs very easy to use by novices
- Requires greatly increased development time for software
- Good examples of these programs are Lotus 1-2-3, Autocad, Microsoft Windows, WordPerfect, SDRC Ideas, etc.
Utility (for want of a better word),
- Simple programs for individual tasks such as file format conversion.
- small in size, and easy to use
Scientific, Mathematical, etc.
- Use large amounts of CPU time for mathematical calculations
- Requires specialized knowledge
- Requires powerful computer
Scripts, Batch Files, etc.
- Often interpreted files which instruct the operating system in task such as installing software, running nightly backups, etc.
- Written in ASCII with simple English like commands
- Example of these are `autoexec.bat' files in MS-DOS, and `.login' files in UNIX.