S3 Ktu 2016 Cse
S3 Ktu 2016 Cse
S3 Ktu 2016 Cse
Introduction
CS201 DISCRETE COMPUTATIONAL 3-1-0-4 2016
STRUCTURES
Pre-requisite: NIL
Course Objectives
1. To introduce mathematical notations and concepts in discrete mathematics that is
essential for computing.
2. To train on mathematical reasoning and proof strategies.
3. To cultivate analytical thinking and creative problem solving skills.
Syllabus
Review of Set theory, Countable and uncountable Sets, Review of Permutations and
combinations, Pigeon Hole Principle, Recurrence Relations and Solutions, Algebraic systems
(semigroups, monoids, groups, rings, fields), Posets and Lattices, Prepositional and Predicate
Calculus, Proof Techniques.
Expected Outcome:
Students will be able to
1. identify and apply operations on discrete structures such as sets, relations and functions
in different areas of computing.
2. verify the validity of an argument using propositional and predicate logic.
3. construct proofs using direct proof, proof by contraposition, proof by contradiction and
proof by cases, and by mathematical induction.
4. solve problems using algebraic structures.
5. solve problems using counting techniques and combinatorics.
6. apply recurrence relations to solve problems in different domains.
Text Books
1. Trembly J.P and Manohar R, Discrete Mathematical Structures with Applications to
Computer Science, Tata McGrawHill Pub.Co.Ltd, New Delhi, 2003.
2. Ralph. P. Grimaldi, Discrete and Combinatorial Mathematics: An Applied
Introduction, 4/e, Pearson Education Asia, Delhi, 2002.
References:
1. Liu C. L., Elements of Discrete Mathematics, 2/e, McGrawHill Int. editions, 1988.
2. Bernard Kolman, Robert C. Busby, Sharan Cutler Ross, Discrete Mathematical
Structures, Pearson Education Pvt Ltd., New Delhi, 2003
3. Kenneth H.Rosen, Discrete Mathematics and its Applications, 5/e, Tata McGraw Hill
Pub. Co. Ltd., New Delhi, 2003.
4. Richard Johnsonbaugh, Discrete Mathematics, 5/e, Pearson Education Asia, New
Delhi, 2002.
5. Joe L Mott, Abraham Kandel, Theodore P Baker, Discrete Mathematics for Computer
Scientists and Mathematicians, 2/e, Prentice-Hall India, 2009.
Course Plan
Hou End Sem
Module Contents rs Exam
(54) Marks
Review of elementary set theory :
Algebra of sets Ordered pairs and Cartesian products 3
Countable and Uncountable sets
Relations :-
Relations on sets Types of relations and their properties 6
Relational matrix and the graph of a relation Partitions
I 15 %
Equivalence relations - Partial ordering- Posets Hasse
diagrams - Meet and Join Infimum and Supremum
Functions :-
Injective, Surjective and Bijective functions - Inverse of a 1
function- Composition
Text Books:
1. Hamacher C., Z. Vranesic and S. Zaky, Computer Organization ,5/e, McGraw Hill,
2011.
2. Mano M. M., Digital Logic & Computer Design, 4/e, Pearson Education, 2013.
References:
1. Mano M. M., Digital Logic & Computer Design, 4/e, Pearson Education, 2013.
2. Patterson D.A. and J. L. Hennessey, Computer Organization and Design, 5/e, Morgan
Kauffmann Publishers, 2013.
3. William Stallings, Computer Organization and Architecture: Designing for
Performance, Pearson, 9/e, 2013.
4. Chaudhuri P., Computer Organization and Design, 2/e, Prentice Hall, 2008.
5. Rajaraman V. and T. Radhakrishnan, Computer Organization and Architecture,
Prentice Hall, 2011.
6. Messmer H. P., The Indispensable PC Hardware Book, 4/e, Addison-Wesley, 2001
Course Plan
Module Contents Hours Sem.ExamMarks
(51)
I Basic Structure of computersfunctional units 6 15%
basic operational concepts bus structures
software. Memory locations and addresses
memory operations instructions and instruction
sequencing addressing modes ARM Example
(programs not required). Basic I/O operations
stacks subroutine calls.
II Basic processing unit fundamental concepts 10 15%
instruction cycle - execution of a complete
instruction multiple- bus organization
sequencing of control signals.
Arithmetic algorithms: Algorithms for
multiplication and division of binary and BCD
numbers array multiplier Booths
multiplication algorithm restoring and non-
restoring division algorithms for floating point,
multiplication and division.
6. Part E
a. Total Marks: 40
b. Six questions each carrying 10 marks, uniformly covering modules V and VI;
four questions have to be answered.
c. A question can have a maximum of three sub-parts.
Syllabus
Introduction to Number Systems, Boolean Algebra, Canonical Forms, Logic Gates, Digital Circuit
Design, Combination Logic Circuit Design, Sequential Circuit Design, Registers, Counter, Memory
modules, Programmable Logical Arrays, Hardware Description Language for Circuit Design,
Arithmetic algorithms
Expected Outcome:
Students will be able to:-
1. apply the basic concepts of Boolean algebra for the simplification and implementation of logic
functions using suitable gates namely NAND, NOR etc.
2. design simple Combinational Circuits such as Adders, Subtractors, Code Convertors, Decoders,
Multiplexers, Magnitude Comparators etc.
3. design Sequential Circuits such as different types of Counters, Shift Registers, Serial Adders,
Sequence Generators.
4. use Hardware Description Language for describing simple logic circuits.
5. apply algorithms for addition/subtraction operations on Binary, BCD and Floating Point
Numbers.
Text Books:
1. Mano M. M., Digital Logic & Computer Design, 4/e, Pearson Education, 2013. [Chapters:
1, 2, 3, 4, 5, 6, 7].
2. Floyd T. L., Digital Fundamentals, 10/e, Pearson Education, 2009. [Chapters: 5, 6].
3. M. Morris Mano, Computer System Architecture, 3/e, Pearson Education, 2007. [Chapter
10.1, 10.2, 10.5, 10.6, 10.7].
4. Harris D. M. and, S. L. Harris, Digital Design and Computer Architecture, 2/e, Morgan
Kaufmann Publishers, 2013 [Chapter 4.1, 4.2]
References:
1. Tokheim R. L., Digital Electronics Principles and Applications, 7/e, Tata McGraw Hill,
2007.
2. Mano M. M. and M. D Ciletti, Digital Design, 4/e, Pearson Education, 2008.
3. Rajaraman V. and T. Radhakrishnan, An Introduction to Digital Computer Design, 5/e,
Prentice Hall India Private Limited, 2012.
4. Leach D, Malvino A P, Saha G, Digital Principles and Applications, 8/e, McGraw Hill
Education, 2015.
COURSE PLAN
Contact
Module Contents Sem. Exam
Hours
Marks;%
(52)
Number systems Decimal, Binary, Octal and
Hexadecimal conversion from one system to another
representation of negative numbers representation of
I BCD numbers character representation character
coding schemes ASCII EBCDIC etc.
6. Part E
a. Total Marks: 40
b. Six questions each carrying 10 marks, uniformly covering modules V and VI;
four questions have to be answered.
c. A question can have a maximum of three sub-parts.
Syllabus
Expected outcome
Students will be able to:
1. identify the significance of operating system in computing devices.
2. exemplify the communication between application programs and hardware devices
through system calls.
3. compare and illustrate various process scheduling algorithms.
4. apply appropriate memory and file management schemes.
5. illustrate various disk scheduling algorithms.
6. appreciate the need of access control and protection in an operating system.
Text Book:
1. Abraham Silberschatz, Peter B Galvin, Greg Gagne, Operating System Concepts, 9/e,
Wiley India, 2015.
References:
1. Garry Nutt, Operating Systems: 3/e, Pearson Education, 2004
2. Bhatt P. C. P., An Introduction to Operating Systems: Concepts and Practice, 3/e,
Prentice Hall of India, 2010.
3. William Stallings, Operating Systems: Internals and Design Principles, Pearson,
Global Edition, 2015.
4. Andrew S Tanenbaum, Herbert Bos, Modern Operating Systems, Pearson, 4/e, 2015.
5. Madnick S. and J. Donovan, Operating Systems, McGraw Hill, 2001.
6. Hanson P. B., Operating System Principle, Prentice Hall of India, 2001.
7. Deitel H. M., An Introduction to Operating System Principles, Addison-Wesley,
1990.
Course Plan
Module Contents Hours Sem. Exam marks
(52)
I Introduction: Functions of an operating system. 15%
Single processor, multiprocessor and clustered
systems overview. Kernel Data Structures
Operating Systems used in different computing
environments.
7
Operating System Interfaces and
implementation - User Interfaces, System Calls
examples. Operating System implementation -
approaches. Operating System Structure
Monolithic, Layered, Micro-kernel, Modular.
System Boot process.
II Process Management: Process Concept 9 15%
Processes-States Process Control Block
Threads. Scheduling Queues Schedulers
Context Switching. Process Creation and
Termination.
6. Part E
a. Total Marks: 40
b. Six questions each carrying 10 marks, uniformly covering modules V and VI;
four questions have to be answered.
c. A question can have a maximum of three sub-parts.
1. To impart a thorough understanding of linear data structures such as stacks, queues and their
applications.
2. To impart a thorough understanding of non-linear data structures such as trees, graphs and their
applications.
3. To impart familiarity with various sorting, searching and hashing techniques and their
performance comparison.
4. To impart a basic understanding of memory management.
Syllabus
Introduction to various programming methodologies, terminologies and basics of algorithms
analysis, Basic Abstract and Concrete Linear Data Structures, Non-linear Data Structures, Memory
Management, Sorting Algorithms, Searching Algorithms, Hashing.
Expected Outcome:
Students will be able to
1. compare different programming methodologies and define asymptotic notations to analyze
performance of algorithms.
2. use appropriate data structures like arrays, linked list, stacks and queues to solve real world
problems efficiently.
3. represent and manipulate data using nonlinear data structures like trees and graphs to design
algorithms for various applications.
4. illustrate and compare various techniques for searching and sorting.
5. appreciate different memory management techniques and their significance.
6. illustrate various hashing techniques.
Text Books:
1. Samanta D., Classic Data Structures, Prentice Hall India, 2/e, 2009.
2. Richard F. Gilberg, Behrouz A. Forouzan, Data Structures: A Pseudocode Approach with C,
2/e, Cengage Learning, 2005.
References
1. Horwitz E., S. Sahni and S. Anderson, Fundamentals of Data Structures in C, University Press
(India), 2008.
2. Aho A. V., J. E. Hopcroft and J. D. Ullman, Data Structures and Algorithms, Pearson
Publication,1983.
3. Tremblay J. P. and P. G. Sorenson, Introduction to Data Structures with Applications, Tata
McGraw Hill, 1995.
4. Peter Brass, Advanced Data Structures, Cambridge University Press, 2008
5. Lipschuts S., Theory and Problems of Data Structures, Schaums Series, 1986.
6. Wirth N., Algorithms + Data Structures = Programs, Prentice Hall, 2004.
7. Hugges J. K. and J. I. Michtm, A Structured Approach to Programming, PHI, 1987.
8. Martin Barrett, Clifford Wagner, And Unix: Tools For Software Design, John Wiley, 2008
reprint.
COURSE PLAN
Sem.
Module Contents Hours
Exam
(56)
Marks
Introduction to programming methodologies structured
approach, stepwise refinement techniques, programming style,
documentation analysis of algorithms: frequency count,
I 9 15%
definition of Big O notation, asymptotic analysis of simple
algorithms. Recursive and iterative algorithms.
6. Part E
a. Total Marks: 40
b. Six questions each carrying 10 marks, uniformly covering modules V and VI;
four questions have to be answered.
c. A question can have a maximum of three sub-parts.
Syllabus
RC Circuits, Diode Circuits, Regulated power supplies, Field effect transistor, DC analysis of
BJT, RC Coupled amplifier, MOSFET amplifiers, Feedback amplifiers, Power amplifiers,
Oscillators, Multivibrators, Operational Amplifier and its applications, Timer IC.
Expected Outcome:
Students will be able to
1. explain, illustrate, and design the different electronic circuits using electronic
components
2. design circuits using operational amplifiers for various applications
Text Books:
1. David A Bell, Electronic Devices and Circuits, Oxford University Press, 2008
2. Salivahanan S. and V. S. K. Bhaaskaran, Linear Integrated Circuits, Tata McGraw Hill,
2008
References :
1. Neamen D., Electronic Circuits, Analysis and Design, 3/e, TMH, 2007
2. Robert Boylestad and L Nashelsky, Electronic Devices and Circuit Theory, Pearson.
3. Bogart T. F., Electronic Devices Circuits, 6/e, Pearson, 2012.
4. Maini A. K. and V. Agrawal, Electronic Devices and Circuits, Wiley India, 2011.
5. K.Gopakumar, Design and Analysis of Electronic Circuits, Phasor Books, Kollam, 2013
6. Millman J. and C. Halkias, Integrated Electronics, 2/e, McGraw-Hill, 2010.
Course Plan
Module Contents Hou Sem
rs Exam
(40) Marks
1 Wave shaping circuits: Sinusoidal and non-sinusoidal wave
shapes, Principle and working of RC differentiating and
integrating circuits, Conversion of one non-sinusoidal wave 5 15%
shape into another.
Clipping circuits - Positive, negative and biased clipper.
Clamping circuits - Positive, negative and biased clamper.
Voltage multipliers- Voltage doubler and tripler.
Simple sweep circuit using transistor as a switch.
2 Regulated power supplies: Review of simple zener voltage
regulator, Shunt and series voltage regulator using transistors,
Current limiting and fold back protection, 3 pin regulators-78XX
and 79XX, IC 723 and its use as low and high voltage regulators, 4
DC to DC conversion, Circuit/block diagram and working of
SMPS. 15 %
6. Part E
a. Total Marks: 40
b. Six questions each carrying 10 marks, uniformly covering modules V and VI;
four questions have to be answered.
c. A question can have a maximum of three sub-parts.
Syllabus:
Types of data, database and DBMS, Languages and users. Software Architecture, E-R and
Extended E-R Modelling, Relational Model concepts and languages, relational algebra and tuple
relational calculus, SQL, views, assertions and triggers, HLL interfaces, relational db design, FDs
and normal forms, Secondary storage organization, indexing and hashing, query optimization,
concurrent transaction processing and recovery principles, recent topics.
Expected outcome.
Students will be able to:
1. define, explain and illustrate the fundamental concepts of databases.
2. construct an Entity-Relationship (E-R) model from specifications and to perform the
transformation of the conceptual model into corresponding logical data structures.
3. model and design a relational database following the design principles.
4. develop queries for relational database in the context of practical applications
5. define, explain and illustrate fundamental principles of data organization, query
optimization and concurrent transaction processing.
6. appreciate the latest trends in databases.
Text Books:
1. Elmasri R. and S. Navathe, Database Systems: Models, Languages, Design
andApplication Programming, Pearson Education, 2013.
2. Sliberschatz A., H. F. Korth and S. Sudarshan, Database System Concepts, 6/e, McGraw
Hill, 2011.
References:
1. Powers S., Practical RDF, OReilly Media, 2003.
2. Plunkett T., B. Macdonald, et al., Oracle Big Data Hand Book, Oracle Press, 2013.
Course Plan
Hours
Module Contents Sem.ExamMarks
(42)
Introduction: Data: structured, semi-structured and
unstructured data, Concept & Overview of DBMS, Data
Models, Database Languages, Database Administrator,
Database Users, Three Schema architecture of DBMS. 06 15%
I
Database architectures and classification. (Reading:
ElmasriNavathe, Ch. 1 and 2. Additional Reading:
Silbershatz, Korth, Ch. 1) Entity-Relationship Model:
Basic concepts, Design Issues, Mapping Constraints,
Keys, Entity-Relationship Diagram, Weak Entity Sets,
Relationships of degree greater than 2 (Reading:
ElmasriNavathe, Ch. 7.1-7.8)
Relational Model: Structure of relational Databases,
Integrity Constraints, synthesizing ER diagram to
relational schema (Reading: ElmasriNavathe, Ch. 3 and
II 8.1, Additional Reading: Silbershatz, Korth, Ch. 2.1- 06 15%
2.4) Database Languages: Concept of DDL and DML
relational algebra (Reading: Silbershatz, Korth, Ch
2.5-2.6 and 6.1-6.2, ElmasriNavathe, Ch. 6.1-6.5)
FIRST INTERNAL EXAM
Structured Query Language (SQL): Basic SQL
Structure, examples, Set operations, Aggregate
Functions, nested sub-queries (Reading:
ElmasriNavathe, Ch. 4 and 5.1) Views, assertions and 07 15%
III
triggers (Reading: ElmasriNavathe, Ch. 5.2-5.3,
Silbershatz, Korth Ch. 5.3). Functions, Procedures
and HLL interfaces (Reading: Silbershatz, Korth Ch.
5.1-5.2).
Relational Database Design: Different anomalies in
designing a database, normalization, functional
dependency (FD), Armstrongs Axioms, closures,
Equivalence of FDs, minimal Cover (proofs not
IV required). Normalization using functional dependencies, 07 15%
INF, 2NF, 3NF and BCNF, lossless and dependency
preserving decompositions (Reading: Elmasri and
Navathe, Ch. 14.1-14.5, 15.1-15.2. Additional Reading:
Silbershatz, Korth Ch. 8.1-8.5)
SECOND INTERNAL EXAM
Physical Data Organization: index structures, primary,
secondary and clustering indices, Single level and
Multi-level indexing, B-Trees and B+-Trees (basic
structure only, algorithms not needed), Indexing on
V multiple keys (Reading Elmasri and Navathe, Ch. 17.1- 08 20%
17.4) Query Optimization: algorithms for relational
algebra operations, heuristics-based query optimization,
Cost-based query optimization (Reading Elmasri and
Navathe, Ch. 18.1-18.3, 18.6-18.8)
Transaction Processing Concepts: overview of
concurrency control and recovery acid properties, serial
VI and concurrent schedules, conflict serializability. Two- 08 20%
phase locking, failure classification, storage structure,
stable storage, log based recovery, deferred database
modification, check-pointing, (Reading Elmasri and
Navathe, Ch. 20.1-20.5 (except 20.5.4-20.5.5) ,
Silbershatz, Korth Ch. 15.1 (except 15.1.4-15.1.5), Ch.
16.1 16.5) Recent topics (preliminary ideas only):
Semantic Web and RDF(Reading: Powers Ch.1, 2),
GIS, biological databases (Reading: Elmasri and
Navathe Ch. 23.3-23.4) Big Data (Reading: Plunkett
and Macdonald, Ch. 1, 2)
END SEMESTER EXAM
6. Part E
a. Total Marks: 40
b. Six questions each carrying 10 marks, uniformly covering modules V and VI;
four questions have to be answered.
c. A question can have a maximum of three sub-parts.
2. Application problems using stacks: Infix to post fix conversion, postfix and pre-fix
evaluation, MAZE problem etc. **
8. Implementation of binary trees using linked lists and arrays- creations, insertion, deletion
and traversal. **
11. Implementation of sorting algorithms bubble, insertion, selection, quick (recursive and
non-recursive), merge sort (recursive and non-recursive), and heap sort.**
13. Representation of graphs and computing various parameters (in degree, out degree etc.) -
adjacency list, adjacency matrix.
15. Implementation of hash table using various mapping functions, various collision and
overflow resolving schemes.**
18. Simulation of a basic memory allocator and garbage collector using doubly linked list.
** mandatory.
Expected Outcome:
Students will be able to:
1. appreciate the importance of structure and abstract data type, and their basic usability in
different applications
2. analyze and differentiate different algorithms based on their time complexity.
3. implement linear and non-linear data structures using linked lists.
4. understand and apply various data structure such as stacks, queues, trees, graphs, etc. to
solve various computing problems.
5. implement various kinds of searching and sorting techniques, and decide when to choose
which technique.
6. identify and use a suitable data structure and algorithm to solve a real world problem.
Course code Course Name L-T-P-Credits Year of
Introduction
CS232 Free and Open Source Software Lab 0-0-3-1 2016
Pre-requisite: CS204 Operating systems
Course Objectives: To expose students to FOSS environment and introduce them to use open
source packages in open source platform.
List of Exercises/Experiments: (Minimum 12 exercises/experiments are mandatory)
1. Getting started with Linux basic commands and directory structure, execute file, directory
operations.
2. Linux commands for redirection, pipes, filters, job control, file ownership, file permissions,
links and file system hierarchy.
3. Shell Programming : Write shell script to show various system configuration like
Currently logged user and his logname
Your current shell
Your home directory
Your operating system type
Your current path setting
Your current working directory
Show Currently logged number of users
4. Write shell script to show various system configuration like
About your OS and version, release number, kernel version
Show all available shells
Show mouse settings
Show computer CPU information like processor type, speed etc
Show memory information
Show hard disk information like size of hard-disk, cache memory, model etc
File system (Mounted)
5. Shell script program for scientific calculator.
6. Write a script called addnames that is to be called as follows, where classlist is the name of
the classlist file, and username is a particular student's username.
./addnamesclasslistusername
The script should
check that the correct number of arguments was received and print an usage message if
not,
check whether the classlist file exists and print an error message if not,
check whether the username is already in the file, and then either
print a message stating that the name already existed, or
add the name to the end of the list.
7. Version Control System setup and usage using GIT.
Creating a repository
Checking out a repository
Adding content to the repository
Committing the data to a repository
Updating the local copy
Comparing different revisions
Revert
Conflicts and Solving a conflict
8. Text processing and regular expression with Perl, Awk: simple programs, connecting with
database e.g., MariaDB
9. Shell script to implement a script which kills every process which uses more than a specified
value of memory or CPU and is run upon system start.
10. GUI programming : Create scientific calculator using Gambas or try using GTK or QT
11. Running PHP : simple applications like login forms after setting up a LAMP stack
12. Advanced linux commands curl, wget, ftp, ssh and grep
13. Application deployment on a cloud-based LAMP stack/server with PHP eg: Openshift,
Linode etc.
14. Kernel configuration, compilation and installation : Download / access the latest kernel
source code from kernel.org, compile the kernel and install it in the local system. Try to
view the source code of the kernel
15. Virtualisation environment (e.g., xen, kqemu, virtualbox or lguest) to test an applications,
new kernels and isolate applications. It could also be used to expose students to other
alternate OSs like *BSD
16. Compiling from source : learn about the various build systems used like the auto* family,
cmake, ant etc. instead of just running the commands. This could involve the full process
like fetching from a cvs and also include autoconf, automake etc.,
17. Introduction to packet management system : Given a set of RPM or DEB, how to build and
maintain, serve packages over http or ftp. and also how do you configure client systems to
access the package repository.
18. Installing various software packages. Either the package is yet to be installed or an older
version is existing. The student can practice installing the latest version. Of course, this
might need Internet access.
Install samba and share files to windows
Install Common Unix Printing System(CUPS)
Expected outcome:
Students will be able to:
1. Identify and apply various Linux commands
2. Develop shell scripts and GUI for specific needs
3. Use tools like GIT, .
4. Perform basic level application deployment, kernel configuration and installation, packet
management and installation etc.
Course No. Course Name L-T-P - Credits Year of
Introduction
CS233 ELECTRONICS CIRCUITS LAB 0-0-3-1 2016
Pre-requisite: CS207 Electronic devices & circuits
Course Objectives:
1. To introduce the working of analog electronic circuits.
2. To design, implement and demonstrate analog circuits using electronic components.
3. To provide hands-on experience to the students so that they are able to put theoretical
concepts to practice.
4. To use computer simulation tools such as PSPICE, or Multisim to the simulation of
electronic circuits.
5. To create an ability to develop descriptions, explanations, predictions and models using
evidence .
6. To create an ability to communicate effectively the scientific procedures and explanations
about the experiments in oral/report forms.
List of Exercises/Experiments :
(Minimum 13 experiments are to be done in the semester, at least 6 each should be selected from
the first(Exp. 1-10) and second(Exp. 11-20) half. Experiment no. 18 is compulsory).