|Course Code: BCA413||
Course Title: System Software (4 Credits)
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.