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

Module 1-Part 1

The document provides information about the objectives and outcomes of the CS303 System Software module. The module aims to teach students about various system software like assemblers, linkers, loaders, and macro preprocessors. It also covers utility programs like text editors and debuggers. By the end of the module, students should be able to distinguish different software categories, design assemblers, and understand features of modern editing and debugging tools.

Uploaded by

vidhya_bineesh
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
43 views

Module 1-Part 1

The document provides information about the objectives and outcomes of the CS303 System Software module. The module aims to teach students about various system software like assemblers, linkers, loaders, and macro preprocessors. It also covers utility programs like text editors and debuggers. By the end of the module, students should be able to distinguish different software categories, design assemblers, and understand features of modern editing and debugging tools.

Uploaded by

vidhya_bineesh
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 21

CS303

System Software Module I

System Software 1
Course Objectives
To make students understand the design concepts of
various system softwares like Assembler, Linker,
Course Loader and Macro pre-processor, Utility Programs
such as Text Editor and Debugger.
Objectives &
Outcomes
Expected Outcome
Student is able to
1. distinguish different software into different categories
2. design, analyze and implement one pass, two pass or multi
pass assembler
3. design, analyze and implement loader and linker
4. design, analyze and implement macro processors
5. critique the features of modern editing /debugging tools
System Software 2
System Software

System Software 3
Translator
Linker
Loader
Text Editor

Debugger
Macro preprocessor
Device Drivers
Operating System

System Software 4
System Software
• A system software is a set of programs that manage the resources
of a computer system.
• System software can be divided into two :-
• System control programs- Manage the storage and processing resources
of the computer.
• E.g:- Operating system, DBMS
• System support programs:- Provide routine service functions to other
computer programs
• E.g:- Compilers, interpreters

System Software 5
System Software v/s Application Software
System Software Application Software
It consists of a variety of programs that support theIt is concerned with the solution of some problem
operations of a computer E.g:- Operating System using computer as a tool E.g:- Library Management
Software
They are usually related to the architecture of the The focus of the application software is the
machine on which they run E.g:- Assemblers application, not the computing system E.g:- MS office,
media players
They translate mnemonic instructions into machine They do not do any programming code translation
code E.g:- Assemblers E.g:- Anti virus softwares
They are more oriented towards the hardware E.g:- They are more oriented towards the users E.g:-
Operating System Spreadsheets
They may not have good interface, they are concerned They have good interface which help users to learn
with all the resources of the computing system E.g:- and use the application E.g:- Hospital Management
Loader System

System Software 6
System Software
1)Assemblers:- Assembler is defined as a language
translator that accepts assembly language program as input
and convert it into an object program.
• E.g:- STL  14 0001 0100

• The features and design of an assembler depends heavily on


the source language it translates and the machine language it
produces. It depends on the different machine instruction
formats available.

System Software 7
Functions of an assembler
1. Convert mnemonic operation codes to their machine language
equivalents e.g:- STL to 14
2. Convert symbolic operands to their equivalent machine addresses
e.g:- RETADR to 1033
3. Build the machine instructions in the proper format.
4. Convert data constants in the source program into their internal
machine representation e.g:- EOF to 454F46.
5. Write the object program

System Software 8
2)Linker
A linker is a tool that merges different object files produced by separate
compilation or assembly and creates an executable file .

System Software 9
Three tasks of a linker:-
1. Searches the program to find library routines used by
program e.g.:- printf(), math routines etc.
2. Determine the memory location that code from each
module will occupy and relocates its instructions.
3. Resolve references among files.

System Software 10
3)Loader

• Loader is a part of the Operating system that brings an executable


file residing on hard disk into memory and start its running

System Software 11
4)Macro processor

Macro :- A macro represents a


commonly used group of statements
in the source programming language.

System Software 12
Macro processor contd
• A macro processor replaces each macro call with the corresponding
group of source language statements. This is called expanding the
macros. Thus macro instructions allow the programmer to write a
shorthand version of a program.

System Software 13
5)Text Editor
o Text editors help to compose. organize, study and manipulate computer based information.
o Interactive editor is a program which allows a user to create and revise a target document
o A document may contain text, equations, tables, diagrams, lines , photographs etc.
oAn editor consists of components like
 Editing component
 Travelling component
 Viewing component
 Display component
o A document editing process consists of :-
Select the part of the document to be viewed and manipulated
Determine how to format it
Specify and execute operations that modify the target document
Update the view

System Software 14
6)Compiler
• Compiler converts high level languages like C, C++ into low level
language

System Software 15
Phases of compilation

System Software 16
Compiler versus interpreter

System Software 17
7)Operating system

• An operating system is a system software that manages the resources of a computer.


• Types of Operating systems:-
 Single job system – runs jobs of one user at a time . E.g:- Windows 95/NT, Andriod.
 Multiprogramming – permits several user jobs to be executed concurrently. E.g:- Unix, Linux, Mainframes
 Multiprocessor system – more than one CPU share common memory. E.g:- Windows 2000, Windows XP, Unix
 Network operating system- Systems are networked . User may login to a remote machine.
• Network Operating System runs on a server and gives the server the capability to manage data,
users, groups, security, applications, and other networking functions. The basic purpose of the
network operating system is to allow shared file access and printer access among multiple
computers in a network, typically a local area network (LAN), a private network or to other
networks.
• E.g:- Microsoft Windows Server 2003, Microsoft Windows Server 2008, UNIX, Linux, Mac OS X,
Novell NetWare, and BSD.

System Software 18
Distributed operating system – Manages hardware and software
resources so that a user views the entire network as a single
system. User is unaware of which machine on the network is
actually running a program or storing data.
• E.g:- Solaris operating system designed for SUN multiprocessor
workstations. Windows server 2003 ,Windows server 2008 ,Windows server
2012.
Time shared system- Multiple users are dealt on a time shared basis.
E.g:- Multics, Unix etc.
Real time systems- RTOS is used in computers that monitor and control
time critical processes such as nuclear reactor operations etc.E.g:- RTLinux,
Symbian OS
System Software 19
Functions of Operating systems
i)  I/O Management:
OS manages I/O devices and makes the I/O process effective. OS accepts the input
from the input device, stores it in the main memory, ask the CPU to process it and
finally provides the result to the output devices for output.
ii) Memory Management:
Memory is the large array of words or bytes, each with its own address. OS
determines the amount of memory required for the program instructions and data.
Then, OS allocates required memory to load the program and data into RAM. When
program terminates its memory area is free and the same memory area is allocated
for other programs.
iii) File Management : Managing files in the system with a proper directory structure

System Software 20
iv)  Process Management:
OS finds the status of processor, chooses a process, allocates the processor to the
process and frees the processor when the process is executed.
v)  Security:
OS makes sure that only authorized users get access to the computer and its data and
the users only do things they are authorized to do.
vi) Deadlock Prevention:
During processing, a situation can arise in which a resource shared by two or more
processes cannot continue because the resource required by one process is held by the
other. This situation is called deadlock. OS ensures that the above condition do not
hold by carefully allocating resources.
vii)  Interrupt Handling:
Interrupt is a signal generated from a device or program when they need attention of
the CPU. OS determines the type of interrupt and priority of the interrupt, stops the
execution process of CPU, preserves the initial state of the CPU, perform the requested
operation and brings the CPU at the same state when it was stopped.
System Software 21

You might also like