System Software and Machine Architecture
System Software and Machine Architecture
One characteristic in which most system software differs from application software is
machine dependency. „
System programs are intended to support the operation and use of the computer
itself, rather than any particular application. „
e.g. of system software ‰ Text editor, assembler, compiler, loader or linker,
debugger, macro processors, operating system, database management systems,
software engineering tools.
Machine dependency of system software ‰
o System programs are intended to support the operation and use of the
computer. ‰
o Machine architecture differs in: „
Machine code „
Instruction formats „
Addressing mode „
Registers „
o Example: Assembler translates mnemonic instructions into machine
code; the instruction formats, addressing modes etc are the direct
concern of assembler design.
o Example: Compiler generate machine code, taking into account
hardware characteristics as the number and type of registers and the
machine instructions available.
Machine independency of system software ‰
o There are aspects of system software that do not directly depend upon the type
of computing system
o Example: General design and logic of assembler is basically the same in most
of the computers.
o Example: Code optimization technique used by the compiler are independent
of target machine (although there are machine dependent optimizations). „
o Example: Subprogram Linking: - The process of linking together
independently assembled subprograms does not usually depend on computer
being used.