System Software

Course Code: BCA413

Course Title: System Software (4 Credits)




Course Contents


Unit 1: Introduction to software processor:  system software and Machine architecture- Architecture of Intel 8086 – Data and instruction formats – addressing modes – instruction sets – I/O and programming.


Unit 2: Language processor: Introduction, Language processing activities, Fundamentals of language processing, Fundamentals of language specification, language processor development tools.


Unit 3: Assemblers: Introduction to assembler, assembler directives, Forward reference, Types of assemblers, Data structures of assembler, assembler design one pass assembler, two pass assembler


Unit 4: Macros and Macro processor: Macro definition and call, Macro expansion, Nested macro calls, Advanced macro facility, Design of macro processor


Unit 5: Loaders: Basic functions of loader, Machine dependent loader feature, Machine dependent loader features, Loader design options


Unit 6: Linker: Introduction, Relocation and Linking concepts, Design a linker, Self relocating program linking for overlays.


Unit 7: Interpreter: Overview of compiler, difference between compiler and interpreter, scanning, symbol table, parsing expression and assignment, control statements, Simple interpreter design.


Unit 8: Text Editor: Text Editor: An Introduction, Overview of the Editing Process, Types of Editors, User interface, Editor Structure, Interactive Debugging System, Debugging Functions and Capabilities, Relationship with Other Parts of the System, User interface Criteria


Unit 9: Device Drive – I: Device Driver, Role of Device Drivers, Classes of Devices, Security issues, Design issues


Unit 10: Device Drive – II: PCI Bus Drivers, The Peripheral Component Interconnect (PCI) Interface, Peripheral component interconnect (PCI) addressing, Boot time, Configuration registers and initialization, Linux PCI initialization, Old-style PCI probing, USB Drivers, USB Device Basics, USB and Sysfs, USB Urbs


Unit 11: Universal Plug and Play:  Universal Plug and Play:  UPnP Introduction, UPnP Protocol Stack, Addressing, Discovery, Description, Control, Eventing, Presentation


Unit 12: Android operating system: Android Architecture, Linux Kernel, Android Architecture Libraries, Android Architecture Application Framework, Applications, Security and Permission.


Unit 13: Memory and Process Management in Android: Introduction to Android Memory, Use of Memory for Each Application, Dalvik Virtual Machine, Understanding Application Priority and Process States, Application, Processes and Threads, Interprocess Communications.