Sy-Bca Sem Iii Syllabus
Sy-Bca Sem Iii Syllabus
SYLLABUS
Operating System (CMP507)
Course Objectives
Gain extensive knowledge on principles and modules of operating systems.
Understand key mechanisms in design of operating systems modules.
Understand process management, concurrent processes and threads, memory management,
virtual memory concepts, deadlocks.
To understand what a process is and how processes are synchronized and scheduled.
How to use system calls for managing processes, memory and the file system.
Understand the data structures and algorithms used to implement an OS.
Learning Outcomes
Analyze the concepts of processes in operating system and illustration of the scheduling of
processor for a given problem instance.
Identify the dead lock situation and provide appropriate solution so that protection and
security of the operating system is also maintained.
Analyze memory management techniques, concepts of virtual memory and disk scheduling.
Understand the implementation of file systems and directories along with the interfacing of
IO devices with the operating system.
Ability to apply CPU scheduling algorithms to manage tasks.
Initiation into the process of applying memory management methods and allocation
policies.
Knowledge of methods of prevention and recovery from a system deadlock.
(35)
Counseling
Unit No. & Name Details Weightage
Sessions
Unit 1 History of Introduction(What is OS, Important of
The Operating OS, Features, Uses, Applications)
Systems Evolution of OS (proprietary, CP/M,
DOS, UNIX, Windows and other,
Command line to GUI, Portability,
Client Server)
Types of Operating
System(multiprogramming systems, 3 10
batch systems , time sharing systems;
operating systems for personal computers
& workstations, process control & real
time systems.)
User’s View of the Operating
System
(36)
Unit4 Process Process, 6
Management Evolution of Multiprogramming
Context Switching,
Process States, Process State Transitions,
Process Control Block (PCB), Process
Hierarchy, Operation on a Process,
Create/ Kill/ Dispatch a Process, Change
the Priority of a Process,
Block / Time Up /Wake Up a
Process, Suspend/ Resume
Operations, 10
Process Scheduling (Objectives,
Concepts of Priority and Time Slice,
Scheduling philosophies, Scheduling
Levels, Scheduling Policies (For Short
Term scheduling)),
Multithreading (Models,
Implementation of Threads)
(37)
Unit 7 Memory Single Contiguous Memory 6
Management Management
Fixed Partitioned Memory 10
Management
Variable Partitions (Allocation
Algorithms, Swapping, Relocation and
Address Translation, Protection and
Sharing, Evaluation)
Non-Contiguous Allocation – General
Concepts, Paging (Allocation
Algorithms, Swapping, Relocation and
Address Translation), Segmentation
(Swapping, Address Translation and
Relocation, Sharing and Protection)
Combined Systems
Virtual Memory Management Systems
(Relocation and Address Translation,
Swapping, Relocation and Address
Translation, Protection and Sharing,
Evaluation, Design Consideration for
Virtual Systems)
Unit 8 Protection Protection and Security Policy 3
and Security mechanism 5
Authentication
Internal access Authorization
Revision 2 0
30 80
Reference Books:
1. Operating Systems by Achyut Godbole
2. Operating Systems A Concept Based Approach -by Dhananjay dhamdhere
3. Operating System Concepts by Silberschatz, Galvin and Gagne.
(38)
Web Technologies (CMP508)
Course Objectives
To learn advanced features of the web programming.
To learn various Web Technologies and their characteristics of HTML, XHTML, Java
script, XML.
To learn the basic principles of Web programming like designing and implement static
and dynamic Web pages.
To enhance problem solving and programming skills in web programming with
extensive programming projects.
To acquire fundamental skills to maintain web server services required to host a website.
Understand hierarchy of object oriented programming.
Learning Outcomes
Upon completion of this course, students will be able to:
Understand the various steps in designing Creative and dynamic website.
Write HTML, JavaScript, CSS and PHP.
Ability to develop web pages using HTML and Cascading Style Sheets.
Skill to create XML documents and Schemas.
Knowledge of client-side (JavaScript) and server-side scripting (PHP, ASP.NET) languages to
build dynamic web pages.
Familiarization with Web Application Terminologies, Internet Tools, E – Commerce and other
web services.
Ability to develop database applications with MySQL.
Web contents
Dynamic Web contents
Unit 2 Languages HTML, DHTML, XHTML, JSP, JavaScript
and technologies Features and Applications 3 10
for browsers
(39)
Unit 3 Introduction HTML Fundamentals
to HTML HTML Browsers
HTML tags, Elements and Attributes
Structure of HTML code: Head, Body
Lists: Ordered List, Unordered List, Definition
List, Nesting List
Block Level Tags:Block formatting, Heading, 3 10
Paragraph, Comments, Text, alignment, Font size
Text Level Tags: Bold, Italic, Underlined,
Strikethrough, Subscript,superscript
Inserting graphics: Scaling images,
Frameset, Forms
An introduction to DHTML , DOM
(40)
Unit 7 XML Introduction to XML,
Anatomy of an XML document 3 10
Creating XML Documents,
Creating XML DTDs, XML Schemas, XSL
Unit 8 Website How the website should be: Basic rules of Web
Design Concepts Page design, Types of Website 4 10
Revision 4 0
30 80
Reference Books:
1. Web Technologies: HTML, JAVASCRIPT, PHP, JAVA, JSP, XML and AJAX, Black Book
2. Information Architecture for The World Wide Web” by Morville
3. “A Practical Guide to Developing Web 2.0 Rich Internet Applications” by Phil Pearl
4. Web Information Systems Engineering – WISE 2016” by Jianmin Wang and Wojciech Cellary
(41)
Database Management System (CMP509)
Course Objectives
The objective of the course is to enable students to understand and use a relational database system.
Introduction to Databases, Conceptual design using ERD, Functional dependencies and
Normalization, Relational Algebra is covered in detail.
To learn how to design a database by using different models.
Students learn how to design and create a good database and use various SQL operations.
To enable the students to understand the database handling during execution of the transactions.
To understand the handling of database by concurrent users.
To gain complete knowledge of SQL and PL/SQL
The course concludes with an overview of transaction management and introduction to advanced and
non-relational databases.
Learning Outcomes
Upon completion of this course, students will be able to:
Able to master the basic concepts and understand the applications of database systems.
Able to construct an Entity-Relationship (E-R) model from specifications and to transform to
relational model.
Able to construct unary/binary/set/aggregate queries in Relational Algebra.
Understand and apply database normalization principles.
Able to construct SQL queries to perform CRUD operations on database. (Create, Retrieve, Update,
Delete) and Ability to code database transactions using SQL.
Understand principles of database transaction management, database recovery, security.
Skill to write PL/SQL programs.
(42)
Unit 3 Relational Introduction to DATA Models
data models and Object-based Logical Models - E-R Model,
relational algebra Object-Oriented Model
10
Record-based Logical Models - Relational
Model, Network Model, Hierarchical Model
Physical Data Models
Unit 4 Entity Overview
Relationship Modelling
Basic styles of data model
ER Model
Components of ER Model - Entity, Attributes,
Entity Set, Domain
Entity Types – weak entity, Strong Entity,
Recursive Entity, Composite Entities 3 10
Attributes Types – Simple, Composite, Single
Valued, Multi Valued, Stored, Derived, Complex,
Null Attributes.
Relation
Relationship – Relationship set, Connectivity in
relationship
Types of Relationship – Unary, Binary, Ternary
Classifying Relationship – Degree of
Relationship, Multiplicity, Existence
Mapping Cardinalities – One to One, One to
Many, Many to One, Many to Many
Keys
Keys for Relationship set- Super key, Candidate key,
Secondary key, Compound key, Alternate key,
Primary key, Foreign key
E-R Diagrams – E-R Modelling Symbols
Cardinality Constraints related to E-R diagrams
Alternative Notations for cardinality limits
Weak Entity sets
Case Studies on E-R diagrams
Unit 5 Overview
Normalizations Relational DB design
Decomposition (Small schema)
Lossy Decomposition
Loss less Decomposition 3 10
Functional Dependency – Full Dependency,
Partial Dependency, Transitive Dependency
Normalized Forms – Un – Normalized form,
1NF, 2NF, 3NF
De-normalization
(43)
Unit 6 SQL Introduction
SQL Statements - DML, DDL, DCL
Data Types in SQL
Basic Types structure
SELECT- SQL SELECT DISTINCT Statement,
SQL Where Clause, And, OR, In, Between, Like
Operator, SQL Order by Keyword, Aggregate
Functions, Group By, Having Clause.
4 10
CREATE – DROP TABLE, Constraints
INSERT, UPDATE, DELETE, ALTER
DATA Control Language (DCL)
Different operations on tables – Rename, Tuple
Variables, Set Operations(UNION Operator,
UNION ALL Operator, INTERSECT Operator,
Minus Operator), String Operations
Null Values
Unit 7 Transaction Introduction
Management Transaction Concept
3 10
Properties of Transactions
Transaction Terminology
Transaction Terminology
Transaction States
Concurrent Execution of Transactions
Operations on a Transactions
Concurrency Control
Schedules
Recoverability
Unit 8 PL/SQL Introduction to PL/SQL
The Advantages of PL/SQL
PL/SQL Architecture
PL/SQL Data types
Variable and Constants
Using Built_in Functions
Conditional and Unconditional Statements
Simple if, if… else, nested if..else, if..else
4 10
Ladder
Selection Case, Simple Case, GOTO Label and
EXIT
Iterations in PL/SQL
Procedures in PL/SQL
EXCEPTIONS in PL/SQL
Database Triggers in PL/SQL
File Input/Output
Examples and Revision 4 0
(44)
30 80
Reference Books:
1) Database System Concepts (4th Ed) By: Korth, Sudarshan, Silberschatz
2. Database Management Systems, Raghu Ramakrishnan and Johannes Gehrke,McGraw-Hill
3. Fundamentals of Database Systems (4th Ed) By: Elmasri and Navathe
4. MySQL :the Complete Reference By Vikram Vaswani
5. Learning MySQL by O’reilly
(45)
Semester 3
Python Programming (ICT152)
10 Python Program to Check whether a string starts and ends with the same
character or not, using regex.
11 Python Program to merge two files into a third file.
12 a. Write a Python GUI program to create a textbox and two buttons exit
and hello using tkinter module. Display message on the click of hello
button.
b. Write a Python GUI program to create a Listbox bar widgets using
tkinter module.
13 a. Wite a python program for connecting SQLite database and perform
insert and delete operation.
b. Write a python program to import CSV file in SQLite database.
14 Write a python program using Matplotlib to create Line chart and Bar graph.
1 DOS commands
2 Batch file
3 UNIX Commands
14 Simulation 1
15 Simulation 2
(46)
Lab: Web Technologies (CMP708)
Practical Practical Activities
No.
3 Design a web page with links to different pages and allow navigation
between pages.
4 Design a web page with Image and Imagemaps.
5 Create a student table with the following fields. Student Id, Name,
DOB, Course, Address, E-mail id and apply Embedded cascading
style sheet CSS with the following attributes:Font size, color, style,
bold, italic, border color, set the background image & set the center
align of table & text.
6 Create an external CSS for above and apply to the web
page.
Create a frameset that divides browser window into horizontal and
vertical framesets.
8 Write the javascript code to enter five numbers in the prompt box.
Calculate addition of the numbers & average.
9 Create a web page with image and text apply javascript Mouse events
– onmouseover , onmouseout, onclick on the image and text
(47)
Lab: Database Management System (CMP709)
Practical Practical Activities
No.
1 AIM: To draw ER Model and Relational Model for a given database
a) Case study 1:List the data requirements for the database of the
company which keeps track of the company employee, department and
projects. The database designers provide the following description
1. The company is organized into departments. Each department has
unique name, unique number, and particular employee to manage the
department. We keep track of the start date and the employee begins
managing the department. The department has several locations.
2. The department controls a number of projects each of which has a
Entity unique name, unique number and a single location.
Relationship
3. We store each employee names social security number , address ,
Model
salary, sex and dob. An employee is assigned one department but may
work on several projects which are not necessarily controlled by the
same department. We keep track of the department of each employee
works on each project and for insurance purpose. We keep each
dependents first name, sex, dob and relation.
b) Case study 2: Construct an E-R diagram for a hospital with a set of
patients and a set of medical doctors. Associate with each patient a log of
the various tests and examinations conducted. Also Construct appropriate
tables for the ER Diagram
2
AIM: Create one-to-many Relationship between Manager and Employee
Relations Create following Relations with the given fields
a) EMPLOYEE
EmpId (PK),
EmpName (Should be in the upper case),
Department(Should be Finance, Purchase or Sales)
Salary,
Mgrid
Entity b) MANAGER
Relationship Mgrid,
MgrName,
No. of Employees controlled
Using above table solve the following queries:
a. Display details of all those employees whose salary is higher than
Rs.50
b. Display the details of employees who are working in
Purchase department.
(48)
3
AIM: Determine the functional dependencies. Remove partial dependency
and transitive dependencies in given table. ( i.e. convert it into 3NF).
Student = (RollNo, Name, Course_Code, Course_Name, Fees)
Normalization
4
AIM: Creation of Database and table-DDL COMMAND Create a
table called EMP with the following structure.
Name Type
EMPNO NUMBER(6)
ENAME VARCHAR2(20)
JOB VARCHAR2(10)
DEPTNO NUMBER(3)
SAL NUMBER(7,2)
(49)
VARCHAR(10),DEPTNO int,SAL numeric(7,2))
Allow NULL for all columns except ename and job.
Insert at least 8 records into tables and solve the following given
queries using Emp and Dept table:
a) Create the emp1 table with ename and empno, add constraints
to check the empno value while entering (i.e) empno> 100.
b) Update the emp table to set the salary of all employees to
Rs15000/- who are working as ASP.
c) Delete only those who are working as lecturer.
d) List the records in the emp table orderby salary in ascending order.
e) Display total salary spent for each job category.
f) Add constraints to the emp table that empno as the primary key
and deptno as the foreign key.
g) Add columns DOB to the emp table.
6
AIM: Simple SQL Query2: SQL Functions
a) List all the aggregate functions with example?
b) List all the string functions with example?
c) Using above Emptable solve the following queries:
1. Display all the details of the records whose employee
SQL name starts with ‘A’.
Functions 2. Display all the details of the records whose employee
name does not start with ‘A’.
3. Calculate the total and average salary amount of the emp table.
4. Determine the max and min salary and rename the
column as max_salary and min_salary.
5. Find how many job titles are available in employee table.
6. Count the total records in the emp table.
7
AIM: Advanced SQL queries using Set Operations.
(50)
2. Display all the dept numbers available with the dept and emp
tables.
3. Display all the dept numbers available in emp and not in dept
tables and vice versa.
8
AIM: Advanced SQL queries using Sub query.
Using aboveEmp table solve the following queries:
1. Display all employee names and salary whose salary is greater
Sub query than minimum salary of the company and job title starts with
‘M’.
2. Issue a query to find all the employees who work in the
same job as Arjun.
3. Issue a query to display information about employees who earn
more than any employee in dept.
9
AIM: Advanced SQL queries using JOINS.
a) What is joins? List types of joins with syntax
b) Using aboveEmp table solve the following queries:
1. Display the employee details, departments that the
departments are same in both the emp and dept.
JOINS
2. Display all the employees and the departments
implementing a left outer join.
3. Display the employee name and department name in which
they are working implementing a right outer join.
4. Display the employee name and department name in
which they are working implementing a full outer join.
10
AIM: Advanced SQL queries using PL-SQL.
(51)
Questions3 employee. It accepts an employee number and salary increase
amount. It uses the employee number to find the current salary
from the EMPLOYEE table and update the salary.
Consider the EMPLOYEE (EMPNO, SALARY, ENAME)
Table.
15
AIM: Simple SQL Query.
Q.1) Create the following tables with the mapping given
below.
stu_details(reg_no, stu_name, DOB, address, city)
mark_details(reg_no, mark1, mark2, mark3, total)
(i) Display only those rows whose total ranges between 250
and 300.
(ii) Drop the table mark_details.
(iii) Delete the row whose reg_no=161.
Practice (iv) Display all details whose names begins with 'a'.
Questions-
SQL Query
Create the following tables with the mapping given below.
book (book_name,author,price,quantity).
customer (Cust_id , Cust_name, Addr, ph_no,pan_no)
(i) Truncate the table customer.
(ii) List the author of the book which one have the price of 200.
(iii) List the price of the book which one is between the
price of 175 & 250.
(iv) Retrieve all the details from the table book whose
author name start with K.
(52)