3rd Sem Syllabus
3rd Sem Syllabus
3rd Sem Syllabus
Semester-III
Course Credits Total Total
No. Code Course Title
Type L T P Credits Hours
NSS
8 NCMC YOGA 0 0 0 0 0
TOTAL 16 3 3 22 28
B.M.S. COLLEGE OF ENGINEERING, BENGALURU-19
(Autonomous Institute, Affiliated to VTU)
DEPARTMENT OF INFORMATION SCIENCE AND ENGINEERING
UNIT - 1
GRAPH THEORY: Basic concepts: Types of graphs, order and size of a graph, in-degree andout-
degree, connected and disconnected graphs, Eulerian graph, Hamiltonian graphs, sub-graphs,
isomorphic graphs. Matrix representation of graphs: adjacency matrix, incidence matrix. Trees:
spanning tree, minimal spanning tree: Kruskal's algorithm and shortest path-Dijkstra's algorithm
UNIT - 2
PROBABILITY DISTRIBUTIONS:
Theoretical distributions: Discrete and continuous random variables
Discrete distributions: Poisson distribution, Geometric distributions. Continuous distributions:
Exponential, Gaussian, Uniform Distribution and Gamma distributions.
UNIT - 3
UNIT - 4
UNIT - 5
COMBINATORICS:
Introduction, Binomial and multinomial theorems, Catalan numbers, the principle of inclusion
and exclusion, Derangements, Rook Polynomials, Generating functions.
B.M.S. COLLEGE OF ENGINEERING, BENGALURU-19
(Autonomous Institute, Affiliated to VTU)
DEPARTMENT OF INFORMATION SCIENCE AND ENGINEERING
Text Books:
Reference Books:
e- Books:
MOOCs:
UNIT - 1
UNIT - 2
UNIT - 3
UNIT - 4
UNIT - 5
Text Books:
Reference Books:
1. Computer Organization & Architecture, William Stallings 10th Edition, Pearson, 2015.
2. Computer Organization and Design. The Hardware/SoftwareInterface, David A.Patterson
and John L.Hennessy, fifth Edition, Morgan Kaufman Publishers.
e- Books:
MOOCs:
UNIT - 1
Introduction to Data Structures: Definition and its classification, Dynamic Memory allocation.
Linked Lists: Definition, Basic Operations on Singly Linked List, singly linked List with Header
Nodes, Applications of Singly Linked Lists.
UNIT - 2
Linked List: Doubly Linked Lists, Circular Linked List – Implementation and Applications.
Stacks: Definition, Operations, Implementation using Arrays and Linked list, Applications of
Stack – Infix to postfix conversion, Evaluation of postfix expression.
UNIT - 3
UNIT - 4
Binary Trees: Binary Tree properties and representations, traversals and other operations. Binary
Search Trees: Definition, Operations on BST, Threaded binary trees, Applications.
UNIT - 5
Balanced Trees: AVL Trees, Splay trees, Red- Black Trees – Definitions, Rotation and other
basic operations.
Text Books:
1. Data Structures using C and C++, Yedidyah, Augenstein, Tannenbaum, 2nd Edition,
Pearson Education, 2007.
2. Data Structures using C, Reema Thareja, Oxford University Press 2nd Edition, 2011.
Reference Books:
1. Fundamentals of Data Structures in C, by Horowitz, Sahni, Anderson- Freed, 2nd Edition,
Universities Press, 2007.
B.M.S. COLLEGE OF ENGINEERING, BENGALURU-19
(Autonomous Institute, Affiliated to VTU)
DEPARTMENT OF INFORMATION SCIENCE AND ENGINEERING
1. https://www.mta.ca/~rrosebru/oldcourse/263114/Dsa.pdf
2. https://ebooks.lpude.in/computer_application/mca/term_2/DCAP407_DATA_STRUCTURE
.pdf
MOOCs:
CO2 Analyze and Develop operations on linear and non-linear data structures.
UNIT - 1
Introduction: Overview to Object Oriented Programming, Benefits and applications of Object
Oriented Programming.
Beginning with C++: Program structure, cin and cout objects, namespace, identifiers, variables,
constants, operators, reference types, typecasting, control structures.
Objects and Classes: Basics of object and class in C++, private and public members, Specifying
a class, C++ program with a class, arrays within a class, memory allocation to objects, Array of
objects.
UNIT - 2
Functions in C++: Functions, Inline Function, function overloading, Default arguments, Friend
functions, static data and function members, Objects as function arguments, returning objects,
constant member functions and objects, this pointer. 270 page
Constructors and Destructors: Constructors and its types – Default constructors, Parameterized
constructors, multiple constructors in a class, Constructors with default arguments, dynamic
initialization of objects, Copy constructor, Dynamic constructors, Destructors.
UNIT - 3
Operator overloading and Type conversion: Defining Operator overloading, Overloading Unary
operators, Binary Operators using friend functions and Member functions, Overloading Special
operators, Comma operator, new and delete operators, Rules for overloading operators, Type
conversion.
Inheritance: Concept of Inheritance, types of inheritance - single, multiple, multilevel,
hierarchical, hybrid, protected members, overriding, virtual base class. student faculty one
UNIT - 4
Polymorphism: Pointers, Pointes to Objects, pointers to members and member functions, Pointers
to derived classes, virtual and pure virtual functions.
I/O and File Management: Concept of streams, C++ stream classes, Unformatted and formatted
I/O, manipulators, C++ File stream classes, File management functions, File modes, Binary and
Random Files.
B.M.S. COLLEGE OF ENGINEERING, BENGALURU-19
(Autonomous Institute, Affiliated to VTU)
DEPARTMENT OF INFORMATION SCIENCE AND ENGINEERING
UNIT - 5
Text Books:
1. Object Oriented Programming with C++ by E Balaguruswamy, 6 th Edition, Tata McGraw Hill,
2013.
2. C++ - The Complete Reference by Herbert Schildt, 4th Edition, Tata McGraw Hill, 2015.
Reference Books:
1. C++ Primer by Stanley B Lippman, Josee Lajoie, Barbara E Moo, 6 th Edition, Addison Wesley
Professional.
2. Object-Oriented Programming in C++ by Robert Lafore, 4th Edition, Pearson Education.
e- Books:
1. https://fac.ksu.edu.sa/sites/default/files/ObjectOriented ProgramminginC4th Edition.
2. C++ Primer Fifth Edition,
https://zhjwpku.com/assets/pdf/books/C++.Primer.5th.Edition_2013.pdfe-Book.
MOOCs:
UNIT - 1
UNIT - 2
Data Processing Circuits: Binary Adder and Subtracters, Carry Look Ahead Adder, Decimal
Adders, Comparators, Decoders, Encoders, Multiplexers. (Text 1-5.1, 5.1.1, 5.1.2, 5.2 to 5.6)
UNIT - 3
UNIT – 4
Registers: Types of Registers - SISO, SIPO, PISO, PIPO, Universal Shift Register, Applications
of Shift Registers. (Text 2 – 9.1 to 9.7)
Counters: Binary Ripple Counters, Synchronous Binary Counters, Design of Synchronous
Counters and self-correcting counters. (Text 1 – 6.8, 6.9)
UNIT - 5
Design of Synchronous Sequential Circuits: Model Selection, State Transition Diagram, State
Synthesis Table, Design Equations and Circuit Diagram, State Reduction Techniques.
(Text 2 – 11.1 to 11.4, 11.7)
B.M.S. COLLEGE OF ENGINEERING, BENGALURU-19
(Autonomous Institute, Affiliated to VTU)
DEPARTMENT OF INFORMATION SCIENCE AND ENGINEERING
Text Books:
1. Digital Principles & Design, Donald D Givone, Tata McGraw Hill, 2011.
2. Digital Principles and Applications, Donald P Leach, Albert Paul Malvino & Goutam
Saha,7th Edition, Tata McGraw Hill, 2010.
Reference Books:
e - Books:
MOOCs:
CO1 Comprehend basic logic gates, combinational logic circuits and sequential logic circuits.
Apply digital logic for simplification of Boolean functions and realization of data
CO2
processing circuits.
CO3 Analyse combinational and sequential circuits using flip-flops, registers and counters.
UNIT - 1
OVERVIEW
Introduction: What Operating systems do? Computer structure organisation- Interrupts: Interrupt
timeline for a single Program-Overview (1.2.1.1), I/O structure (1.2.3), Computer-system
Architecture, Operating-system Operations, Virtualization, Kernel data structures, Computing
environments.
Operating System structure: Operating System Services, User Operating System Interface.
UNIT – 2
PROCESS MANAGEMENT
Processes: Process Concept, Process scheduling, Interprocess communication-in shared
memory systems, Interprocess communication-in Message passing systems.
Multithreaded programming: Multithreading models.
CPU Scheduling: Basic concepts, Scheduling criteria, Scheduling algorithms.
UNIT - 3
PROCESS SYNCHRONIZATION
Synchronization Tools: The Critical-Section problem, Peterson’s solution, Mutex Locks,
Semaphores.
Synchronization Examples: Classical problems of synchronization.
Deadlocks: System Model, Deadlock characterization, Methods for handling deadlocks, Deadlock
prevention, Deadlock avoidance, Deadlock detection, Recovery from deadlock.
UNIT – 4
MEMORY MANAGEMENT
Main Memory: Background, Contiguous memory allocation, Paging, Structure of page table,
swapping. Virtual Memory: Background, Demand paging, Copy-On-Write, Page Replacement,
Allocation of frames, Thrashing.
UNIT - 5
B.M.S. COLLEGE OF ENGINEERING, BENGALURU-19
(Autonomous Institute, Affiliated to VTU)
DEPARTMENT OF INFORMATION SCIENCE AND ENGINEERING
STORAGE MANAGEMENT
Mass Storage structure- Overview of Mass storage structure (11.1.1), HDD Scheduling.
FILE SYSTEM
File system Interface: File Concept, Access Methods, Directory Structure.
SECURITY AND PROTECTION
Security: The Security Problem
Text Books:
1. Operating System Concepts, by Abraham Silberschatz, Peter Baer Galvin, Greg Gagne, 10th
Edition, Wiley India, 2018.
Reference Books:
1. Operating Systems, A Concept-Based Approach, by DM Dhamdhere, 3rd Edition, Tata
McGraw-Hill, 2012.
2. Modern Operating Systems, by Andrew S. Tanenbaum and Herbert Bos, 4 th Edition, Pearson,
2015.
e - Books:
1. http:// csc- knu. github. io/ svs- prog/ books/ Andrew% 20 S. %20Tanenbaum%20-
%20Modern%20Systems.pdf.
2. http://ebooks.lpude.in/computer_application/mca/terms_1/DCAP403_OPERATING_SYST
EM.pdf.
MOOCs:
1. https://www.cs.uic.edu/~jbell/CourseNotes/OperatingSystems/ index.html.
2. https://www.udacity.com/course/introduction-to-operatingsystems--ud923.
CO2 Apply various concepts to solve problems related to synchronization, deadlocks, memory
management, in Operating Systems.
CO3 Analyze different algorithms of CPU scheduling, Page replacement, storage management and disk
scheduling.
B.M.S. COLLEGE OF ENGINEERING, BENGALURU-19
(Autonomous Institute, Affiliated to VTU)
DEPARTMENT OF INFORMATION SCIENCE AND ENGINEERING
Working with UNIX commands Basic Operating System commands, file attributes, file creation
and file handling, directories, Processes, Filters such as find, cut, Grep & EGrep, Handling Jobs,
SSH.
Log in to a Linux system and run simple commands using the shell.
Managing Files from the Command Line: Copy, move, create, delete, and organize files
while working from the Bash shell, Archiving and Transferring Files.
Managing Local Users and Groups: Gaining Superuser Access, Controlling Access to Files.
Shell scripts Introduction to shell, command substitution, Command Line arguments,
Conditional & Looping, Functions.
Exploring File API’s: Open, Close, Read, Write, LSeek, Stat, FStat, fcntl, chmod, Emulate
commands mv, cp, ls, ln.
Directory, opendir, readdir, rmdir.
Programs on Process management using API's.
Programs related to Signals and Signal handling using Signal API's.
Projects:
Sample Projects on topics like Inter process communications using various IPC's, Task
Management, File Management, Schedulers, File transfer using IPC's.
Text Books:
1. UNIX Concepts and Applications, Sumitabha Das, Second Edition, TMGH, 2002.
2. Unix System Programming Using C++, by Terrence Chan – Prentice Hall India, 1999.
Reference Books:
e- Books:
1. http://catb.org/~esr/writings/taoup/html/
2. http://oopweb.com/CPP/Documents/DebugCPP/VolumeFrames.html.
MOOCs:
1. http://www.coursera.org/learn/unix
2. http://www.pluralsight.com/courses/linux-systems-programming
3. http://www.edx.org/course/introduction-linux-linuxfoundationx-lfs101x-1
4. https://rha.ole.redhat.com.