RKR21 B.tech. II Year Course Syllabus
RKR21 B.tech. II Year Course Syllabus
II YEAR / I SEMESTER
II YEAR / II SEMESTER
S. No. Course Code Course Title L T P Credits
1 21MA406BS Statistical Methods for Computer Science 3 0 0 3
2 21CS401PC Java Programming 3 1 0 4
3 21CS402PC Database Management Systems 3 0 0 3
4 R21CS403PC Operating Systems 3 0 0 3
5 R21CS404PC Automata Theory and Compiler Design 3 0 0 3
6 21CS405PC Java Programming Lab 0 0 4 2
7 21CS406PC Database Management Systems Lab 0 0 3 1.5
8 R21CS407PC Operating Systems Lab 0 0 3 1.5
9 *21MC408HS Constitution of India 3 0 0 0
Total Credits 18 1 10 21
* Mandatory Course - Satisfactory/Unsatisfactory
KESHAV MEMORIAL INSTITUTE OF TECHNOLOGY
(AN AUTONOMOUS INSTITUTE)
Accredited by NBA & NAAC, Approved by AICTE, Affiliated to JNTUH, Hyderabad
L T P C
Prerequisite/ Corequisite: 3 1 0 4
Course Outcomes: After learning the concepts of this course, the student is able to
UNIT - I
Mathematical logic: Introduction, Statements and Notation, Connectives, Normal Forms, Theory of Inference for
the Statement Calculus, The Predicate Calculus, Inference Theory of the Predicate Calculus.
UNIT - II
Set theory: Introduction, Basic Concepts of Set Theory, Representation of Discrete Structures, Relations and
Ordering, Functions.
Algebraic Structures: Introduction, Algebraic Systems, Semi groups and Monoids, Groups, Lattices as Partially
Ordered Sets, Boolean algebra.
UNIT – III
Elementary Combinatorics: Basics of Counting, Combinations and Permutations, Enumeration of Combinations
and Permutations, Enumerating Combinations and Permutations with Repetitions, Enumerating Permutations with
Constrained Repetitions, Binomial Coefficients, The Binomial and Multinomial Theorems, The Principle of
Inclusion-Exclusion.
UNIT - IV
Recurrence Relations: Generating Functions of Sequences, Calculating Coefficients of generating functions,
Recurrence relations, solving recurrence relations by substitution and Generating functions, The method of
Characteristic roots, Solutions of Inhomogeneous Recurrence Relations, Master’s Theorem and its applications.
UNIT - V
Graphs: Basic Concepts, Isomorphisms and Subgraphs, Planar Graphs, Euler’s Formula, Multigraphs and Euler
Circuits, Hamiltonian Graphs, Chromatic Numbers, The Four-Color Problem.
TEXT BOOKS:
1. Discrete Mathematical Structures with Applications to Computer Science - J.P. Tremblay, R. Manohar,
McGraw Hill education (India) Private Limited, 2017.
2. Discrete Mathematics for Computer Scientists & Mathematicians - Joe L. Mott, Abraham Kandel,
Theodore P. Baker, 2nd Edition, Pearson, 2015.
REFERENCE BOOKS:
1. Discrete Mathematics and its Applications - Kenneth H. Rosen, 7th Edition, McGraw Hill education (India)
Private Limited, 2017.
2. Discrete Mathematics - D.S. Malik & M.K. Sen, Revised Edition, Cengage Learning, 2012.
3. Elements of Discrete Mathematics - C. L. Liu and D. P. Mohapatra, 4th Edition, McGraw Hill education
(India) Private Limited, 2017.
4. Discrete Mathematics with Applications - Thomas Koshy, Elsevier, 2004.
5. Discrete and Combinatorial Mathematics - 6R. P. Grimaldi, Pearson, 2006.
KESHAV MEMORIAL INSTITUTE OF TECHNOLOGY
(AN AUTONOMOUS INSTITUTE)
Accredited by NBA & NAAC, Approved by AICTE, Affiliated to JNTUH, Hyderabad
Course Outcomes: After learning the contents of this course the student is able to
1. Understand the basics of instructions sets and their impact on processor design.
2. Demonstrate an understanding of the design of the functional units of a digital computer system.
3. Evaluate cost performance and design trade-offs in designing and constructing a computer processor
including memory.
4. Design a pipeline for consistent execution of instructions with minimum hazards.
5. Analyze high performance computing techniques and its efficiency.
Unit-I
Digital Computers: Introduction, block diagram of digital computer, definition of computer organization and
architecture.
Basic Computer Organization and Design: Computer Registers Instruction codes, Computer instructions, Memory
Reference Instructions, Register reference instructions, Input – Output instructions, Timing and Control, Instruction
cycle, Interrupt cycle.
Unit-II
Instruction Set Architecture: General Register Organization, Instruction Formats, Addressing modes, Data
Transfer and Manipulation, Program Control, Computer Arithmetic
Introduction to Computer Arithmetic: Addition and subtraction, multiplication Algorithms, Division
Algorithms, Floating – point Arithmetic operations.
Unit-III
Memory Architecture: Memory Hierarchy-Main Memory, Auxiliary memory, Associate Memory, Cache Memory
Mapping and Concept of Virtual Memory- Associate mapping, Direct mapping, Set Associate mapping.
Input-Output Organization: Input-Output Interface, Asynchronous data transfer, Modes of Transfer, Priority
Interrupt Direct memory Access.
Unit-IV
Overview of Pipelining Techniques: Parallel Processing, Pipelining, Arithmetic Pipeline, Instruction Pipeline,
RISC Pipeline, Design Issues, Hazards: Structural Hazards, Data Hazards and Control Hazards, Static Branch
Prediction, Dynamic Branch Prediction.
Introduction to Processor Architecture: CISC Characteristics, RISC Characteristics, Differences between CISC
and RISC Characteristics, its advantages, disadvantages of CISC over RISC.
Unit-V
Introduction to High Performance Computing:
Goals of Parallel Computing, Speed or Parallelism, CPU vs High performance computing, Architecture of a Modern
GPU, Parallel Programming Languages and Models, GPU Computing, Data Parallelism
Introduction to CUDA Programming: CUDA program structure, Vector Addition Kernel, Matrix Multiplication
Kernel, Device Global Memory and Data Transfer, Kernel Functions and Threading, CUDA Thread Organization
and Synchronization, Querying Device properties, CUDA Memories Types.
TEXT BOOKS:
REFERENCES:
1. Carl Hamacher, Zvonko Vranesic, Safwat Zaky: “Computer Organization”, 5th Edition, TMH, 2002.
2. Shane Cook, “CUDA Programming: A Developer’s Guide to Parallel Computing with GPUs” 1st Edition,
3. Discrete and Combinatorial Mathematics - 6R. P. Grimaldi, Pearson, 2006.
KESHAV MEMORIAL INSTITUTE OF TECHNOLOGY
(AN AUTONOMOUS INSTITUTE)
Accredited by NBA & NAAC, Approved by AICTE, Affiliated to JNTUH, Hyderabad
L T P C
3 0 0 3
Prerequisite/Corequisite:
Course Outcomes: After learning the concepts of this course, the student is able to
1. Understand C++ Program structure, functions and templates.
2. Differentiate types of recursion, array and dynamic array and linear and nonlinear data structures.
3. Construct programs using a variety of data structures such as stacks, queues, hash tables, binary trees, search
trees, heaps, graphs.
4. Interpret appropriate data structures to represent data items in real world problems.
5. Design and implement sorting and searching algorithms, their implementation, efficiency, and practical
application. They will be equipped to choose the most suitable algorithm for specific tasks and analyze the
performance.
UNIT – I:
Basic Concepts of C++ - Structure of a C++ program, Data types, Declaration of variables, Expressions, Operators,
Operator Precedence, Evaluation of expressions, Type conversions. Flow control statement- if, switch, while, for, do,
break, continue, goto statements. Functions - Scope of variables, Parameter passing, Default arguments. Templates -
types of templates, STL. Class definition, Class structure, Class objects, Class scope, this pointer, Constructors and
Destructors, Class scope, this pointer, Constructors and Destructors.
UNIT – II:
Introduction to algorithms: Recursion, Direct Recursion, Indirect Recursion, Data Abstraction, Representation of
single, two dimensional arrays, row order majoring, column order majoring, Dynamic Array- polynomials, sparse
matrices-array and linked representations, Dynamic Array vs Array.
Introduction to Linear and Non-Linear data structures-Linear list ADT-array representation and linked
representation, Types of Linked List - Singly Linked Lists-Operations-Insertion, Deletion, Doubly Linked Lists-
Operations- Insertion, Deletion, Detect a cycle in a linked list, Real Time Applications of Linked List
UNIT- III:
Stacks: Definition, ADT, standard stack operations- array and linked list implementations, applications-infix to
postfix conversion, postfix expression evaluation, parsing parenthesis, reverse of a string using stack, history of a
browser, etc
Queues: Definition, ADT, standard queue operations - array and linked implementations, Circular queues - Insertion
and deletion operations. Real Time Applications of Queue: Operating Systems and Task Scheduling, Networking and
Message Queues, etc
Unit IV:
Trees – Definition, terminology, Binary trees-definition, Properties of Binary Trees, Binary Tree ADT, representation
of Binary Trees - array and linked representations, Binary Tree traversals, Inorder, Postorder, Preorder, Binary Search
Tree ADT – BST traversal, BFS and DFS.
Priority Queues–Definition and applications, Max Priority Queue ADT-implementation-Max Heap-Definition,
Insertion into a Max Heap, Deletion from a Max Heap
Unit V:
Graphs–Definitions, Terminology, Applications and more definitions, Properties, Graph ADT, Graph
Representations- Adjacency matrix, Adjacency lists, Graph Search methods - DFS and BFS.
Hashing-Definition, hash tables, hash functions, linear probing , quadratic probing, Double Hashing, Rehashing
Searching and Sorting- Quick sort, Heap Sort, Merge sort, Linear Search and Binary Search
TEXT BOOKS:
1. Data Structures Through C++ - Yashavant Kanetkar, 3rd Edition, BPB Publications.
2. Data structures using C++- D. S. Malik, 2nd Edition, Cengage learning.
3. The Complete Reference C++- Herbert Schildt, 4th Edition, Tata Mc Graw Hill.
REFERENCE BOOKS:
1. Data Structures and Algorithm Analysis in C++, 3rd Edition, Weiss Mark Allen, Pearson Education · 2007
2. The C++ Programming Language, 3rd Edition, [Link], Pearson Education.
KESHAV MEMORIAL INSTITUTE OF TECHNOLOGY
(AN AUTONOMOUS INSTITUTE)
Accredited by NBA & NAAC, Approved by AICTE, Affiliated to JNTUH, Hyderabad
Prerequisite/ Co requisite:
UNIT – I
FETS: Types of FET’s, JFET, MOSFET, V-I characteristics, FET as an amplifier, CMOS , CMOS as an Inverter.
UNIT – II
Integrated Circuits: Introduction to OP-AMPS,IC-741 pin Configuration, Features, Modes of
Operation,Applications,Adder,Subtractor,Integrator,Differentiator.
UNIT– III
Number Systems: Binary Numbers, Octal, Hexadecimal and other base numbers, complements, Signed Numbers,
Fixed and Floating point representation, Boolean algebra and logic gates, Exclusive-OR function
Gate–Level Minimization: Canonical and standard forms, The K-Map Method, Two Variable Map, Three-Variable
Map, Four-Variable Map, Five-Variable Map, sum of products, product of sums simplification, don’t care conditions,
NAND and NOR implementation.
UNIT– IV
Combinational Circuits (CC), Combinational circuit for different code converters and Binary Adder (Half adder &
Full Adder)- Subtractor (Half Sub & Full Sub), Parallel Adder, Decimal Adder, Binary Multiplier, Magnitude
Comparator, Decoders, Encoders, Multiplexers and Demultiplexers.
UNIT– V
Sequential Circuits: (SC), Latches, Flip-flops (SR, D, JK, T), Master-Slave JK Configuration, Conversion from one
type of Flip-Flop to another, Registers, Shift registers, Ripple counters, Synchronous counters, Mod-N counter.
Textbooks:
1. Integrated Electronics: Analog and Digital Circuits and Systems, 2/e, Jacob Millman , Christos Halkias
and Chethan [Link],TataMcGraw-HillEducation,India,2010.
2. Analog and Digital Electronics - S Salivahanan & S Arivazhagan, McGraw-Hill, 2019.
3. DigitalDesign,5/e,[Link],PearsonEducation,2011.
4. Op-Amps & Linear ICs, Ramakanth A. Gayakwad, PHI.
5. Digital Design, 5/e, Morris Mano and Michael D. Cilette, Pearson Education, 2011.
Reference Books:
Course Outcomes: After learning the concepts of this course, the student is able to
UNIT –I
Introduction-Probability, Machine Learning and Data Science, Use Machine Learning, Types of Machine Learning
Systems: supervised, unsupervised, semi-supervised, Reinforcement, Batch and Online Learning, Main Challenges
of Machine Learning.
UNIT – II
Descriptive Statistics: Data representation, types of data- nominal, ordinal, interval and continuous, central tendency-
calculating mean mode median, mean vs. median, variability, variance, standard deviation, Mean Absolute Deviation
using sample dataset, finding the percentile, inter quartile range, Box Plot, Outlier, whisker, calculating correlation,
covariance, causation. Exploratory data analysis, Data preparation and preprocessing, visualization and its tools.
UNIT – III
Regression: Introduction to Regression analysis, measure of linear relationship, Regression with stats models,
determining coefficient, meaning and significance of coefficients, coefficient calculation with least square method,
Types of regression, Simple Linear Regression, Using Multiple features, Polynomial Regression, Metrics for
Regression: MSE, RMSE, MAE.
UNIT – IV
Classification: Classification problem, Probability based approach, Logistic Regression- log-odd, sigmoid
transformation, Metrics: Confusion Matrix, Accuracy, Error Rate, Precision, Recall, ROC curve, F1 score, and
introduction to gradient descent.
UNIT – V
Nonparametric & SVM classification: About Nonparametric classification, Decision Trees: Entropy, Gain ratio,
Information Gain, Splitting criteria,
Ensemble Method: Introduction to Random Forest, Accuracy measure & performance.
Instance based learning- Introduction, KNN algorithm, Distance measures, model building, locally weighted
regression, radial basis functions, SVM classifier, hyper-plane, slack variables, geometric transformation kernel trick,
kernel transformation.
TEXT BOOKS:
1. Hands-On Machine Learning with Scikit-Learn and Tensor Flow - Aurélien Géron, O’Reilly Media, 2017.
2. Practical Python Data Visualization: A Fast Track Approach to Learning Data Visualization With
Python, Ashwin Pajankar, A Press.
3. Python: End-to-end Data Analysis - Phuong Vo.T.H, Martin Czygan, Ivan Idris, Magnus Vilhelm Persson,
Luiz Felipe Martins, Packet Pub.
REFERENCE BOOKS:
Prerequisite/ Corequisite: L T P C
0 0 2 1
1. PP204ES - Python Programming Course
2. 21CS305PC - Introduction to Machine Learning Course
Course Outcomes: After learning the concepts of this course, the student is able to
LIST OF EXERCISES
TEXT BOOKS:
1. Hands-On Machine Learning with Scikit-Learn and Tensor Flow, Aurélien Géron - O’Reilly Media, 2017.
2. Practical Python Data Visualization: A Fast Track Approach To Learning Data Visualization With
Python,
Ashwin Pajankar, APress
3. Python: End-to-end Data Analysis, Phuong Vo.T.H, Martin Czygan, Ivan Idris, Magnus VilhelmPersson,
Luiz Felipe Martins, Packet Pub
REFERENCE BOOKS:
Course Outcomes: After learning the concepts of this course, student is able to
1. Design and implement C++ programs for computing real life applications.
2. Understand basic elements of control statements, arrays, functions, pointers and strings, and data
structures
like stacks, queues and linked lists.
3. Implement searching and sorting algorithms
4. Select appropriate Data Structure to solve the problems.
5. Test and debug the application.
List of Programs:
1. Write a program to perform the following operations on singly linked list:
a. Creation b. Insertion c. Deletion d. Traversal e. Length of the linked list
2. Write a program to perform the following operations on doubly linked list:
a. Creation b. Insertion c. Deletion d. Traversal e. Print the list in reverse
3. Write a program to perform the following operations on circular linked list.:
a. Creation b. Insertion c. Deletion d. Traversal e. Count of nodes
4. Stacks
a. Write a program that implement stack (its operations) using i) Arrays ii) linked lists
b. Infix to Postfix Conversion, postfix evaluation.
c. Check for balanced parentheses in an expression
d. String Palindrome
5. Queues
a. Write a program that implement Queue, Circular Queue (its operations) using
i) Arrays ii) linked lists
b. Queue implementation using two stacks.
c. Check if a queue can be sorted into another queue using a stack
6. Searching and Sorting
a. Write a program that implements the following sorting methods to sort a given list of integers in ascending
order
i) Merge sort ii) Quick sort iii) Radix sort
b. Write a program to perform the following searching operations for a Key value in a given list of integers:
i) Linear search ii) Binary search
c. Write a program to implement Linear Probing (closed hasing technique).
7. Binary Trees
a. Write a program that implement Binary tree (it ‘s operations) using
i) arrays ii) linked lists
b. Binary tree traversal methods
i) In order ii) Preorder iii) Post order iv) level order
c. Second minimum node in a Binary tree.
8. Binary Search Trees
a. Write a program to perform the following operations on BST
i) Insertion ii) Deletion iii) Search
9. Graphs
a. Write a program that implements graph using
i) Arrays ii) Linked lists
b. Graph traversal methods
i) Depth first search ii) Breadth first Search
TEXT BOOKS:
1. Data Structures Through C++ - Yashavant Kanetkar, 3rd Edition, BPB Publications.
2. Data structures using C++- D. S. Malik, 2nd Edition, Cengage learning.
3. The Complete Reference C++- Herbert Schildt, 4th Edition, Tata Mc Graw Hill.
REFERENCE BOOKS:
1. Data Structures and Algorithm Analysis in C++, 3rd Edition, Weiss Mark Allen, Pearson Education · 2007
2. The C++ Programming Language, 3rd Edition, [Link], Pearson Education.
KESHAV MEMORIAL INSTITUTE OF TECHNOLOGY
(AN AUTONOMOUS INSTITUTE)
Accredited by NBA & NAAC, Approved by AICTE, Affiliated to JNTUH, Hyderabad
Prerequisite/ Co requisite:
1. R21BE105ES/R21BE205ES - Basic Electrical and Electronics Engineering Course
2. R21BE109ES/R21BE206ES - Basic Electrical and Electronics Engineering Lab Course
3. R21CS304ES –Analog and Digital Electronics
Course Objectives: The course will help to
1. Introduce components such as diodes, BJTs and FETs.
2. give understanding of various types of amplifier circuits
3. Learn basic techniques and fundamental concepts used in the design of Computers.
4. Understand the concepts of combinational logic circuits and sequential circuits.
Course Outcomes: After learning the concepts of this course, the student is able to
1. Know the components and characteristics of various components.
2. Design and analyze small signal amplifier circuits.
3. Known about the logic families and realization of logic gates.
4. Design and analyze combinational and sequential circuits.
List of Experiments
L T P C
0 0 3 0
Prerequisite/Corequisite: Nil
Course Outcomes: After learning the concepts of this course, the student is able to
UNIT - I
UNIT – II
GENDER ROLES AND RELATIONS: Two or Many? -Struggles with Discrimination-Gender Roles and
Relations- Types of Gender Roles-Gender Roles and Relationships Matrix-Missing Women-Sex Selection and Its
Consequences- Declining Sex Ratio. Demographic Consequences-Gender Spectrum: Beyond the Binary.
UNIT – III
GENDER AND LABOUR: Division and Valuation of Labour-Housework: The Invisible Labor- ―My Mother
doesn’t Work. Share the Load. - Work: Its Politics and Economics-Fact and Fiction. Unrecognized and
Unaccounted work. - Gender Development Issues-Gender, Governance and Sustainable Development-Gender and
Human Rights- Gender and Mainstreaming
UNIT – IV
UNIT – V
GENDER AND CULTURE: Gender and Film-Gender and Electronic Media-Gender and Advertisement-Gender
and Popular Literature- Gender Development Issues-Gender Issues-Gender Sensitive Language-Gender and Popular
Literature
- Just Relationships: Being Together as Equals Mary Kom and Onler. Love and Acid just do not Mix. Love Letters.
Mothers and Fathers. Rosa Parks-The Brave Heart.
Note: Since it is Interdisciplinary Course, Resource Persons can be drawn from the fields of English Literature or
Sociology or Political Science or any other qualified faculty who has expertise in this field from engineering
departments. Classes will consist of a combination of activities: dialogue-based lectures, discussions, collaborative
learning activities, group work and in-class assignments. Apart from the above prescribed book, Teachers can make
use of any authentic materials related to the topics given in the syllabus on “Gender”.
TEXT BOOK:
1. The Textbook Towards a World of Equals: A Bilingual Textbook on Gender - [Link], Uma
Bhrugubanda, DuggiralaVasanta, Rama Melkote,Vasudha Nagaraj, Asma Rasheed, Gogu Shyamala, Deepa
Sreenivas and Susie Tharu, Telugu Akademi, Telangana Government in 2015.
KESHAV MEMORIAL INSTITUTE OF TECHNOLOGY
(AN AUTONOMOUS INSTITUTE)
Accredited by NBA & NAAC, Approved by AICTE, Affiliated to JNTUH, Hyderabad
1. Learn Random variables for studying the importance of Probability distribution functions.
2. Study discrete, continuous, sampling distributions and estimate unknown parameters.
3. Draw inferences using testing of hypothesis.
4. Identify strength and relation between the variables by using correlation and regression
5. Introduce back propagation algorithm with gradient descent strategies.
Course Outcomes: After learning, the concepts of this course, student is able to
Estimations: Types of estimation, properties of estimators, Confidence interval for means and proportions,
Maximum error of estimates, Sample size, Maximum likelihood estimations.
UNIT – V
Basics of Back Propagation: Introduction to Neural Networks – Back propagation - Setup and Initialization Issues
- The Vanishing and Exploding Gradient Problems - Gradient-Descent Strategies - Batch Normalization - Practical
Tricks for Acceleration and Compression.
TEXT BOOKS:
1. Probability and statistics for engineers and scientists - Sheldon M Ross, 5th Edition, Academic Press, 2014.
2. Fundamentals of Mathematical statistics - S C Gupta and V K Kapoor, Khanna publications.
3. Neural Networks and Deep Learning - Charu C. Aggarwal, Springer International Publishing AG.
REFERENCE BOOKS:
1. Fundamentals of Probability and Statistics for Engineers - T.T. Soong, John Wiley & Sons Ltd, 2004.
2. Probability & Statistics for Engineers & Scientists - Ronald E. Walpole, Raymond H. Myers, Sharon L.
Myers, Keying Ye, 9th Ed. Pearson Publishers.
3. Deep Learning, Ian Good fellow, Yoshua Bengio, Aaron Courville, MIT Press.
KESHAV MEMORIAL INSTITUTE OF TECHNOLOGY
(AN AUTONOMOUS INSTITUTE)
Accredited by NBA & NAAC, Approved by AICTE, Affiliated to JNTUH, Hyderabad
Course Outcomes: After learning the concepts of this course, the student is able to
1. Use concepts of OOPs such as data abstraction, inheritance, polymorphism, encapsulation and method
overloading principles in structuring computer applications for solving problems.
2. Design and Implement packages.
3. Apply the concepts of I/O streams and exception handling in a given real time problem.
4. Analyze appropriate collections to solve programming problems.
5. Build java applications to utilize advanced mechanisms like multi-threading, database connectivity.
UNIT - I
Object-Oriented Thinking- A way of viewing the world –Methods, Responsibilities, Classes and Instances, Class
Hierarchies- Inheritance, Method binding, Encapsulation, Abstraction. Summary of Object - Oriented concepts. Java
buzzwords, An Overview of Java, Data types, Variables and operators, expressions, control statements, Introducing
classes, Methods and Classes,
Arrays - One Dimensional Array, Second Dimensional Array, Jagged Arrays, String handling. String Builder, String
Buffer, String Tokenizer(), StringAPI‘slikelength(), substring(), charAt(), indexOf(), replace(), toCharArray()
Inheritance– Inheritance concept, Inheritance basics, Member access, Constructors, Types of constructors, Creating
Multilevel hierarchy, super uses, this uses, static uses, static and instance blocks, using final with Inheritance,
Polymorphism Method overriding method overloading, abstract classes, Object class, forms of inheritance-
specialization, benefits of inheritance, costs of inheritance.
UNIT - II
Introduction to Packages- Defining a Package, CLASSPATH, Access protection, importing packages. Interfaces-
defining an interface, implementing interfaces, Nested interfaces, applying interfaces, variables in interfaces and
extending interfaces.
Stream based I/O ([Link]) – The Stream Classes-Byte streams and Character streams, reading console Input and
Writing Console Output, File class, Reading and writing Files, Reading and Writing Objects to a file, Serialization,
De-Serialization, transient keyword, transient and static variables.
UNIT - III
Exception handling - Fundamentals of exception handling, Exception types, Termination or resumptive models,
Uncaught exceptions, using try and catch, multiple catch clauses, nested try statements, throw, throws and finally,
built- in exceptions, creating own exception subclasses.
Multithreading- Differences between thread-based multitasking and process-based multitasking, Java thread model,
thread life cycle, different ways of creating threads, thread priorities, synchronized keyword and synchronized block,
inter thread communication, Producer Consumer Problem. Thread class APIs.
UNIT - IV
The Collections Framework ([Link])- Collections overview, Collection Interfaces List, Map and Set, The
Collection classes- Array List, Linked List, Hash Set, Tree Set, Priority Queue, Array Deque. Accessing a Collection
via an Iterator, Using an Iterator, The For-Each alternative, Map Interfaces and Classes, Comparators, Arrays, Stack,
Vector, Enumerations, Auto boxing, Scanner class.
UNIT - V
An overview of Advanced JAVA: Introduction to JDBC, Types of JDBC Drivers, Connectivity with Oracle/
MySQL, Driver Manager API, Connection API, Statement API- Prepared Statement, invoking stored procedure using
Callable Statement, Result Set, Properties of Result Set. Transaction Management using JDBC API, auto commit,
save point and rollback methods. Exception Handling in JDBC.
TEXT BOOKS:
1. Java The Complete reference- Herbert Schildt, 9th Edition, Mc Graw Hill Education (India)Pvt. Ltd, 2014.
2. Java Database Best Practices- George Reese, O'Reilly Media, 2003.
REFERENCE BOOKS:
1. An Introduction to programming and OO design using Java- [Link] and [Link], John Wiley & sons,
2008.
2. Introduction to Java programming - Y. Daniel Liang, Pearson Education, 2012.
KESHAV MEMORIAL INSTITUTE OF TECHNOLOGY
(AN AUTONOMOUS INSTITUTE)
Accredited by NBA & NAAC, Approved by AICTE, Affiliated to JNTUH, Hyderabad
L T P C
Prerequisites/ Corequisites: 3 0 0 3
Course Outcomes: After learning the concepts of this course, the student is able to
UNIT - I
Database System Applications: File Systems versus a DBMS, the Data Model, Levels of Abstraction in a DBMS,
Data Independence, Structure of a DBMS, Advantages of DBMS
Introduction to Database Design: Database Design and ER Diagrams, Entities, Attributes, and Entity Sets,
Relationships and Relationship Sets, Additional Features of the ER Model, Conceptual Design With the ER Model
UNIT – II
Introduction to the Relational Model: Data Definition Language, Integrity constraint over relations, Types of
Integrity Constraints Domain Constraint-String, character, Integer, date, Entity Integrity Constraint-, Primary Key,
Referential Integrity Constraint-Foreign Key, Other Key Constraint – NULL, NOT NULL, CHECK and etc, querying
relational data, logical database design, introduction to views, destroying/altering tables and views.
UNIT - III
Introduction to SQL: Select Queries, Constraints: Data Manipulation Language –Insert, Delete, Update, form of
basic SQL query, UNION, INTERSECT, and EXCEPT, Nested Queries, Co-related Queries aggregation operators,
NULL values, complex integrity constraints in SQL.
Concept of Joins: Join, Outer Join, Left Outer Join, Right Outer Join, Self-Join
Schema Refinement: Problems caused by redundancy, decompositions, problems related to decomposition,
reasoning about functional dependencies, FIRST, SECOND, THIRD normal forms, BCNF, lossless join
decomposition, multi-valued dependencies, FOURTH normal form, FIFTH normal form.
UNIT - IV
Introduction to Transactions: Transaction Concept, Transaction State, Implementation of Atomicity and
Durability, Concurrent Executions, Serializability, Recoverability, Implementation of Isolation, testing for
serializability, Lock Based Protocols, Timestamp Based Protocols, Validation- Based Protocols, Multiple
Granularity, Recovery and Atomicity, Log–Based Recovery, Recovery with Concurrent Transactions. TCL
Commands – Save point Commit and Rollback
UNIT – V
Overview of Triggers, Stored Procedures: triggers-Row level table level and active databases, Stored Procedures
IN, OUT parameters. Execution of Stored Procedure from Java.
DBA – Introduction to DBA, Creating Users, Grant/Revoke Permissions on tables using DCL Commands.
TEXT BOOKS:
REFERENCE BOOKS:
1. Database Systems design, Implementation and Management‖ - PeterRob& Carlos Coronel, 7 th Edition,
Cengage Learning, 2006.
2. Fundamentals of Database Systems‖ - Elmasri Navrate, Pearson Education, 2016.
3. Introduction to Database Systems‖ - [Link], Pearson Education, 2004.
KESHAV MEMORIAL INSTITUTE OF TECHNOLOGY
(AN AUTONOMOUS INSTITUTE)
Accredited by NBA & NAAC, Approved by AICTE, Affiliated to JNTUH, Hyderabad
Prerequisites/ Corequisites: L T P C
3 0 0 3
1. PP102ES - Programming for Problem Solving Course
2. R21CS303PC - Data Structures Through C++ Course
3. 21CS302PC – Computer Organization and Architecture
Course Outcomes: After learning the concepts of this course, the student is able to
1. Understand the basic concepts of Operating Systems and Linux Utility system calls.
2. Illustrate the different process scheduling algorithms and the challenges in process synchronization.
3. Demonstrate Inter process communication and deadlock.
4. Explore memory management techniques and file management concepts.
5. Analyze disk management and the importance of protection.
UNIT-I
Introduction to Operating System – Operating system objectives, User view, System view, Operating system
definition, OS Operations, Operating System services, OS Structures- Simple, Layered Architecture, Micro Kernel,
Modular, Hybrid structure.
Introduction to Linux and Linux Commands - Architecture of LINUX, features of LINUX. Introduction to various
LINUX commands such as PATH, man, echo, printf, script, passwd, uname, who, date, pwd, cd, ls, cd, touch, mv,
rm, man, mkdir, rmdir, tar, gzip, cat.
UNIT-II
Process and CPU Scheduling - Process concepts and scheduling, Operations on processes, Introduction to threads:
Types and issues, Scheduling Criteria, Scheduling Algorithms: FCFS, SJF, SRTF/ SJN, Priority Non-Preemption,
Priority Preemption, Round Robin, Multilevel feedback scheduling algorithms, etc.
System call interface for process management - Introduction to various system calls such as fork, vfork, exit, wait,
waitpid, exec.
Process Management and Synchronization - The Race condition, The Critical Section Problem, Synchronization
Hardware, Semaphores and Classical Problems of Synchronization, Critical Regions, Monitors.
UNIT-III
Inter Process Communication Mechanisms - IPC using pipes, FIFOs, Semaphores: semget, semop, semctl,
message queues: msgget, msgsnd, msgrcv, msgctl, shared memory: shmget, shmat, shmdt, shmctl, ipc status
commands.
Deadlocks - System Model, Deadlocks Characterization, Methods for Handling Deadlocks, Deadlock Prevention,
Deadlock Avoidance, Deadlock Detection and Recovery from Deadlock.
UNIT-IV
Memory Management and Virtual Memory - Logical versus Physical Address Space, Swapping, Contiguous
Allocation, Paging, Segmentation, Demand Paging, Page Replacement, Page Replacement Algorithms: FIFO, LRU,
Optimal.
File System Interface and Operations – Access methods: Direct Access, Sequential Access, Index Sequential
Access, Directory Structure, Protection, File System Structure, Allocation methods: Contiguous Allocation, Linked
Allocation, Indexed Allocation, Free-space Management.
System calls for File Management - create, open, close, read, write, lseek, link, symlink, unlink, stat, fstat, lstat,
chmod, chown, Directory System calls - opendir, readdir, closedir, mkdir, rmdir,umask.
UNIT-V
Mass Storage Structure - Overview of Mass Storage Structure, Disk Structure, Disk Attachment.
Disk Scheduling: FCFS, SSTF, SCAN, C-SCAN, LOOK, C-LOOK, etc., Disk Management.
Protection – System Protection, Goals of Protection, Principles of Protection.
Domain of Protection: Access Matrix, Implementation of Access Matrix
TEXT BOOKS:
1. Operating System Principles - Abraham Silberchatz, Peter B. Galvin, Greg Gagne, JohnWiley, 9th
Edition,2005.
2. Advanced Programming in the UNIX Environment - W. Richard. Stevens, 3rd Edition, Pearson Education,
New Delhi, India. 2005.
REFERENCE BOOKS:
1. Internals and Design Principles - William Stallings, Operating Systems, 5 th Edition, Pearson Education/PHI,
2005.
2. Unix and shell Programming - Behrouz A. Forouzan, Richard [Link]
3. UNIX Programming Environment - Kernighan and Pike, PHI/ Pearson Education.2015.
KESHAV MEMORIAL INSTITUTE OF TECHNOLOGY
(AN AUTONOMOUS INSTITUTE)
Accredited by NBA & NAAC, Approved by AICTE, Affiliated to JNTUH, Hyderabad
L T P C
3 0 0 3
Prerequisites/ Corequisites:
1. Provide information to some of the central ideas of theoretical computer science from perspective
of formal languages.
2. Introduce fundamental concepts of Formal languages, grammars, and types of automata.
3. Introduce the major concepts of language translation and compiler design.
4. Impart the knowledge of practical skills for constructing a compiler.
5. Introduce various phases of compiler in detail with examples
Course Outcomes: After learning the concepts of this course, the student is able to
1. Identify and understand the concept of abstract machines and their power to recognize the languages.
2. Explore context free grammar for formal languages and learn basics of compiler to implement LL parsers
3. Implement LR parsers and understanding semantic analysis functionalities
4. Explore different forms of intermediate code to design and develop machine code
5. Understanding code optimization techniques for effective programming and generate assembly code
UNIT-I
Introduction to finite automata: The central concepts of automata theory, Structural representation of FA, Types
of FA, Conversion of NFA to DFA,NFA with epsilon to NFA without epsilon conversion.
Regular Expression: Introduction to Regular language, Algebraic laws for regular expressions, Conversion of FA
to RE, Conversion of RE to FA, Pumping lemma for Regular language.
UNIT-II
Grammar: Definition of Grammar, Types of grammars, Derivation, Types of derivations, Derivation tree,
Ambiguity, Left recursion elimination.
Push Down Automata: Definition of PDA, Structural representation of PDA, Construction of PDA.
UNIT-III
Turing Machine: Definition of TM, Structural representation of TM, Construction of TM.
Compiler: Definition of Compiler, Phases of Compiler, Lexical Analysis, Input Buffering.
Syntax Analysis: Types of Parsing, Recursive Decent parsing, Predictive Parsing, Bottom-up Parsing SLR, CLR,
and LALR
UNIT-IV
Semantic Analysis: Introduction to Syntax Directed Definition, Syntax Directed Translation, Attributes, Types of
Attributes, Bottom-up evaluation of attributes.
Intermediate code generation: Types of Intermediate codes, Types of Three address codes.
UNIT-V
Runtime Environment: Storages organization, Storage allocation strategies: Static, Stack, Heap allocations,
Activation Record.
Code Optimization: Introduction, Principal sources of optimization, basic block, partition algorithm of basic block,
flow graph, techniques of loop optimizations.
Code generation: Issues in code generation, DAG, Simple code generator.
TEXT BOOK:
1. Compilers: Principles, Techniques and Tools - Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffry D.
Ullman, 2nd Edition, Pearson.
2. Compiler Construction - Principles and Practice, Kenneth C Louden, Cengage Learning.
REFERENCE BOOKS:
1. Modern compiler implementation in C - Andrew W Appel, Revised Edition, Cambridge University Press.
2. The Theory and Practice of Compiler writing - J. P. Tremblay and P. G. Sorenson, TMH.
3. Writing compilers and interpreters - R. Mak, 3rd Edition, Wiley student edition.
KESHAV MEMORIAL INSTITUTE OF TECHNOLOGY
(AN AUTONOMOUS INSTITUTE)
Accredited by NBA & NAAC, Approved by AICTE, Affiliated to JNTUH, Hyderabad
Prerequisites/ Corequisites: L T P C
0 0 4 2
1. PP102ES - Programming for Problem Solving Course
2. 21CS401PC - Java Programming Course
Course Outcomes: After learning the concepts of this course, the student is able to
1. Outline the concepts of OOPs in structuring computer applications for solving problems.
2. Choose appropriate collections to solve programming problems.
3. Design programs using abstract classes.
4. Utilize the concepts of I/O streams and exception handling in a given real time problem.
5. Develop java applications by using JDBC.
List of Exercises:
1. Given a number, check if the number (N) can be written as the form (k+1)*k. Write a java program to print
those numbers in the given range.
a. Write a java program to check whether the given number is gapful or not.
A number is gapful if it is at least 3 digits long and is divisible by the number formed by stringing the first and last
numbers together. The smallest number that fits this description is 100. First digit is 1, last digit is 0, forming 10,
which is a factor of
100. Therefore, 100 is gapful.
b. Cricketer's Pension Continuing our journey in mastering the conditional statements & our interest with
cricket. Let us help the Indian cricket's governing body (BCCI) to automate its plan of allotting pensions to former
players. The rules are given below:
If a player has played more than 10 test matches and 100 ODI's he receives Rs.50,000. If a player has played more
than 10 test matches, he receives Rs.25,000.
If a player has played more than 100 ODI's he receives Rs.15,000. If a player has played for India he receives
Rs.10000. The amount is incremented by 1/4th for every 'man of the match' award.
If a player has not played for India but played IPL he receives an amount of Rs.8000. If a player has not played for
India nor IPL he receives an amount of Rs.7000.
2. A resistor is a circuit device designed to provide a specific resistance between its two ends. Resistance is
expressed in ohms (Ω) or kilo-ohms (kΩ). Resistors are usually marked with colored bands that encode their
resistance, as shown in figure-1 below. The first two bands represent digits and the third is a power-of-ten multiplier.
The table below shows the number value of each band color. For example, if the first digit is red (represents 2), the
second is digit is black (represents 0), and the third digit is orange represented as multiplier (represents 3), the
resistance is 20 × 103 Ω or 20 kΩ.
Black 0
Brown 1
Red 2
Orange 3
Yellow 4
Green 5
Blue 6
Violet 7
Grey 8
White 9
Write a Resistor class containing the parameterized constructor, which takes in three strings representing the three
band colors. Write the methods to calculate and set the resistance for the resistor.
3. a) Given an array arr[] of N integers, the task is to find the maximum difference between any two elements
of the array.
b) Write a Java program to fill the below pattern into a square matrix:
The matrix has to be filled with numbers starting from 1. It has to start fill first row last column, last row
(reverse), first column (reverse) and so on. Please refer the following example input 5
output =
1 2 34 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
a. Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how
much water it is able to trap after raining.
Examples:
Input: arr[] = {3, 0, 0, 2, 0, 4}
Output: 10
We can trap "3*2 units" of water between 3 an 2, "1 unit" on top of bar 2 and "3 units" between 2 and 4.
4. a) Given two strings text1 and text2, return the length of their longest common subsequence. A subsequence
of a string is a new string generated from the original string with some characters (can be none) deleted without
changing the relative order of the remaining characters. (eg, "ace" is a subsequence of "abcde" while "aec" is not). A
common subsequence of two strings is a subsequence that is common to both strings. If there is no common
subsequence, return0.
b) Given two strings s1 and s2, your task is to merge those strings to form a new merged string. A merge
operation on two strings is described as follows:
Append alternating characters from s1 and s2, respectively, to merge String. Once all of the characters in one of the
strings have been merged, append the remaining characters in the other string to merged String.
c) You are given a string S of alphabet characters and the task is to find its matching decimal representation
as on the shown keypad. Output the decimal representation corresponding to the string.
For ex: if you are given―Amazon then its corresponding decimal representation will be 262966.
5. Define a MyRectangle class with four public data members representing the x- and y-coordinates of the
bottom- left vertex and top-right vertex of a rectangle, whose sides are parallel to the x- or y-axis.
For example, the statement new MyRectangle (20, 80, 30, 90) creates a rectangle with bottom-left vertex at position
(20, 80), and top-right vertex at (30, 90).
6
PHP [Link]
1000002
C# [Link]
1000005
PHP [Link]
1000006
Prolog [Link]
1000010
PHP [Link]
1000020
PHP [Link]
1000022
The logfile is ordered by increasing timestamp. You are concerned that some people are voting multiple times for
the same item. To somewhat address this problem, throw out any new votes for the same item that come from the
same IP address within 20seconds.
In the above example, the second and last votes for PHP would be thrown out because they are for the same item
from the same IP address and occur within 20 seconds of other PHP votes from the same IP address. However, the
PHP vote from [Link] would be retained since there is not another PHP vote from this IP address.
Write a Java program to count the votes from the logfile, throwing out duplicate votes using the rules above. Display
the votes in a table, as shown below for the example:
PHP 2
C# 1
Prolog 1
c. a. Write a Java Class to implement a method Addition () that returns a new Array where each array element
at the index k corresponds to the sum of elements of the array (src) starting at index 0 and including element at the
index ‗k ‘. For example, for array [2, 3, 5], the method will return array [2, 5, 10]. For an array of size ‘0‘or a null
parameter, the method will throw exception Illegal Argument Exception With the message ―Invalid Argument.
c. Write a Java Code to implement a multithreaded version of FizzBuzz with four threads. If the number is
divisible by 3, output "fizz".
If the number is divisible by 5, output "buzz".
If the number is divisible by both 3 and 5, output “fizzbuzz". If the number is not divisible by both 3 and 5 print the
number.
For instance if n is 15, we will have the output as ― 1, 2, fizz, 4, buzz, fizz, 7, 8, fizz, buzz, 11, fizz, 13, 14,
fizzbuzz
1. Thread A will call fizz () to check for divisibility of 3 and outputs fizz.
2. Thread B will call buzz () to check for divisibility of 5 and outputs buzz.
3. Thread C will call fizzbuzz () to check for divisibility of 3 and 5 and outputs fizzbuzz.
4. Thread D will call number () which should only output the numbers.
d. a. Write a java program to store the employee details in an ArrayList and display the employee details in
ascending order of their experience. Create 'Employee' class with two instance variables Employee name and
Employee experience (no. ofyears).
b. Write a program to find the most common words in the list of words given in sorted order based on occurrence
from largest to smallest. If any of words are having same occurrence then consider the smallest character order comes
first.
Input format: First line contains the list of words and next line contains a number (k) which represent the top most
words to display. Output format: display the k top most words.
e. a. Write a java Program to write a method fCount which takes a string as a parameter. The Method fCount
should return the Map which has the frequency count of the given word. For example, if the string passed is―”
hello”, the map should return {h- 1, e-1, l-2, o-1}. The order of the characters should be same as in the string.
b. When working with HashMaps, sometimes cases arise where we wish to determine if two HashMaps have any
key- value pairs in common. For example, we might have the following two Hashmaps (named hashmap1 and
hashmap2, respectively) that map from String to String (i.e., their type is HashMap) and we want to count how many
key-value pairs they have in common.
Hashmap1 Hashmap2
In the example above, these two HashMaps have two key-value pairs in common, namely: "Mary"-"Ecstatic" and
"Bob"-"Happy". Note that although the key "Felix" is in both HashMaps, the associated value with this key is
different in the two maps (hence this does not count as a key-value pair that is common to both HashMaps). Similarly,
just having the same value without the same key (such as the value "Fine" which is mapped to by different keys in
the two different HashMaps) would also not count as a common key-value pair between the two HashMaps. Your
job is to write a method:
Public int common key value price (HashMap<string,string> map1, HashMap<string,string> map2 )
That is passed two objects of type HashMap<string, string> and returns the number of common key/value pairs
between the two HashMaps.
TEXT BOOKS:
1. Java The complete reference- Herbert Schildt- 9th Edition, McGraw Hill Education (India)Pvt. Ltd,2014.
2. Java Database Best Practices- George Reese, O'Reilly Media, 2003.
REFERENCE BOOKS:
1. An Introduction to programming and OO design using [Link] and F.A. Hosch, John Wiley & sons,
2008.
2. Introduction to Introduction to Database Systems‖ - [Link], Pearson Education, 2004.
KESHAV MEMORIAL INSTITUTE OF TECHNOLOGY
(AN AUTONOMOUS INSTITUTE)
Accredited by NBA & NAAC, Approved by AICTE, Affiliated to JNTUH, Hyderabad
L T P C
Prerequisites/ Corequisites: 0 0 3 1.5
Course Outcomes: After learning the concepts of this course, the student is able to
List of Exercises
Scenario 1:
Product-Sales database: South Wind
South wind database is a sample database used by Organization. The database contains the sales data for South
Wind Traders, it is foods export-import company. Using this schema to demonstrate how customers can choose and
order products, how orders are placed and how those products get delivered to the customer.
Products: This Entity will have all the products details where suppliers will supply products based on customers
demand.
Supplies: This Entity will supply the products demanded by the customers. Shippers: This Entity will take the
orders from suppliers and deliver to customers. Employees: Employees will monitor the orders placed by
customers.
Invoices: This Entity will take care of the billing process based on customer order. Etc..identify some more entities
and find out the relationship between them.
A product-sales the above process involves many steps like
1. Analyzing the problem and identifying the Entities and Relationships,
2. E-R Model
3. Relational Model
4. Normalization
5. Creating the data base
6. Querying.
Exercise 3: DML
Data Manipulation Language Commands (DML) commands are used to for managing data within schema
objects. Exercising the commands using DML: insert, delete, update on the following tables : products, customers,
suppliers, orders, , employees, order details, categories.
● INSERT – insert data into a table.
● UPDATE – updates existing data within a table.
● DELETE – deletes single or all records from a table. Data Query Language –Select
Populate all the tables designed in experiment: 2 with appropriate data.
Exercise 4: Querying
Practice queries on Aggregate functions like count, max, min, avg, sum Practice queries like nested queries/co-
related queries using ANY, ALL, IN, Exists, NOT EXISTS, UNION, INTERSECT, group by, having etc. Joins:
Join, Left Outer Join, Right Outer Join, Self-Join
Create a stored procedure, Alter and Drop a procedure, IN, OUT, IN & OUT parameters.
1. Create a Procedure to display order details of given customer ID like ordered, order Date, Required
Date, Shipped Date.
2. Create a procedure to accept a customer ID and display the customer order history (product name and
how much quantity ordered for that particular product).
3. Ex: product name, Total quantity he/she ordered.
4. Create a procedure to display Ten Most Expensive Products Columns should be displayed Product name &
Unit price.
Exercise 7: Views
1. Create a view to display the current product list which are available (not discontinued).
2. Create a view to display the products by category.
3. Display product name, quantity Per Unit, units In Stock, Discontinued.
4. Create a view ―Invoices ‖to display all the information from order, customer, shipper for each
5. Order Details.
Exercise 8: Triggers
Demonstrate Create Trigger, Alter Trigger, Drop Trigger, Row Level, Table Level triggers, Before Insert, After
Insert, Before Update, After Update, Before Delete, After Delete
Exercise 9:
Demonstrate the role of DBA using DCL commands.
TEXT BOOKS:
REFERENCE BOOKS:
1. Database Systems design, Implementation and Management - PeterRob & Carlos Coronel, 7th Edition,
Cengage Learning, 2006.
2. Fundamentals of Database Systems - Elmasri Navrate, Pearson Education, 2016.
3. Introduction to Database Systems - [Link], Pearson Education, 2004.
KESHAV MEMORIAL INSTITUTE OF TECHNOLOGY
(AN AUTONOMOUS INSTITUTE)
Accredited by NBA & NAAC, Approved by AICTE, Affiliated to JNTUH, Hyderabad
L T P C
Prerequisites/ Corequisites: 0 0 3 1.5
1. Provide an understanding of the design aspects of operating system concepts through simulation.
2. Introduce basic Unix commands, system call interface for process management,
inter process communication and I/O in Unix.
3. Demonstrate the knowledge of the components of computer and their respective roles in computing.
4. Recognize and resolve user problems with standard operating environments.
5. Gain practical knowledge of how programming languages, operating systems, and architectures
interact and how to use each effectively.
Course Outcomes: After learning the concepts of this course, the student is able to
c) Install Linux on the computer. This computer should have windows installed. The system should be
configured as dual boot with both windows and Linux.
Exercise 2:
a) Implement in c language the following Unix commands using system calls i) cat ii) ls iii) mv
b) Write a C program to create child process and allow parent process to display “parent” and the child to
display “child” on the screen
Exercise 3:
Assume you have the following jobs to execute with one processor, with the jobs arriving in the order listed here:
i T(pi)
0 80
1 20
2 10
3 20
4 50
with the following values write a program to get the required output which is listed below
a. Suppose a system uses FCFS scheduling. Create a Gantt chart illustrating the execution of these processes?
b. What is the average turnaround time for the processes?
c. What is the average wait time for the processes?
Exercise 4:
[Link] a C program that illustrate communication between two unrelated process using named pipes
b. Write a C program that receives a message from message queue and display them
[Link] a C program to allow cooperating process to lock a resource for exclusive use (using semaphore)
d. Write a C program that illustrate the suspending and resuming process using signal
e. Write a C program that implements producer-Consumer system with two process using semaphore
Exercise 5:
Consider the following snapshot of a system. P0, P1, P2, P3, P4 are the processes and A, B, C, D are the resource
types. The values in the table indicates the number of instances of a specific resource (for example: 3 3 2 1 under
the last column indicates that there are 3 A-type, 3 B-type, 2 C-type and 1 D-type resources are available after
allocating the resources to all five processes). The numbers under allocation-column indicate that those number
of resources are allocated to various processes mentioned in the first column. The numbers under Max- column
indicate the maximum number of resources required by the processes. For example: in 1st row under allocation-
column 2 0 0 1 indicate there are 2 A-type, 0 B-type, 0 C-type and 1 D- type resources are allocated to process
P0. Whereas 4 2 1 2 under Max-column indicate that process P0‘s maximum requirement is 4 A- type, 2 B-type,
1 C-type and 2 D-type resources.
Exercise 6:
a. Write a C program to simulate the following memory management technique: Paging
Exercise 7:
a. Write a C program that takes one or more file/directory names as command line input and reports following information
i) File Type ii) Number of Links iii) Time of last Access iv) Read, write and execute permissions.
b. Write a C program to list every file in directory, its inode number and file name
TEXT BOOKS:
1. Operating System Principles - Abraham Silberchatz, Peter B. Galvin, Greg Gagne, 9th Edition,
JohnWiley, 2005.
2. Advanced Programming in the UNIX Environment -W. Richard. Stevens, 3rd Edition, Pearson Education,
New Delhi, India.2005
REFERENCE BOOKS:
1. Internals and Design Principles - William Stallings, Operating Systems, 5th Edition, Pearson
Education/PHI,2005.
2. Unix and shell Programming- Behrouz A. Forouzan, Richard [Link].
3. UNIX Programming Environment, Kernighan and Pike, PHI/ Pearson Education, 2015.
KESHAV MEMORIAL INSTITUTE OF TECHNOLOGY
(AN AUTONOMOUS INSTITUTE)
Accredited by NBA & NAAC, Approved by AICTE, Affiliated to JNTUH, Hyderabad
Prerequisites/Corequisites: Nil L T P C
3 0 0 0
Course Objectives: The course will help to
Course Outcomes: After learning the concepts of this course, the student is able to
UNIT-I
Evolution of the Indian Constitution: 1909 Act, 1919 Act and 1935 Act. Constituent Assembly: Composition and
Functions; Fundamental features of the Indian Constitution.
UNIT-II
Union Government: Executive-President, Prime Minister, Council of Minister State Government: Executive:
Governor, Chief Minister, Council of Minister Local Government: Panchayat Raj Institutions, Urban Government.
UNIT-III
Rights and Duties: Fundamental Rights, Directive principles, Fundamental Duties
UNIT-IV
Relation between Federal and Provincial units: Union-State relations, Administrative, legislative and Financial,
Inter State council, NITI Ayog, Finance Commission of India
UNIT-V
Statutory Institutions: Elections-Election Commission of India, National Human Rights Commission, National
Commission for Women
TEXT BOOKS:
1. D.D. Basu, Introduction to the constitution of India, Lexis Nexis, New Delhi
2. Subhash Kashyap, Our Parliament, National Book Trust, New Delhi
3. Peu Ghosh, Indian Government & Politics, Prentice Hall of India, New Delhi
4. B.Z. Fadia & Kuldeep Fadia, Indian Government &Politics, Lexis Nexis, New Delhi