CS2304 SYSTEM SOFTWARE L T P C
3 1 0 4
To have an understanding of foundations of design of assemblers, loaders, linkers, and macro processors.
· To understand the relationship between system software and machine architecture.
· To know the design and implementation of assemblers
· To know the design and implementation of linkers and loaders.
· To have an understanding of macroprocessors.
· To have an understanding of system software tools.
UNIT I INTRODUCTION 8
System software and machine architecture – The Simplified Instructional Computer (SIC) - Machine architecture - Data and instruction formats - addressing modes - instruction sets - I/O and programming.
UNIT II ASSEMBLERS 10
Basic assembler functions - A simple SIC assembler – Assembler algorithm and data structures - Machine dependent assembler features - Instruction formats and addressing
modes – Program relocation - Machine independent assembler features - Literals – Symbol-defining statements – Expressions - One pass assemblers and Multi pass assemblers - Implementation example - MASM assembler.
UNIT III LOADERS AND LINKERS 9
Basic loader functions - Design of an Absolute Loader – A Simple Bootstrap Loader - Machine dependent loader features - Relocation – Program Linking – Algorithm and Data Structures for Linking Loader - Machine-independent loader features - Automatic Library Search – Loader Options - Loader design options - Linkage Editors – Dynamic Linking – Bootstrap Loaders - Implementation example - MSDOS linker.
UNIT IV MACRO PROCESSORS 9
Basic macro processor functions - Macro Definition and Expansion – Macro Processor Algorithm and data structures - Machine-independent macro processor features - Concatenation of Macro Parameters – Generation of Unique Labels – Conditional Macro Expansion – Keyword Macro Parameters-Macro within Macro-Implementation example - MASM Macro Processor – ANSI C Macro language.
UNIT V SYSTEM SOFTWARE TOOLS 9
Text editors - Overview of the Editing Process - User Interface – Editor Structure. - Interactive debugging systems - Debugging functions and capabilities – Relationship with other parts of the system – User-Interface Criteria.
L: 45, T: 15, TOTAL: 60 PERIODS
1. Leland L. Beck, “System Software – An Introduction to Systems Programming”, 3rd
Edition, Pearson Education Asia, 2006.
1. D. M. Dhamdhere, “Systems Programming and Operating Systems”, Second
Revised Edition, Tata McGraw-Hill, 2000.
2. John J. Donovan “Systems Programming”, Tata McGraw-Hill Edition, 2000.
3. John R. Levine, Linkers & Loaders – Harcourt India Pvt. Ltd., Morgan Kaufmann