1.5 SOFTWARE

 

• The software drives the computer to perform some useful function

 

• Two main types of programs,

 

• Interpreted,

- Program is stored as text (or equivalent), and each instruction is read, and interpreted as the program is running.

- Can be very slow

- Easier to write operating systems

- Suited to simple programming languages

- BASIC is a popular interpreted language.

 

• Compiled,

- Programs are converted, and stored in machine language before execution.

- Runs very fast

- 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,

 

• Operating Systems

- Software which provides fundamental services for the computer, such as running printers, user accounting, etc.

- Can be very large

- 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.

 

• Micro-code

- 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

 

• Machine Language

- 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

- Very problem specific

- Requires specialized knowledge

- Very expensive

- 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.

 

• etc.