Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
2K views

01 Introduction of System Programming

System software includes programs that support the operation and use of a computer like compilers, linkers, loaders, text editors, and operating systems. It can be classified into software for program development and software for runtime environment. Software for program development includes text editors for creating programs, compilers and assemblers for translating programs to machine code, and linkers and debuggers for combining object files and debugging programs. Software for runtime environment includes loaders for loading programs, libraries for shared functions, dynamic linkers for linking libraries at runtime, and operating systems for managing system resources and creating an environment for programs to execute.

Uploaded by

Srinu Rao
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2K views

01 Introduction of System Programming

System software includes programs that support the operation and use of a computer like compilers, linkers, loaders, text editors, and operating systems. It can be classified into software for program development and software for runtime environment. Software for program development includes text editors for creating programs, compilers and assemblers for translating programs to machine code, and linkers and debuggers for combining object files and debugging programs. Software for runtime environment includes loaders for loading programs, libraries for shared functions, dynamic linkers for linking libraries at runtime, and operating systems for managing system resources and creating an environment for programs to execute.

Uploaded by

Srinu Rao
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 12

ASET

Amity School of Engineering


B. Tech. (IT/CSE), VI Semester
System Programming
Bhagyashree Naruka

Software

ASET

Software is a collection of computer programs and related


data that provide the instructions for telling a computer
what to do and how to do it.
In other words, software is a conceptual entity which is a
set of computer programs, procedures, and associated
documentation concerned with the operation of a data
processing system.

Types of software

ASET

Software
Application software usually used by end-user
It is concerned with the solution of some problem, using the
computer as a tool, instead of how computers actually work.
System software
System software consists of a variety of programs that
support the operation of a computer (ex: text editor,
compiler, debugger)
One characteristic in which most system software differ
from application software is machine dependency
A system software programmer must know the target
machine structure

Abstract View of System


Components

ASET

Foundation of System
Programming

ASET

People
Application Programming
Compilers
Loader
I/O Program

Assemblers

Text editors

File System

Scheduler

Macro
Processors

Debugging aids
Libraries

Searching and
sorting

Memory
Mgmt

Device
Mgmt

Basic Features and Design


Options

ASET

Fundamental features
Basic functions and characteristics should remain
essentially the same, regardless of what machine is being
used.
Major design options
There is no single right way of doing things; a software
designer needs to be aware of the available options in order
to make intelligent decisions

System Software
and Machine Architecture
Machine dependent system software
System programs are to support the operation and use of the
target computer.
The difference between different machine
Machine code
Instruction formats
Addressing mode
Registers
Machine independent system software
General design and logic is basically the same:
Code optimization
General design and logic of an assembler

ASET

System Software
The system software includes
Assembler
Linker
Loader
Macro processor
Text editor
Compiler
Operating system
Debugging system
(optional) Database Management System

ASET

Systems software can be


classified in two groups
1.- Software to create a program development environment
Text editor
Compiler
Assembler
Linker
Debugger(low-level)
2.- Software to create a run-time environment
Operating system
Loader
Dynamic Linker
Program libraries

ASET

Systems Software: Program


Development Environment

ASET

Text editor:

Software that permits the creation and editing of


text (i.e. application programs).

Compiler:

Translates programs written in a high level


language to object code or machine code.

Assembler:

Translates programs written in assembly language to


object code or machine code.

Static Linker: Combines and resolves references between object


programs and creates the executable code.
Debugger
(low-level)

It is used to debug executable programs and their


related object code and source program.

Systems Software: Run-Time


Environment

ASET

Loader: Loads an executable code and starts its execution


Libraries:
Precompiled programs the creates a set of functions for use by
other programs.
Dynamic Linker:
Loads and links shared libraries at run-time
Operating system:
An event driven program that make an abstraction of the computer
system. The operating system handles all resources efficiently,
creates an environment for application programs to run, and creates
a friendly interface between the user and the computer system.

Compile time

ASET
Source
Program

Compiler/
assembler

Object
Module
Other Object
Modules

Link Editor
(Linker)

Load time

Executable
File

System
Library

Loader
Dynamically
Loaded System
Library

Execution time

Running
Program

Computer hardware + OS

You might also like