MCA Batch 2002-2003
[III Semester Syllabus]
301 OPERATING SYSTEM
Computer Organization and Assembly Language programming, System Software and C programming.
Introduction: Evolution of operating systems, Types of operating systems, Different views of the operating system, Design and implementation of operating system.
Address protection, Single process monitor, Partitioned memory allocation - Static, Partitioned memory allocation - Dynamic, Segmentation, Virtual memory, Paging, Page replacement algorithms, and Cache memory.
Support for Concurrent Process: Mutual exclusion, Semaphores, Queuing implementation of semaphores, Classical problems in concurrent programming, and Critical regions.
Scheduling: Process concepts, Systems programmer's view of processes, OS view of processes, OS services for process management, Virtual processors, Interrupt system mechanism, Scheduling algorithms, and Implementation of concurrency primitive.
System Deadlock: Prevention, Detection, and Avoidance.
Multiprogramming System: Queue management, I/O supervisors, Memory management, File system, Disk scheduling, Security mechanism, Authentication, Protection, Access control, and Cryptography.
Multiprocessor System: Multiprocessor interconnections, Multiprocessors type, Functions, Introduction to parallel computing, Multiprocessor synchronization, Distributed operating system, and Computer network algorithms for distributed processing.
Operating System Concepts - Silberschatz, Galvin, Gagne.
302 Database Management Systems
Prerequisite: Business Data Processing.
Overview of Database Management: Basic concepts, File oriented approach v/s database oriented approach to data management, Data independence, Database administration, DBMS users, Data dictionary, and Data models.
Introduction to Traditional Data Models: ANSI/SPARC 3-level architecture and the place of logical data models in this architecture, A brief overview of the three traditional models - Hierarchical, Network, and Relational, Data definition and data manipulation constructs.
Relational Model: Definition of relation, Storage organization for relations, Fundamental integrity rules (entity, referential), Relational algebra, Tuple and Domain relation calculus, and Relational query languages.
SQL: SQL constructs, Maintenance and manipulation of relational data, View definition and use, Temporary tables, Nested queries, SQL standards, Transaction processing, and SQL integrity constraints, Embedded SQL, and Application Programming Interface.
Database Design: ANSI/SPARC 3-level architecture, Entity - Relationship Model as a tool for Conceptual Design, Entities attributes, and Relationships. ER diagram, Converting an ER model into relational schema, Normalization, Converting concepts in logical (relational) model, Update anomalies, Functional, Multi-values join dependencies. Normal forms (1NF, 2NF, 3NF, BCNF, 4NF, Domain-Key normal form), Issues in physical design, Concepts of indices, File organization for relational tables, and normalization.
Introductory Overview of Advanced DBMS Concepts: Database internals, Query processing, Concepts of transaction, and transaction processing, Database concurrency, and deadlock recovery, Database security, and Introduction to distributed databases.
DBMS Package: Data types, Create databases, Modifying databases structures, Maintaining databases, Sorting and indexing databases, Query with menu and commands, Query and reports, Views, Formats, and Labels.
Programming: Creating command file, Memory variables, Operators, Functions, Strings, File management, and macros. Managing multiple databases. Application program - Input/Output statements, Looping and Control structures.
Database System Concepts - Silberschatz, S. Sudarshan and Korth.
303 Analyses and Design of Algorithms
Computer programming and problem solving, Data and file structures.
Review of basic data structures such as Stacks, Queues, Linked lists, Trees and Graphs' concepts in algorithm analysis, Asymptotic complexity, Domain independent algorithm design techniques such as Divide and Conquer Greedy method, Dynamic programming, Backtracking, and Branch and Bound technique.
Example algorithms for above techniques from Sets, Graph text processing, External/Internal sorting, Height balanced trees, B-Trees, Hashing algorithms, Dynamic storage allocation, and Garbage collection.
Lower Bound Theory and NP Hard Problem.
Fundamentals of Computer Algorithms - Horowitz, Sartaj Sahni.
304 Computer Architecture:
Computer Organization and Operating system.
Introduction: Organization of a simple processor and instruction set, Concepts of interrupt and I/O processor, Block data transfer and DMA, Processors v/s memory speed, Role of cache, and Virtual memory.
Introduction and Classification of Parallel Computers, Pipelined and Vector Processors, Instruction pipelining, Reservation table, and Data & control hazards and method to remove them. Some vector processors - STAR 100, CRAY 1, CYBER 205.
SIMD or Array Processors: Various interconnection networks, Data routing through various networks, Comparison of various networks, Parallel algorithm for matrix addition, transpose, and multiplication on SIMD computers with Mesh, and Cube networks.
MIMD and Multiprocessor Systems: Uniform and non-uniform memory access multi processors, Scheduling in multiprocessor systems, Load balancing in multiprocessors systems, Parallel algorithm for matrix operations on multiprocessor systems.
PRAM Model of Parallel Computing and Basic Algorithms: PRAM model and its variations, and Relative powers of various PRAM models.
Parallel Algorithms for Multiprocessor Systems: Basic constructs for representing PRAM algorithms, Parallel reduction algorithm, Parallel prefix algorithm, Parallel list ranking, Parallel algorithm for merging and sorting using Linear Array, Mesh, and Cube configurations.
Computer Architecture and Parallel Processing - Hwang and Briggs.
E-113 Visual Basic
Introduction: Need of visual languages, Integrated Development Environment (IDE), Advantages of Visual Basic, Characteristics and features of Visual Basic IDE, Projects, User interface, Object oriented, Visual development and Event-driven programming, Forms/Graphics controls, Data processing, and Sharing with Windows and Internet applications.
Visual Basic Programming and Tools:
An introduction of Visual Basic programming, Simple program construction, Statements, Input/Output, Preprocessors, Comments, Editor, Codes, Variables, Constants, and Data types, Arrays, Collections, Procedures, Arguments, Functions, Subroutines, Control flow statements, Loop statements, Objects, and Variants.
Visual Basic Debugging Tools, Runtime Error Handling:
Designing User Interface: Elements of user interface, Understanding and designing Forms, Menus, Toolbars. Building dynamic forms, Drag-and-drop operations, Working with menus, and Customizing the toolbar.
Active X Controls: Textbox, Listbox, ComboBox, ScrollBar, and Slider control operations, Generating timed events, Drawing with Visual Basic using graphics controls, Coordinate systems and graphics methods. Manipulating colors and pixels with Visual Basic. Operations with Common Dialog Box control, Tree view and List view controls.
Object Oriented Programming: Create objects and classes, Creating special properties of classes, Enhancing the simple and object classes, Collections, Working with objects and collections. Recursive programming Binary search, Scanning folders and building a custom Explorer. Creating printed output using the printer object and reports.
Integrating with Microsoft Windows and Office, Concepts: Automation, Active X and Object models, Automation with MS Excel and MS Word.
Database Programming with Visual Basic: Data access methods, Creating, Reading, and Writing text files. Data controls, Creating queries.
Mastering Visual Basic - Petroutsos Evangelos.
All rights reserved. Copyright © 1999 - . Krishna Kumar Khatri.
Best viewed with Microsoft IE 6 or later, under 800x600 resolution with True Color (24-bit).