--
CS010 601: DESIGN AND ANALYSIS OF ALGORITHMS
Module I
Introduction and Complexity What is an algorithm –
Properties of an Algorithm, Development of an algorithm, Pseudo- code
Conventions, Recursive Algorithms – Performance Analysis - Space and Time
Complexity –Asymptotic Notations – ‘Oh’, ‘Omega’, ‘Theta’, Worst, Best and
Average Case Complexity, Running Time Comparison, Common Complexity Functions
-Recurrence Relations – Solving Recurrences using Iteration and Recurrence
Trees – Example Problems – Profiling - Amortized Complexity.
Module II
Divide and Conquer - Control Abstraction, Finding Maximum
and Minimum, Costs associated element comparisons and index comparisons, Binary
Search, Divide and Conquer Matrix Multiplication, Stressen’s Matrix
Multiplication, Quick Sort, Merge Sort. – Refinements.
Module III
Greedy Strategy - Control Abstraction, General Knapsack
Problem, and Minimum Cost Spanning Trees – PRIM’s Algorithm, Kruskal’s
Algorithm, Job sequencing with deadlines. Dynamic Programming - Principle of
Optimality, Multistage Graph Problem, Forward Approach, Backward Approach, All-Pairs
Shortest Paths, Traveling Salesman Problem.
Module IV
Backtracking – State Space Tree - Fixed Tuple and Variable
Tuple Formulation - Control Abstraction – Generating Function and Bounding
Function - Efficiency of the method - Monte Carlo Method – N-Queens Problem,
Sum of Subsets. Branch and Bound Techniques – FIFO, LIFO, and LC Control
Abstractions, 15-puzzle.
Module V
Sophisticated Algorithms - Approximation Algorithms – Planar
Graph Coloring, Vertex cover - String Matching Algorithms – Rabin Karp
algorithm - Topological Sort - Deterministic and Non-Deterministic Algorithms.
Lower Bound Theory - Comparison Trees for Searching and Sorting, lower bound on
comparison based algorithms, Sorting, Selection & Merging; Oracles and
Adversary Arguments –Merging, Basic concepts of randomized algorithm-Las Vagas
algorithm for search.
Reference Books
1. Ellis Horowitz and Sartaj Sahni, Sanguthevar Rajasekaran,
Fundamentals of Computer Algorithms, Universities Press, 2nd Edition, Hyderabad.
2. Thomas Coremen, Charles, Ronald Rives, Introduction to
algorithm, PHI Learning
3. Sara Baase & Allen Van Gelder, Computer Algorithms –
Introduction to Design and
Analysis, Pearson Education.
4. Anany Levitin, Introduction to the Design & Analysis
of Algorithms, Pearson Education, 2nd Edition, New Delhi, 2008.
5. Berman and Paul, Algorithms, Cenage Learning India
Edition, New Delhi, 2008.
6. S.K.Basu, Design Methods and Analysis of Algorithms, PHI
Learning Private Limited, New Delhi, 2008.
7. Jon Kleinberg and Eva Tardos, Algorithm Design, Pearson
Education, New Delhi, 2006.
8. Hari Mohan Pandey, Design Analysis and Algorithms,
University Science Press, 2008.
9. R. Panneerselvam, Design and Analysis of Algorithms, PHI
Learning Private Limited, New Delhi, 2009.
10. Udit Agarwal, Algorithms Design and Analysis, Dhanapat
Rai & Co, New Delhi, 2009.
11. Aho, Hopcroft and ullman, The Design and Analysis of
Computer Algorithms, Pearson Education, New Delhi, 2007.
12. S.E.Goodman and S. T. Hedetmiemi, Introduction to the
Design and Analysis of Algorithms, McGraw-Hill International Editions,
Singapore 2000.
13. Richard Neapolitan, Kumarss N, Foundations of
Algorithms, DC Hearth &company.
14. Sanjay Dasgupta, Christos Papadimitriou, Umesh Vazirani,
Algorithms, Tata McGraw-Hill Edition.
CS010 602: INTERNET COMPUTING
Module I
Introduction to Java- Genesis of Java- Features of Java
–Data Types-Variables and Arrays-Operators- Control Statements – Selection
Statements – Iteration Statements- Jump Statements.
Module II
Creating & using classes in Java – Methods and Classes –
Inheritance – Super Class – Method Overriding –Packages and Interfaces –
Implementing Interfaces- Exception Handling – Exception Types,
Threads-Multithreaded programs, Thread Priorities and Thread
synchronization.
Module III
I/O – I/O Basics – Byte Streams and Character Streams,
Reading Console Input, Collections Framework, Applets & Applet
Architecture-Applet Skelton- Passing Parameters to Applet, Event Handling-Event
Model- Event Classes – Event Listener Interfaces, AWT – AWT Classes – AWT
Controls – Layout Managers and Menus. Swing- JApplet – Jbuttons - JTables.
Module IV
Network Programming with Java – Socket Programming in
Java-Client Sockets- Server Sockets- Secure Server Sockets- TCP/IP Programming
with Java – Datagrams, IP multicasting, Remote Method Invocation.
Module V
Advanced Java Programming – Accessing Databases with JDBC,
Servlets, Image processing using Java – Image Filter – Web Application
development using Java Technolgies- Java Server Faces.
Reference Books
1) Herbert Schildt, Java 2 Complete reference, 5th ed., Tata
McGraw Hill, New Delhi, 2010
2) Deitel & Deitel Java How to Program 7th ed., Pearson Education,
New Delhi, 2008
3) Cay Horstmann Big Java 3rd ed., Wiley India Edition, New
Delhi, 2009
4) Y Daniel Liang Introduction to Java Programming 7th ed.,
Pearson Education, New Delhi, 2010
5) R Krishnamoorthy, S Prabhu Internet & Java
Programming, New Age International Publishers, New Delhi, 2008
6) Rajkumar Buyya, S Thamarai Selvi, Xingchen Chu, Object
Oriented Programming with Java, McGraw Hill, New Delhi, 2009
7) P Radha Krishna, Object Oriented Programming through Java
Universities Press, Hyderabad2008
8) Debasish Jana, Java and Object Oriented Programming
Paradigm, Prentice Hall of India, New Delhi, 2005
9) G Thomas Wu, an Introduction to Object Oriented
Programming with Java, 4th ed., Tata McGraw Hill, New Delhi, 2010
10) E Balagurusamy, Programming with Java a Primer, 4th ed.,
McGraw Hill, New Delhi, 2010
11) John R Hubbard, Programming with Java, 2nd ed., Schaum’s
Outlines, Tata McGraw Hill, New Delhi, 2004
CS010 603: SYSTEM SOFTWARE
Module I
Introduction:-
System Software Vs. Application Software, Different System Software–,
Macro Processor, Assembler, Linker, Loader, Text Editor, Debugger, Device
Driver, Compiler, Interpreter[1] Database Management System, Operating
System,[2] Macro Preprocessor Macro Instruction Definition and Invocation.
Types of Macros – Parameterised macros, Nested macros, Recursive macros. Basic
functions of Macro Preprocessor – Macro expansion, Generation of unique labels.
Macro preprocessor design and Algorithm - Handling conditional Macro calls,
Nested Macro calls and Recursive Macro calls.[Reference (1)] Case Study : The C
Preprocessor [Web- Reference (1) ]
Module - II
Assembler Assembly Language Concepts – Mnemonic
Instructions, Assembler Directives and Literals. Instruction formats and
Addressing modes. Program Blocks and Control Sections. Basic Functions of Assembler.
Assembler output format – Header, Text and End Records. Assembler Design – 2
Pass Assembler – Necessity of two passes and Forward reference. Algorithm for
the two passes. Single Pass Assembler – Algorithm for Single Pass assembler.
Handling External references – usage of Define and Refer records. Multi pass
Assembler, Macro Assembler. [Reference (1)] Case Study: Microsoft Macro
Assembler for MS-DOS [Reference (1), (5)] - Microsoft OBJ file format (Basic
Structure and Important Records Only) [Reference (2)].
Module – III
Linker and Loader Need for Linking and Loading: The absolute
loader, Program Relocation, Relocating Loader, Linking external symbols.
Algorithms for the two passes of a Linking Loader. [References (2), (3)]
Variants of the basic model – Automatic Library Search, Linkage Editor, Dynamic
Linking. [Reference (1)] Case study: UNIX ELF and Microsoft DLL (basic
structure only).
Module - IV
Text Editors: Overview of Editing, User Interface, Editor
Structure. [Reference (1)] Case Study:
VI Editor (Basic ideas only) [Reference (1)] Debuggers: Debugging Functions and
Capabilities, Relationship with other parts of the system, Debugging Methods- by
Induction, Deduction and Backtracking, [Reference (1), (8)] Case Study: gdb
(Basic ideas only)
Module - V
Device Driver : Device Characteristics ,Design and anatomy,
Types of device driver, General Design – Character Devices and character device
drivers, Block Devices and Block device drivers. Case Study: Device Driver for the PC Speaker [References
(4), (6), (7)]
Note: separate subjects are provided in the syllabus in the
Seventh and Fifth Semesters for the detailed discussion of the subjects marked
[1] and [2] respectively.
REFERENCES:
1. System Software: An Introduction to Systems Programming –
Leland L. Beck, Pearson Education Asia 3rd Edition.
2. Systems Programming and Operating Systems – D.M.
Dhamdhere, Tata McGraw Hill Second Revised Edition.
3. Systems Programming – John J. Donovan, Tata McGraw Hill
Edition 1991.
4. Writing UNIX device drivers - George Pajari -Pearson
Education Asia.
5. IBM PC Assembly
Language and Programming - Peter Abel Third Edition – Prentice Hall of India
6. Linux Device Drivers - Jonathan Corbet, Alessandro
Rubini, Greg Kroah-Hartman – Third Edition - O.Reilly Books
7. Linux Kernel Internals- M. Beck, H. Bohme, M .Dziadzka,
et al – Second Edition – Addison Wesley
8. System Software – J Nithyashri –Second Edition- Tata
McGraw Hill
WEB REFERENCE:
1. http://gcc.gnu.org/onlinedocs/gcc-2.95.3/cpp_1.html The C
Preprocessor
CS010 604: COMPUTER NETWORKS
Module I
Network requirements, Network Architecture –layering and
protocol, OSI Architecture, Internet Architecture, Performance-bandwidth and
latency , Delay x bandwidth product, high speed networks.
Module II
Direct Link Network, Hardware Building Block, Framing-Byte
Oriented Protocol, Bit Oriented Protocol, Clock Based Framing, Reliable
Transmission-Stop and Wait, Sliding Window, Ethernet (802.3)-Physical properties,
Access protocol, Wireless- Bluetooth, WiFi, Wimax
Module III
Packet Switching-Switching and Forwarding- Datagram, virtual
circuit switching, Source routing Bridges and LAN Switches-Learning Bridges,
Spanning tree Algorithms ,Broadcast and Multicast, Limitations of bridges,
Simple Internetworking- Service Model, Global Address, Datagram Forwarding in
IP, address translation, Routing-network as
graph, distance vector, link state, matrix
Module IV
End to End Protocol, Simple de-multiplexer, Reliable Byte
stream, TCP-Issues, segment format, connection establishment and termination
sliding window revisited, triggering transmission, adaptive retransmission,
RPC-fundamentals ,TCP Congestion control –additive increase, slow start, fast
retransmit and fast recovery, congestion avoidance mechanism, DEC bit, Random
Early Detection bit, Source Based Congestion avoidance
Module V
Applications -WWW, E-mail, Name Service, Network Management,
Web Services Custom Application protocol, Generic Application Protocol, Overlay
Networks-Peer to Peer Networks.
Reference Books
1. Computer Networks a Systems Approach-Larry L.Peterson and
Bruce S.Davie, 4th Edition .Morgan Kaufman
2. Introduction to data communication and networking Behrouz
Forozan TMH.
3 .Computer networks, Andrew S Tanenbaum, PHI
4. Data communication, computer networks and open systems,
Halsall F, Addison Wesley.
CS010 605: SOFTWARE ENGINEERING
Module - I
The Evolving role of Software – Software – The changing
Nature of Software – Legacy software
,Introduction to CASE tools, A generic view of process– A layered Technology –
A Process Framework – The Capability Maturity Model Integration (CMMI) –
Process Assessment – Personal and Team Process Models. Product and Process.
Process Models – The Waterfall Model – Incremental Process Models – Incremental
Model – The RAD Model – Evolutionary Process Models – Prototyping – The Spiral
Model – The Concurrent Development Model – Specialized Process Models – the
Unified Process.
Module - II
Management: Functions - Project planning - Software
productivity - Productivity metrics - Cost estimation - COCOMO & COCOMO II
- Project control - Work breakdown structures, Gantt charts, PERT charts -
Dealing with deviations - Team organization - centralized, de-centralized,
mixed - An assessment of organizations - Risk management – Configuration
Management. Introduction to project management and planning CASE tools.
Module - III
Requirements Engineering : Requirements Engineering tasks –
Initiating the requirements Engineering Process-Eliciting Requirements –
Developing Use cases – Building the Analysis Models – Elements of the Analysis
Model – Analysis pattern – Negotiating Requirements – Validating Requirements.
SRS Document.
Module – IV
Design activity & its objectives – Function Oriented and
Object Oriented Design- Modularization techniques - module structure and its
representation, interface and information hiding, categories, specific
techniques to accommodate change, stepwise refinement, top-down and bottom-up
design - Handling anomalies. Case Study with UML and CASE Tool support.
Module - V
Implementation Techniques - Programming principles and
guidelines – Structured Programming. Software Testing Fundamentals-Test Case
Design-White-Box Testing-Basis Path Testing-Control Structure Testing-
Black-Box Testing- Various levels of Testing : Modules to System. Case study:
Test case design and Testlog preperation
References
1. Roger S.Pressman, Software Engineering: A Practitioner’s
Approach, McGraw Hill International edition, Seventh edition.
2. Ian Sommerville, Software Engineering, 8th Edition,
Pearson Education, 2008 (UNIT V)
3. Stephan Schach,
Software Engineering, Tata McGraw Hill, 2007
4. Pfleeger and Lawrence Software Engineering: Theory and
Practice, Pearson Education, second edition, 2001
CS010 606L01: DISTRIBUTED SYSTEMS
Module I
Introduction to Distributed Systems, evolution,
characteristics, design issues, user requirements, distributed computing
models-workstation model, workstation-server model, and processor–pool model.
Protocols for distributed systems -VMTP and FLIP.
Module II
Client server communication, Group communication, IPC -
Message passing – features. RPC – model,
implementation, stub generation, RPC messages, communication protocols
marshalling. Distributed shared memory – Architecture, design issues,
thrashing, replacement strategy. Synchronization – clock synchronization, event
ordering, and mutual exclusion.
Module III
Distributed file system: Components of DFS, design issues,
interfaces, implementation, File Caching and Replication. Sun Network File
System – architecture and implementation, Google File System. Naming- Namespace
and contexts and name resolution.
Module IV
Distributed system management: Features of scheduling
algorithms, Task assignment approach, load balancing, load sharing, Process
migration mechanisms, Threads – design issues, Fault tolerance – failures,
Byzantine failures.
Module V
Distributed Databases: Distributed DBMS architecture,
distributed query processing, transactions, concurrency control, deadlock
management and Distributed Database Recovery protocols-2PC, Network
Partitioning.
Reference Books
1. Sunita Mahajan, Seema shah, Distributed Computing, Oxford
University Press, first edition, 2010
2. George Coulouris,
Jean Dellimore and Tim Kindberg, Distributed Systems – Concepts and designing, Pearson Education
Asia, fourth Edition 2006, New Delhi.
3. Pradeep. K, Sinha, Distributed Operating Systems, PHI
Edition, first Edition, 1997.
4. Andrew S Tenenbaum, Distributed Operating Systems,
Pearson Education Asia
CS010 606L02: MICRO CONTROLLER BASED SYSTEMS
Pre-requisites:
Microprocessor systems, advanced microprocessor and
peripherals
Module I
Microcontroller - Features of 8051-Arcchitecture of 8051-Pin
diagram of 8051-memory organization-External memory interfacing-stacks-
addressing modes-instruction set.
Module II
8051 programming in C-data types and time delay – I/O
programming – logical operation – data
conversation program –basics of serial communication connection to RS232-
serial port programming in assembly and C.
Module III
Basics of interrupts,-interrupt sources- interrupt enable
register-interrupt priority-interrupt control system-interrupt handling-single
step operation- port bit latches and buffers-port structures and operation-
accessing external memory.
Module IV
Timer 0& -Timer1- T MOD SFR-mode0,mode 1,mode2,mode3-
TCON SFR-serial interface-SCON SFR-mode0,mode 1,mode 2,mode3-block schematics-
baud rates-power on reset circuit-ONCE mode-on chip oscillator-external program
& data memory timing diagrams.
Module V
PIC microcontrollers: Overview and features-PIC16C6X/7X
FSR-Reset action-PIC memory organization-instructions-addressing modes.
Reference Books
1. Muhammad Ali mazidi, Janice Gillispie Mazidi, Rolin D Mc
kinlay , The 8051 microcontroller and embedded systems,person, second edition.,
2006
2. V Udayashankara,M S Mallikarjunaswamy ,8051 Microcontroller hardware &software
application,TMH
3. Ajay V Deshmukh, Microcontrollers, theory and
applications,TMH
4. Kennath J Ayala, The 8051 microcontroller, Penram
International
5. 1 Satish Shah,
8051 microcontrollers MCS 51 family and its variants, Oxford higher education
CS010 606L03: USER INTERFACE DESIGN
Module I
Introduction: Importance of user interface – definition,
importance of good design, brief history – Graphical User Interface – Web User
Interface – Theories, Principles and Guidelines of User interface design
Module II
Design Process:
Obstacles in development path deigning for people-Understanding Human
Interaction with computers, Importance of Human Characteristics, Human
consideration, Human Interaction speeds – Understanding Business function
Module III
Screen Designing: Design goals - screen meaning and purpose,
organizing screen elements- ordering of screen data and content – screen
navigation and flow – visually pleasing composition – amount of information –
focus and emphasis – presenting information simply and meaningfully – information retrieval on web –
Statistical graphics – Technological considerations in Interface Design.
Module IV
Menus and navigation schemes-structures of menus-functions
of menus- contents of menus -
formatting of menus – phrasing the menu-
selecting menu choices-navigating menus-kinds of graphical menus- Selection of windows-Window
characteristics-components of window- window presentation styles-types of
windows-window management-organising window functions-window
operations-Selection of device based and screen based controls - text and
messages – icons and images – Multimedia – colours- uses, problems, choosing
colours.
Module V
Distributed and Collaborative Interaction-Device
consistency-distribution of the user interface-event distribution-graphical
package layer-programmable API-Model semantics distribution-data layer
distribution-asynchronous collaboration-Software tools-specification methods-
interface building tools –evaluation and critiquing tools-Interaction devices-
keyboard and function keys - pointing devices-
speech recognition, digitization
and generation – image and video displays – printers.
Reference Books
1. Wilbert O. Galitz, the Essential Guide to User Interface
Design, 2nd Edn, Wiley Dreamtech, Delhi,
2002
2. Ben Shneiderman, Designing the User Interface, 3rd Edn,
Pearson Education Asia, Delhi, 2002
3. Dan R. Olsen, Human Computer Interaction, Cengage, New
Delhi, 2009
4. John M. Carroll,
Human Computer Interaction, Pearson Education Asia, Delhi, 2002 5.
Alan Cooper, the Essentials of User Interface Design, Wiley
Dreamtech, Delhi, 2002
CS010 606L04: UNIX SHELL PROGRAMMING
Module 1.
Introduction to Unix:- Architecture of Unix, Features of
Unix , Basic Unix Commands - Unix Utilities:- Introduction to Unix file system,
vi editor, file handling utilities, security by file permissions, process
utilities, disk utilities, networking commands - Text processing utilities and
backup
Module 2.
Introduction to Shells:-Unix Session, Standard Streams,
Redirection, Pipes, tee Command, Command Execution, Command-Line Editing,
Quotes, Command Substitution, Job Control, Aliases, Variables, Predefined
Variables, Options, Shell/Environment Customization. Regular expressions,
Filters and Pipes, Concatenating files, Display Beginning and End of files, Cut
and Paste, Sorting, Translating Characters, Files with Duplicate Lines, Count
characters, words or lines, Comparing Files.
Module 3.
grep:-Operation, grep Family, Searching for File Content.
sed:-Scripts, Operation, Addresses, commands, Applications, grep and sed.
awk:-Execution, Fields and Records, Scripts, Operations, Patterns, Actions,
Associative Arrays, String Functions, Mathematical Functions, User Defined
Functions, Using System commands in awk, Applications of awk, grep and sed
Module 4.
Interactive Shells -
Korn Shell, C Shell and BASH - Shell Features, Special Files, Variables,
Output, Input, Exit Status of a Command, eval Command, Environmental Variables,
Options, Startup Scripts, Command History, Command Execution Process.
Shell Programming - Korn Shell, C Shell and BASH - Basic
Script concepts, Expressions, Decisions: Making Selections, Repetition, special
Parameters and Variables, changing Positional Parameters, Argument Validation,
Debugging Scripts, Script Examples.
Module 5.
Process management: - Creation, Hierarchies, Sending signals
to processes, exec, termination, Zombie, waitpid etc - Network management: -
tools, Client server mechanism, address resolution, ping, telnet, ftp, dns and
squid – X Window System: - Overview, Architecture, starting and stopping X, X
clients and display
Reference Books
1. Behrouz A. Forouzan, Richard F. Gilberg,” Unix and shell
Programming.” Cengage Learning
2. Sumitabha Das, “Unix the ultimate guide”, TMH. 2nd
Edition.
3. Kernighan and Pike, “Unix programming environment”, PHI.
/ Pearson Education
4. Graham Glass, King Ables,” Unix for programmers and
users”, 3rd edition, Pearson
Education
5. Maurice J. Bach, “The Design of the Unix Operating
System”, First Edition, Pearson
Education, 1999
CS010 606L05: EMBEDDED SYSTEMS
Module I
Introduction to Embedded Systems-Classification of Embedded
Systems-Application areas of Embedded Systems, Typical Embedded System-
Memory-Sensors and Actuators-Embedded Firmware - Characteristics and Quality
Attributes of Embedded Systems
Module II
Application Specific Embedded System – Domain Specific
Embedded System, Designing Embedded Systems with 8bit Microcontrollers- Factors
to be considered in selecting a Controller- Designing with 8051
microcontroller- 8052 microcontroller, Programming the 8051 microcontroller –
Addressing modes of 8051 – the 8051 Instruction set
Module III
Hardware Software Co-Design and Program Modeling –
Computational models in Embedded Design, Embedded Hardware Design and
development – Electronic Design Automation Tools, Embedded Firmware Design and
Development - Embedded Firmware Design Approaches - Embedded Firmware
Development Languages – Programming in Embedded C.
Module IV
Real Time Operating System based Embedded System Design –
Operating System Basics – Types of Operating Systems – Tasks- Process- Threads
– Multiprocessing and Multitasking – Task Scheduling – Task Communication –
Task Synchronization – Introduction to Vx Works and Micro C/OS-II RTOS
Module V
The Embedded System Development Environment – Integrated
Development Environment, The Embedded Product Development Life Cycle – EDLC-
Objectives of EDLC – Different phases of EDLC – Modeling the EDLC
Reference Books
1. Shibu K V, Introduction to Embedded Systems, McGraw Hill,
New Delhi, 2009
2. Raj Kamal, Embedded Systems Architecture, Programming and
Design, 2nd ed., Tata McGraw Hill, New Delhi, 2008
3. Frank Vahid & Tony Givargis, Embedded System Design a
Unified Hardware/Software Introduction, Wiley - India Edition, New Delhi, 2010
4. Wayne Wolf, Computers as Components Principles of
Embedded Computing System Design, 2nd ed., Elsevier, Gurgaon, 2009
5. Steven F Barrett & Daniel J Pack, Embedded Systems
Design and Applications with the 68HC12 and HCS12, Pearson Education, Delhi,
2008.
CS010 606L06: ADVANCED SOFTWARE ENVIRONMENTS
Pre-requisites:
Knowledge required to study this subject (OOP
concepts))
Module I
Windows Programming – Components of Windows API- Distinction
with ordinary programs – Event Driven Programming – WinMain Function – Creating
Windows – Message loop – Window procedures - Menus & Buttons – Drawing on
Windows, Advanced User Interface concepts, Developing application issues and
solutions.
Module II
MFC Features &
Advantages – MFC Classes – Life cycle of an MFC application – The CWinApp
Classes – Creating windows – Message maps and event handling – Menus &
Buttons - Drawing on MFC windows –
Handling mouse & Keyboard events.
Module III
X-Windows – Clients & Servers - Basic Architecture of X-Windows systems – Layers in XWindows
Architecture – XWindows Programming – Simple Hello World Application in X. Command
line options and resources – connecting to X-Display – creating windows and
graphics context – Handling events – creating child windows.
Module IV
CORBA – Introduction – Features – Fundamental concepts in
Distributed objects – CORBA IDL – stub & Skeleton - implementing a simple
CORBA server and CORBA client with C++.
Module V
CORBA object reference – Managing references at server –
CORBA factories – CORBA object creation in C++ & JAVA – CORBA Exceptions –
Destroying CORBA objects - comparison of CORBA & DCOM Architectures.
Reference Books
1. Yashwanth Kanetkar, Visual C++ Programming, BPB Publications,
New Delhi, 2005.
2. Mike Blaszczals, Professional MFC with Visual C++ 6, 4th
Edition, Shroff publishers & Distributors Private Limited, New Delhi, 2003.
3. Nabajyoti Bakakati, X Window System programming, 2nd
Edition, Prentice-Hall of India Private Limited, New Delhi, 2001.
4. Jason Pritchard, COM & CORBA side by side, Pearson
Edition New Delhi, 2000.
CS010 607: OPERATING SYSTEMS LAB
(Implement the following on LINUX platform. Use C for high
level language implementation)
1. Basic UNIX commands
2. Shell programming
- Command syntax - Write simple functions with basic tests, loops, patterns
3. Write programs using the following system calls of UNIX
operating system: fork, exec,
getpid, exit, wait, close, stat, opendir, readdir
4. Write programs using the I/O system calls of UNIX
operating system (open, read, write, etc)
5. Write C programs to simulate UNIX commands like ls, grep,
etc.
6. Given the list of processes, their CPU burst times and
arrival times, display/print the Gantt chart for FCFS and SJF. For each of the
scheduling policies, compute and print the average waiting time and average
turnaround time
7. Given the list of processes, their CPU burst times and
arrival times, display/print the Gantt chart for Priority and Round robin. For
each of the scheduling policies, compute and print the average waiting time and
average turnaround time
8. Implement the Producer – Consumer problem using
semaphores.
9. Implement inter-process communication using shared
memory.
10. Implement some memory management schemes
Example for expt 10:
Free space is maintained as a linked list of nodes with each
node having the starting byte address and the ending byte address of a free
block. Each memory request consists of the process-id and the amount of storage
space required in bytes. Allocated memory space is again maintained as a linked
list of nodes with each node having the process-id, starting byte address and
the ending byte address of the allocated space.
When a process finishes (taken as input) the appropriate
node from the allocated list should be deleted and this free disk space should
be added to the free space list. [Care should be taken to merge contiguous free
blocks into one single block. This results in deleting more than one node from
the free space list and changing the start and end address in the appropriate
node]. For allocation use first fit, worst fit and best fit.
CS010 608: MINI PROJECT
In this practical course, each group consisting of two/three
members (four in special cases) is expected to design and develop practical
solutions to real life problems related to industry, institutions and computer
science research. Software life cycle should be followed during the
development. The theoretical knowledge, principles and practices gained from
various subjects should be applied to develop effective solutions to various
computing problems. The knowledge gained during various practical subjects to
work with various software tools, Designing tools, programming languages,
operating systems, etc. should be utilized in various stages of development.
Structured/ Object oriented design techniques may be used for the project.
Software Requirements Specification (SRS), Modelling Techniques, Design and
Testing strategies should be documented properly.
A committee consisting of minimum three faculty members will
perform the internal assessment of the mini project. A report on mini project
should be submitted for evaluation and project work should be presented and
demonstrated before the panel of examiners.
Internal Continuous Assessment (50 marks) 40% - Design and
development (30% by guide and 10% by committee) 30% - Final result and
Demonstration (15% by guide and 15% by committee) 20% - Report (10% by guide
and 10% by committee) 10% -
Regularity in the class (by guide)
End Semester Examination (Maximum Marks-100) 20% -
Demonstration of mini project 50% - Practical test connected with mini project
20% - Viva voce 10% - Project report
0 comments:
Post a Comment