SYSTEM PROGRAMMING (1ST MODULE)
Prepared By Mr.Santosh Kumar Rath
translation (a one- to-one mapping) from mnemonic statements into machine instructions and
data. This is in contrast with high-level languages, in which a single statement generally
results in many machine instructions.
An assembly language is a low-level programming language for computers, microprocessors,
microcontrollers, and other integrated circuits . It implements a symbolic representation of the
binary machine codes and other constants needed to program a given CPU architecture. This
representation is usually defined by the hardware manufacturer, and is based on mnemonics
that symbolize processing steps (instructions), processor registers, memory locations, and
other language features. An assembly language is thus specific to a certain physical (or
virtual) computer architecture. This is in contrast to most high -level programming languages,
which, ideally, are portable .
Loader:
In a computer operating system , a loader is a component that locates a given program (which
can be an application or, in some cases, part of the operating system itself) in offline storage
(such as a hard disk ), loads it into main storage (in a personal computer, it's called random
access memory ), and gives that program control of the computer (allows it to execute its
instruction s).
A program that is loaded may itself contain components that are not initially loaded into main
storage, but can be loaded if and when their logic is needed. In a multitasking operating system, a
program that is sometimes called a dispatcher juggles the computer processor's time among
different tasks and calls the loader when a program associated with a task is not already in main
storage. (By program here, we mean a binary file that is the result of a programming language
compilation, linkage editing, or some other program preparation process.)
In computing, a loader is the part of an operating system that is responsible for loading programs,
one of the essential stages in the process of starting a program, it means loader is a program that
places programs into memory and prepares them for execution. Loading a program involves
reading the contents of executable file, the file containing the program text, into memory, and
then carrying out other required preparatory tasks to prepare the executable for running. Once
loading is complete, the operating system starts the program by passing control to the loaded
program code.
All operating systems that support program loading have loaders, apart from systems where code
executes directly from ROM or in the case of highly specialized computer systems that only have
a fixed set of specialized programs.
In many operating systems the loader is permanently resident in memories, although some
operating systems that support virtual memory may allow the loader to be located in a region of
memory that is pageable .