Shivaji University, Kolhapur T. E Computer Science and … · 2019-01-11 · 1 Shivaji University,...
Transcript of Shivaji University, Kolhapur T. E Computer Science and … · 2019-01-11 · 1 Shivaji University,...
1
Shivaji University, Kolhapur
T. E Computer Science and Engineering. (SEMESTER-VI)
Sr.
No.
Name of Subject
Teaching Scheme
Examination Scheme
L T P Total Theory Marks
TW POE Ora
l
Total
Marks Written Online
1 Compiler Construction 3 1 2 5 50 50 25 - - 125
2 Operating System - II 4 - 2 5 100 - 25 - - 125
3 Database Engineering 4 - 2 6 50 50 25 50 - 175
4 Storage Networks 3 - - 3 100 - - - - 100
5 Information Security 3 1 - 4 50 50 25 - - 125
6 Programming Lab - IV 2 - 2 4 - - 25 50 - 75
7 Domain Specific Mini-
Project
- 2 2 - - 25 - 50 75
Total 19 2 10 30 350 150 150 50 100 800
INDEX
Sr.
No.
Name of the Subject Code Page No.
1 Compiler Construction CSE308 2
2 Operating System - II CSE309 16
3 Database Engineering CSE310 25
4 Storage Networks CSE311 34
5 Information Security CSE312 42
6 Programming Lab - IV CSE313 55
7 Domain Specific Mini- Project CSE314 65
2
Course Plan for Compiler Construction
Course Compiler Construction Course Code CSE308 /45608
Examination
Scheme
Theory Term Work POE Total
Max. Marks 100 25 125
Contact
Hours/ week
3 2 -- 5
Prepared by Mr.S.S.More, Ms. S. A. Pardeshi Date 5 December
2018
Prerequisites 1. Students should know basic concept of system programming
2. Details of compilers and interpreters
3. Aspects of compilation
4. Basics of Assembler and its working stages in terms of pass I and II
5. Compilation of control structures
6. Compilation of expressions
Course Outcomes
At the end of the course the students should be able to:
CO308.1 Explain2phases of compiler and compiler construction tools
CO308.2 Discuss2 complete lexical analyzer in C language with symbol table
CO308.3 Define1 the concept of parsing technique.
CO308.4 Analyze4 S and L attributed syntax directed definitions, storage
organization and it’s allocations strategies
CO308.5 Identify4the basics of code optimization techniques and data flow analysis
with algorithms
CO308.6 Illustrate3 intermediate code generation techniques.
Mapping of COs with POs
POs
COs
a b c d e f g h i j k l m
CO308.1 3 2 1
CO308.2 1 2
CO308.3 3 2 2
CO308.4 1 2 2
CO308.5 3 1
CO308.6 1 2 1
3
Course Contents
Unit No. Title No. of
Hours
Section I
1. Introduction to Compiling:
Compilers, Phases of a compiler, Compiler construction tools,
Cousins of compiler
6
2. Lexical Analysis:
Role of a Lexical analyzer, input buffering, specification and
recognition of tokens, finite automata implications, designing a
lexical analyzer generator.
5
3 Syntax Analysis:
Role of Parser, Writing grammars for context free environments,
Top-down parsing, Recursive descent and predictive parsers (LL),
Bottom-Up parsing, Operator precedence parsing, LR, SLR and
LALR parsers.
7
Section II
4 Syntax Directed Translation and Intermediate Code Generation :
Syntax directed definitions, construction of syntax tree, S-attributed
definitions, L-attributed definitions, Intermediate languages,
assignment statements, back patching, procedure calls
7
5 Code Optimization :
Sources of optimization, Peephole optimization and basic blocks,
loops in flow graphs, Data flow analysis and equations, code
improving transformation and aliases
5
6 Code Generation :
Issues in design of a code generator and target machine, Run time
storage management, Basic blocks and flow graphs, Next use
information and simple code generator, Issues of register allocation,
code generation from Dags
6
Reference Books:
Sr. No. Title of Book Author Publisher/Edition Topics
1 Compilers – Principles,
Techniques and Tools
A.V. Aho, R.
Shethi and
J.D.Ullman
Pearson Education
1 to 6
2 Crafting A Compiler with
C
Charles Fischer,
Richard LeBlanc
Pearson Publication 1 to 6
3 Modern Compiler Design D. Grune , H. Bal ,
C. Jacobs , K.
Langendoen
Wiley publication
1 to 6
4
4 Modern Compiler
Implementation in Java
Andrew W. Appel Cambridge
University Press
1998
1 to 6
5 Compiler construction D.M. Dhamdare Mc-Millan 1 to 6
6 Unix / Linux manuals.
Scheme of Marks
Section Unit
No.
Title Marks
I
01 Introduction to Compiling 06
02 Lexical Analysis 12
03 Syntax Analysis 24
II
04 Syntax Directed Translation and Intermediate Code
Generation
24
05 Code Generation 24
06 Code Optimization 24
Course Unitization
Unit Course
Outcomes
No. of Questions in
No. Title CAT-I CAT-II CAT-III
1 Introduction to
Compiling
CO308.1 01 question
2 Lexical Analysis CO308.2 01 question
3 Syntax Analysis CO308.3 01 question
4 Syntax Directed
Translation and
Intermediate Code
Generation
CO308.4
02 questions
5 Code Generation CO308.5 01 question
6 Code Optimization CO308.6 3 questions
5
Unit wise Lesson Plan
Section I
Unit No 1 Unit Title Introduction to Compiling Planned
Hrs.
6
Lesson schedule
Class
No.
Details to be covered
1 Definition of Compilers
2 Phases of a compiler
3 Compiler construction tools
4 Cousins of the compiler
5 Compilers in programming languages
Review Questions
Q1 What is Compiler? CO308.1
Q2 What are the functions of compiler? CO308.1
Q3 What are the different phases of compiler? CO308.1
Q4 Design and explain various compiler construction tools CO308.1
Unit No
2
Unit Title
Lexical Analysis
Planned
Hrs.
5
Lesson schedule
Class
No.
Details to be covered
1 Role of a Lexical analyzer,
2 Specification and recognition of tokens
3 Finite automata implications
4 Designing a lexical analyzer generator
5 Input buffering
Review Questions
Q1 What is role of Lexical analyzer in lexical analysis? CO308.2
Q2 How to specify and recognize the tokens? CO308.2
Q3 List and explain finite automata implications CO308.2
Q4 Design lexical analyzer by considering suitable example? CO308.2
6
Unit No
3
Unit Title
Syntax Analysis
Planned Hrs. 7
Lesson schedule
Class
No.
Details to be covered
1 Role of a parser , Syntax error recovery, Context free grammar, Eliminating
Ambiguity
2 Top down parsing technique
3 Recursive descent parsing , predictive parsing, First and Follow , LL grammars
4 Bottom up parsing , Shift reduce parsing , Operator precedence parsing
5 LR parsing
6 SLR parsing, Canonical LR parsing
7 LALR parsers, parser generators
Review Questions
Q1 What is bottom up parsing? Explain the shift reduce bottom up parsing
algorithm.
CO308.3
Q2 What is top down parsing? Explain the non-recursive predictive parsing
algorithm.
CO308.3
Q3 What is the role of parser? Explain syntax error handling and error
recovery strategies.
CO308.3
Unit No
4
Unit Title
Syntax Directed Translation and
Intermediate Code Generation
Planned
Hrs.
7
Lesson schedule
Class
No.
Details to be covered
1 Syntax Directed Definitions-Inherited attributes
2 Syntax Directed Definitions Synthesized attributes
3 Construction of syntax tree with example
4 S- attributed definitions, Bottom up evaluation of S- attributed definitions
5 L- attributed definitions
6 Intermediate Languages, Assignment Statements
7 Back patching, Procedure calls
Review Questions
Q1 Explain inherited and synthesized attributes of syntax directed translation CO308.4
Q2 What is meant by S-attributed definitions and Back patching? CO308.4
7
Q3 Write short note on analysis of syntax directed definition and procedure
calls.
CO308.4
Unit No 5 Unit Title Code Optimization Planned
Hrs.
5
Lesson schedule
Class
No.
Details to be covered
1 Sources of optimization, Semantic preserving transformations, global common sub
expression elimination
2 Peephole optimization, Redundant instruction elimination
3 Data flow analysis
4 Code improving transformations copy propagation, code motion, Induction variable
elimination
5 Computing aliases
Review Questions
Q1 What is peephole optimization? Describe different characteristics of
peephole optimization.
CO308.5
Q2 Write and explain an algorithm for common sub expression elimination. CO308.5
Q3 Explain in detail code improving transformation, copy propagation, code
motion
CO308.5
Unit No
6
Unit Title
Code Generation
Planned
Hrs.
6
Lesson schedule
Class
No.
Details to be covered
1 Issues in design of code generator, register allocation
2 Runtime storage management, basic blocks and flow graphs
3 Next use information
4 Issues of register allocation, global register allocation, usage count, graph coloring
5 Code generation from DAG
6 DAG representation of basic blocks
Review Questions
Q1 Discuss different issues in design of code generator CO308.6
Q2 Write short note on flow graph representation of basic blocks CO308.6
Q3 Represent the basic block by using DAG with suitable example CO308.6
Q4 Write detail note on issues of register allocation in code generation
mechanism
CO308.6
8
EXPERIMENT LIST
S.N. Expt
No. Experiment Description
01 E01
Remove white spaces (space, tab) and comments from input and construct
the symbol table for tokens and attributes.
02 E02 Eliminate Left Recursion from given input grammar.
03 E03 Left factor the given input grammar to remove the ambiguity.
04 E04 Using Recursive Descent Parsing method, design Syntax Analyzer for any C
expression.
05 E05 Using syntax directed translation & predictive parsing technique generate
the Intermediate code in three address code format for c language.
06 E06 Implement a program for DAG representation of Basic Blocks.
07 E07 Using labeling algorithm label the Syntax Tree constructed.
08 E08 Implement a code generator for Labeled Tree.
09 E09 Study of Sun Compilers for SPARC.
Model Question Paper
Course Title : Compiler Construction
Duration 2 Hrs Max. Marks
50
Instructions:
Instructions: Figures to right indicate full marks
Question number 1 and 4 is compulsory
Attempt any one question from remaining
Section-I
Marks
1 a What are different phases of compiler? Explain in detail 6
b How to specify and recognize the tokens? 6
2 a Design and Explain various compiler construction tools 6
b List out and Explain finite automata implications 7
3 a What is top down parsing? Explain non recursive predictive parsing
algorithm in detail
6
b Explain SLR parsing with suitable example 7
9
Section-II
Marks
4 a What is peephole optimization? Describe different characteristics of
peephole optimization
6
b Write and Explain an algorithm for common sub expression
elimination
6
5 a Discuss different issues in design of code generator 6
b Represent the basic block by using DAG with suitable example 7
6 a Explain in detail three address statements using quadruple and triple 6
b Write short note on Back patching mechanism 7
Model Question Paper
Subject: Compiler Construction (MCQ)
Note: All questions are compulsory. Maximum Marks: 50
1. The current token being scanned in the input is frequently referred to as the
______________.
A Terminal symbol B non-terminal
symbol
C lookahead symbol D Symbol
2. The error can be ___________ such as an arithmetic expression with unbalanced
parenthesis.
A lexical B Syntactic C Symantic D Logical
3. A lexical analysis can detect error like __________________.
A Missing semicolon B 1-value required C Type mismatch D None of the
above
4. ___________________reduces running time of a program.
A Call by value B Call by reference C Call by copy
restore
D Call by name.
5.__________ language allows data to be allocated under program control.
A C B C++ C Pascal D java.
6. A _____________ uses a symbol table to keep track of scope and binding information
about names.
A Linker B loader C Compiler D Assembler
7. upper-case letters late in the alphabet, such as x,y,z represent ________________.
A Terminals B Non-terminals C Grammer symbols D strings of terminals
8. The minimum dfa for (a|b)*a(a|b)*a will have _________________ states.
A 2 B 3 C 4 D None of the above.
9. A compiler generates ________________________.
A Executable code B Relocatable code C both D None of the above.
10. A _______ is a sequence of characters in the source program that matches the pattern for
a token.
A Token B Pattern C lexeme D None of the above
10
11. To speed up the lexical analyzer, two-buffer scheme use the ___________ to mark the
buffer end.
A Sentinels B eof C Null D ' \0 '
12. i) Every token must have an attribute value.
ii) Lexical analyzer is called by parser.
Which of the above is/are false?
A i only B ii only C Both D Neither I or ii
13. i) Regular expressions are used for specifying the tokens in lexical analysis.
ii) Finite automata is used for implementing regular expressions.
Which of above is/are true?
A i only B ii only C neither D Both
14. The ___________ table is accessed in every phases of a compiler.
A literal B Parse C Symbol D Hash
15. Errors found during compilation are called as _______________ errors.
A Dynamic B Static C Semantic D None of the
above
16. What are the stages in the compilation process?
A Feasibility study,
system design, and
testing
B Implementation and
documentation
C Lexical analysis,
syntax analysis,
and code
generation
D None of the
above
17. What is a compiler?
A A compiler does a
conversion line by
line as the program
is run.
B A compiler
converts the whole
of a higher level
program code into
machine code in
one step.
C compiler is a
general purpose
language
providing very
efficient
execution.
D None of the
above
18. What is the first stage in program development?
A Specification and
design
B System analysis C Testing D None of the
above
19. What is system analysis?
A The design of the
screen the user will
see and use to
enter or display
data
B System analysis
defines the format
and type of data the
program will use.
C System analysis
involves creating
a formal model of
the problem to
be solved.
D None of the
above
20. A scanner reads a stream of characters and puts them together into some meaningful (with
respect to the source language) units called ________.
A String B Variable C Lexeme D Token
21. Code optimization can be done:
11
A After semantic
analyzing -
performed on a
parse tree
B After intermediate
code generation -
performed on a
intermediate
code
C After code
generation -
performed on a
target code.
D All of the
above.
22. A ________ of a string is a substring that matches the right side of a production and
whose reduction to the non-terminal on the left side of the production represents one step
along the reverse of a rightmost derivation.
A Prefix B Suffix C Handle D State
23._____ can be used to generate code for Boolean expression in one pass.
A Back patching B Syntax tree C Declaration D Overall
24. ________de allocation requires cooperation between the user program and the run time
package.
A Explicit B Implicit C Controlled D No controlled
25. A declaration in a language is a ____________construct that associates information with
a name.
A Semantic B Syntactic C Lexical D Procedural
26. The parsing table of LR parser has _________________ parts.
A 2 B 3 C 5 D 4
27. Consider the translation scheme shown below:
S--> tr, r--> +t {printf(“+");} r|a
T --> num {print (num.val); }
Here num is a token that represents an integer and nom. Val represents the corresponding
integer value for an input string.
A 9+5+2 B 95+2+ C 952++ D ++952
28. Which of the following is not characteristic of peephole optimization?
A Flow of control
optimization
B Use of machine
idioms
C Algebric
simplifications
D None of the
above
29. Which of the following is advantage of transformation on basic blocks?
A It increases speed
of execution
B It is useful for
improving quality
of code.
C Both a & b. D None of the
above
30. The input to yacc compiler is ________________.
A Lex specification B Yacc specification C C program D Target
program
31. ___________ is the LALR parser generator.
A Lex B Yacc C Syntax analyzer D Loader
32. In programming language semantic, the term environment refers to a function that maps
a __________ to a storage location.
A Name B Body C Function D Procedure
33. Control stack is used to keep track of live ___________________.
12
A Procedure
activation
B Function activation C Program
activation
D Declaration
34. A graph representation of three address statement is
A Flow chart B Structure chart C Flow graph D None of the
above
35.______________ exists if the last reference occurs before de allocation.
A Dangling reference B Garbage C Local correction D Loader
36. A shift reduces parser performs reductions in the reverse order specified by a left-most
derivation:
A False B True C None of these
37. ______________ is intermediate in power and cost between the other two.
A Look ahead LR B Simple LR C Canonical LR D YACC
38. In static allocation, data structure cannot be created dynamically, since there is no
mechanism for ___________ allocation at runtime.
A static B Storage C Heap D Stack
39.a) parser generator 1)code optimization
b) scanner generation 2)code generation
c) data-flow engines 3) syntax analysis
4) lexical analysis
A A-4, b-3, c-1 B A-3, b-4,c-2 C A-3,b-4,c-1 D A-3, b-2, c-1
40. Which of the following statement is false about basic blocks?
A First statement is
leader
B Any statement that
is the target of
conditional or
unconditional go to
is leader
C Both a & b D None of the
above
41. In labeling algorithm labeling can be done by
A Visiting nodes in
top-down order
B Visiting nodes in
bottom-up order
C Both a & b D None of the
above
42. Synthesized attributes can be easily simulated by a
A LL grammar
B Ambiguous
grammar
C LR grammar D None of the
above
43._____________ is the most powerful & the most expensive
A Simple LR B Canonical LR C Look ahead LR D Predictive
parser
44. A transformation of a program is called ___________ if it can be performed by looking
only at the statements in a basic block.
13
A Global B Local C Regular D Irregular
45. A variable is live at a point in a program if its value can be used ________.
A Frequently B currently C subsequently D Previously
46. Advantage of copy propagation is that it often turns the copy statement into _________ .
A live code B restore C dead code D usable code
47.________ moves code outside a loop.
A Induction motion B Reduction C Compaction D Code motion
48. -------- replaces an expensive operation by a cheaper one such as a multiplication by an
addition
A Code motion B Compaction C Reduction in
strength
D Induction
49. When there are two or more induction variables in a loop, it may be possible to get rid of
all by the process of ______.
A Induction variable
elimination
B Code migration
C Code motion
D Compaction
50. We say node d of a flow graph _________ node n, if every path from the initial node of
the flow graph to n goes through d.
A Migrates B Dominates C Captures D Acquires
Assignments
List of experiments/assignments to meet the requirements of the syllabus
Assignment No. 1
Assignment Title CO308.1
Batch I Remove white spaces (space, tab) and comments from input and
construct the symbol table for tokens and attributes.
Batch II Design and implement program for symbol table generation
Batch III Write a program to implement data structure of assembly program
Batch IV Write program which consider input as assembly program and to
generate a table for the symbols
Assignment No. 2
Assignment Title CO308.2
Batch I Eliminate Left Recursion from given input grammar.
Batch II Design and implement LEX tools
Batch III Design and implement YACC tools
14
Batch IV Design and implement LEX tools and its input specification
Assignment No. 3
Assignment Title CO308.3
Batch I Left factor the given input grammar to remove the ambiguity.
Batch II Implement a program for Bottom up parsing of given input grammar.
Batch III Implement a program for Top-down parsing of given input grammar.
Batch IV Write a program for LR, SLR and LALR parsers of given input
grammar.
Assignment No. 4
Assignment Title CO308.4
Batch I Write a program for S attributed definitions
Batch II Write a program for L attributed definitions
Batch III Construct syntax tree by using C language
Batch IV Implement a program for inherited attributes in syntax directed
definitions
Assignment No. 5
Assignment Title CO308.5
Batch I Write a program for storage allocation strategies in run time
environments
Batch II Implement program for dynamic storage allocations
Batch III With the help of program demonstrate parameter passing mechanism
Batch IV Write program to implement token generation
Assignment No. 6
Assignment Title CO308.5
Batch I Write a program for intermediate languages
Batch II Implement program for Boolean expressions
Batch III With the help of program demonstrate back patching mechanism
Batch IV Write program to implement procedure calls
15
Assignment No. 7
Assignment Title CO308.6
Batch I Design a code generator using C language
Batch II Implement program for flow graphs
Batch III Construct register allocation strategy using object oriented
programming
Batch IV Write program to implement DAG
Assignment No. 8
Assignment Title CO308.6
Batch I Write a program for peephole optimization techniques
Batch II Demonstrate code improving transformation by using C language
Batch III With the help of program demonstrate data flow analysis algorithm
Batch IV Write program to implement loops in flow graphs
16
Course Plan
Course Title M P Gaikwad Course Code CS309
Prepared by Mr. M P Gaikwad Date 07/12/2018
Prerequisites This course requires the student to know about the basic concepts of UNIX
operating systems, System calls, Assembly language & different types of
signals related to UNIX.
Course Outcomes
At the end of the course the students should be able to:
CO309.1 Explain4UNIX operating system kernel architecture & buffer cache
management algorithms.
CO309.2 Describe2 internal file system organizations and related algorithms in UNIX.
CO309.3 Write6 various system calls for UNIX file system
CO309.4 Discuss2 process structure, creation and management in UNIX
CO309.5 Demonstrate3 architecture and explain algorithms of process scheduling.
CO309.6 Discuss2 memory management concepts, I/O subsystem architecture &
algorithms
Mapping of COs with POs
POs
COs a b c d e f g h i j k l m
CO309.1 1 2
CO309.2 2 3
CO309.3 2 1 1
CO309.4 1 2 3 2
CO309.5 2 3 3
CO309.6 2 3 1 1
Course Contents
Unit No. Operating Systems-II No. of
Hours
1. Introduction & The Buffer Cache
General Overview of the System - History, System Structure, User
Perspective, Operating System Services, Assumption About
Hardware, Introduction to the KERNEL - Architecture of UNIX OS,
Introduction to system concepts, Kernel Data Structure, System
Administration.
The Buffer Cache
Buffer headers, structure of the buffer pool, scenarios for retrieval of
a buffer, reading and writing disk blocks, advantages and
10
17
disadvantages of cache.
2. Internal Representation of Files
I-nodes, structure of the regular file, directories, conversion of a
pathname to i-node, super block, i-node Experiment to a new file,
allocation of disk blocks, other file types.
8
3. System calls for the file System
Open, Read, write, File and Record Locking, Adjusting the position
of FILE I/O-LSEEK, Close, File Creation, Creation of Special File,
Change Directory and Change Root, Change Owner and Change
Mode, Stat and Fstat, Pipes, Dup, Mounting and Un-mounting file
systems, Link, Unlink, File System Abstractions, File system
maintenance.
6
4. The Structure of process
Process states and transitions, layout of system memory, the context
of a process, Saving context of a process, manipulation of the process
address space.
8
5. Process Control & Scheduling
Process creation, signals, process termination, awaiting process
termination, invoking other programs, the user id of a process, the
shell, System Boot and the Init process.
Process Scheduling and Time
Process Scheduling, system call for time, clock.
8
6. Memory management & The I/O Subsystem
Swapping, Demand paging, a hybrid system with demand paging and
swapping.
The I/O Subsystem
Driver interfaces, disk drives, terminal drivers, Streams.
8
Reference Books:
Sr.
No.
Title of Book Author Publisher/Edition Topics
1 The design of UNIX
Operating System.
Maurice J. Bach 3rd edition. PHI All
2 Linux System Programming
Robert Love, Publisher
Robert Love SPD O’ REILLY 1
3 Unix concepts and
administration.
Sumitabha Das 3rd Edition.
TMGH
1
18
Evaluation scheme
Examination
Scheme
Theory Term Work OE Total
Max. Marks 100 25 - 100
Contact
Hours/ week
4 --
Scheme of Marks
Section Unit No. Title Marks
I 1 Introduction & The Buffer Cache 16
2 Internal Representation of Files 16
3 System calls for the file System 16
II 4 The Structure of process 16
5 Process Control & Scheduling 16
6 Memory management & The I/O Subsystem 20
Course Unitization
CO Evaluation Notes
CO309.1 CAT 1 All Questions compulsory
CO309.2
CO309.3 CAT 2 All Questions compulsory
CO309.4
CO309.5
CO309.6 CAT 3 All Questions compulsory
Unit wise Lesson Plan
Unit
No
Unit Title Planned
Hrs.
1 Introduction & The Buffer Cache 10
Lesson schedule
Class
No.
Details to be covered
1 General Overview of the System – History, System Structure, User Perspective.
2 Operating System Services, Assumption About Hardware.
3 Introduction to the KERNEL - Architecture of UNIX OS.
4 Introduction to system concepts, Kernel Data Structure.
5 System Administration, The Buffer Cache.
6 Buffer headers, structure of the buffer pool.
19
7 Scenarios for retrieval of a buffer.
8 Reading and writing disk blocks.
9 Advantages of cache.
10 Disadvantages of cache
Review Questions
Q1 Draw a neat diagram & explain the architecture of UNIX system in detail.
CO309.1
Q2 Explain user perspective of the UNIX systems.
Q3 What are the different types of operating system services?
Q4 What are the different assumptions about the hardware with respect to
UNIX systems?
Q5 Draw & explain a block diagram of system kernel.
Q6 Explain file system layout with a neat diagram.
Q7 Explain system administration process.
Q8 Draw a neat diagram & explain the buffer header in detail.
Q9 Explain structure of the buffer pool.
Q10 What are the different scenarios for retrieval of a buffer?
Q11 Explain algorithm for reading & writing disk block.
Q12 Explain algorithm for block read ahead.
Q13 List out different advantages & disadvantages of cache.
Unit
No
Unit Title Planned
Hrs.
2 Internal Representation of Files 8
Lesson schedule
Class
No.
Details to be covered
1 I-nodes
2 Structure of the regular file
3 Directories, conversion of a pathname to i-node
4 Super block
5 i-node experiment to a new file,
6 Allocation of disk blocks
7 Other file types.
8 Represent a super block & i-node experiment to a new file.
Review Questions
Q1 Define INODE & explain algorithm for allocation of In-Core Inodes. CO309.2
Q2 Explain an algorithm for releasing an Inode.
20
Q3 Draw & explain direct & indirect blocks in inode.
Q4 Explain algorithm for conversion of a path name to an inode.
Q5 List different types of fields in a super block.
Q6 Explain an algorithm for assigning new inodes & algorithm for freeing
inode.
Q7 Explain race condition in assigning inodes
Q8 Explain an algorithm for allocating disk block.
Unit
No
Unit Title Planned
Hrs.
3 System calls for the file System 6
Lesson schedule
Class
No.
Details to be covered
1 System calls for the file System, Open, Read, write,
2 Adjusting the position of FILE I/O-LSEEK, Close, File Creation, Creation of Special
File.
3 Change Directory and Change Root, Change Owner and Change Mode.
4 Stat and Fstat, Pipes, Dup, Mounting and Un-mounting file systems.
5 Link, Unlink, File and Record Locking File System Abstractions,
6 File system maintenance.
Review Questions
Q1 Explain an algorithm for opening & reading a file.
CO309.3
Q2 Explain a reader & writer process.
Q3 Write a program with Lseek system call.
Q4 Explain an algorithm for creating a file.
Q5 Explain an algorithm for making a new node.
Q6 Explain an algorithm for changing current directory of a file.
Q7 Explain stat & fstat.
Q8 Explain an algorithm for creation of unnamed pipes.
Q9 Explain an algorithm for reading & writing a pipe & reading & writing a
named pipe.
Q10 Write a C program illustrating Dup.
Q11 Explain mounting & unmounting file systems with algorithms.
Q12 Explain an algorithm for linking & unlinking files.
Q13 Explain deadlock scenario for linking & unlinking files.
Unit
No
Unit Title Planned
Hrs.
21
4 The Structure of process 8
Lesson schedule
Class
No.
Details to be covered
1 The Structure of process
2 Process states and transitions
3 layout of system memory
4 the context of a process
5 Saving context of a process
6 Manipulation of the process address space
8 Mapping of virtual addresses to physical addresses
9 System call interface with an algorithm
Review Questions
Q1 Draw & explain process state transition diagram.
CO309.4
Q2 Explain process & regions with respect to layout of system memory.
Q3 Explain mapping of virtual addresses to physical addresses.
Q4 Explain how user mode is changed to kernel mode?
Q5 Explain different components of the context of a process.
Q6 Explain saving the context of a process.
Q7 Explain algorithm for handling Interrupts.
Q8 Explain how manipulation of the process address space is done?
Unit No Unit Title Planned
Hrs.
5 Process Control & Scheduling 6
Lesson schedule
Class
No.
Details to be covered
1 Process Control & Scheduling
2 Process creation, signals, process termination
3 Awaiting process termination, invoking other programs
4 The user id of a process
5 The shell
6 System Boot and the Init process.
7 Process Scheduling and Time
8 System call for time, clock
22
Review Questions
1 Explain the sequence of process creation.
CO309.5
2 Explain algorithm for fork.
3 List all 19 signals in the UNIX System V.
4 Explain algorithm for handling signals.
5 Explain algorithm for exit, wait and exec.
6 Explain the user id of a process.
7 Explain the concept of Shell.
8 Explain system boot & init process.
9 Explain algorithm for process scheduling.
10 Explain different scheduling parameters.
11 Draw & explain how a process moves on a priority queue.
12 Explain system calls for time.
13 Explain the functions of clock interrupt.
14 Write & explain program using alarm call.
15 Explain algorithm for clock handler.
Unit No Unit Title Planned
Hrs.
6 Memory management & The I/O Subsystem 8
Lesson schedule
Class
No.
Details to be covered
1 Memory management & The I/O Subsystem
2 Swapping
3 Demand paging
4 A hybrid system with demand paging
5 Swapping.
6 The I/O Subsystem
7 Driver interfaces
8 Disk drives, terminal drivers, Streams
Review Questions
Q1 Explain algorithm for allocating space from maps.
CO309.6
Q2 Explain how allocation of swap space is done.
Q3 Explain mapping of virtual addresses to physical addresses.
Q4 Explain why a process is swapped out.
Q5 Explain in short what demand paging is?
Q6 Explain saving the context of a process.
Q7 Explain the concept of page aging.
Q8 Explain the concept of page fault.
23
Q9 Explain what hybrid system with swapping & demand paging is?
Q10 Explain algorithm for opening a device.
Q11 Explain algorithm for closing a device.
Q12 Write a program for reading disk data using block & raw interface.
Q13 List different function of line discipline.
Q14 Explain algorithm for writing data to a terminal.
Q15 Explain the concept of stream.
Model Question Paper
Course Title : Operating Systems-II
Duration 3 Hours Marks:
100
Instructions:
1] Attempt any three questions from each section.
2] Figures to the right indicate full marks.
Section-I Marks
1 a Explain the algorithm when the process opens the file “Letc/ passwd”
to get its Inode.
8
b If the super block free Inode list is empty & remembered Inode are
470. Explain the steps to fill the superblock free Inode list.
8
2 a Write system call & example to create unnamed pipe. What is the
inode reference count value when pipe was opened initially? Give
reason for the same.
8
b Give & explain the syntax for the month system call. List the different
entries from the mount table.
7
3 a Assume that a disk block contains 1024 bytes & there are 5 direct
blocks & two single indirect blocks. Find the byte capacity of a file.
8
b Give the structure of buffer Header. Explain different conditions of
status field?
7
4 Write short note (any three): [3*6]
a. List the scenarios for retrieval of buffer & explain any one with
example.
b. Algorithm for releasing buffer.
c. Block diagram of UNIX system kernel.
d. Change directory of & change root.
Section-II Marks
5 a Draw & explain complete set of process state & transitions. 8
b List the sequence of operation performed by forces system call.
Explain in brief.
8
6 a Explain system boot & Init process. 8
b List the functions of clock interrupt handler. Explain each in brief. 7
7 a Explain malloc algorithm. 8
24
b Explain algorithm for opening device? 7
8 Write short note (any three): [3*6]
a. Terminal drivers.
b. Validity page fault handler
c. Signals.
d. Attaching region to a process.
Practical/ Assignments:
Expt. No. Brief description about the experiment
1 To study the system structure of UNIX operating system
2 Study and execution of basic commands of UNIX
3 Implementation of file copy program by using different file system calls.
4 Use the previous programs (sr.no. 3’s) executable code to implement file copy
program using parent and child processes.
5 Study & Demonstration of user buffer I / O by writing and reading, to and
from a file. (Use C file handling functions).
6
Study and demonstration of Advanced file I/O.
Write a simple program that uses mmap() to print a file chosen by the user to
standard output.
7
Study & Demonstration of Unix Process Management. From creation to
termination.
Write a program to implement two processes reading and writing to the same
file simultaneously.
8
Study & demonstration of the File and Directory Management.
Write a program to change current working directory and display the inode
details for each file in the new directory
9 Study & demonstration of Signals.
Write a simple program to show the handling of signals practically
10 Study & Demonstration of Time, Sleep and Clock Management.
11 Study of boot loader like “Grub”
12 Implementation of system call for UNIX/Linux.
25
Course plan
Course Title Database Engineering Course Code CSE310
Prepared by Dr. Bhuvaneshwari Melinamath &
Mr. Vinayak. N. Malavade.
Date 06/12/2018
Pre-requisites This course requires the student to know about the basic concepts in database
and object oriented programming(java)
Course Outcomes
At the end of the course the students should be able to:
CO309.1 Describe1 Fundamental Concepts and algorithms related to database.
CO309.2 Demonstrate2 the concepts of DBMS using SQL.
CO309.3 Apply3 normalization techniques to maintain the consistency.
CO309.4 Describe2 different types of indexing and hashing techniques.
CO309.5 Explain5 the various techniques of concurrency control.
CO309.6 Identify4 the reasons for system crash and recovery methodologies
Mapping of COs with POs
POs
COs
a b c d e f g h i j k l m
CO309.1 1 2 1 2
CO309.2 1 3 3
CO309.3 1 2
CO309.4 1 2 2 3
CO309.5 1 1
CO309.6 1 1 2 2
1 Mild correlation 2 Moderato correlation 3 Strong
correlation
26
Course Contents
Unit No. Title No. of
Hours
Section I
1. Unit 1: Introduction to databases [Text Book- 1 & 3 ]
1.1 Introduction
1.2 Traditional File based Systems
1.3 Database Approach
1.4 Roles in Database Environment
1.5 History of Database management systems
1.6 Advantages and Disadvantages of DBMS’s.
1.7 Structure of Relational Databases
1.8 Database Schema
1.9 Keys
1.10 Schema Diagram
1.11 Relational Query Languages.
1.12 Relational Operations
08 Hours
2. Unit 2: Structured Query Language (SQL) [Text Book -2 & 3]
2.1 Introduction to SQL
2.2 Data Definition Commands
2.3 Data manipulation Commands
2.4 Queries
2.5 Advanced data management commands
2.6 More complex queries and SQL functions
08 Hours
3 Unit 3: Normalization [Text Book – 1]
3.1 The purposes of Normalization
3.2 Data Redundancies and Update Anomalies
3.3 Functional Dependencies
3.4 The Process of Normalization
3.5 First Normal Form
3.6 Second Normal Form
3.7 Third Normal Form
3.8 Boyce-Codd Normal Form
3.9 Fourth Normal Form
3.10 Fifth Normal Form
06 Hours
Section II
4 Data Storage & Indexing [Text Book -3]
4.1 File Organization
4.2 Organization of records in File
4.3 Data Dictionary Storage
4.4 Database Buffer
4.5 Basic Concepts indexing & hashing
07 Hours
27
4.6 Ordered Indices
4.7 Multiple-Key Access
4.9 Static Hashing
4.10 Dynamic Hashing
4.11 Bitmap Indices
4.12 Index Definition in SQL
5 Transaction Management & Concurrency Control [Text Book – 2 &
3]
5.1 What is a Transaction?
5.2 Concurrency Control
5.3 Concurrency Control with Locking Methods
5.4 Concurrency Control with Times tamping Methods
5.5 Concurrency Control with Optimistic Methods
10 Hours
6 Recovery System [Text Book-3]
6.1 Failure Classification
6.2 Storage
6.3 Recovery & atomicity
6.4 Recovery Algorithm
6.5 Buffer Management
6.6 Failure with loss of non- volatile Storage
06Hours
Reference Books:
Sr. No. Title of Book Author Publisher/Edition Topics
1 Database Systems- A practical
approach to Design,
Implementation and
Management
Thomas Connolly,
Carolyn Begg
Pearson
Education, 3rd
Edition
1,3
2 Database Systems- Design,
Implementation and
Management
Rob and Coronel Thomson Course
Technology, 5th
edition
2,5
3 Database System Concepts A Silberschatz, H.
F. Korth, S.
Sudarshan
Mc Graw Hill
Education, 6th
edition
1,2,4,5,6
Evaluation scheme
Examination Scheme Theory Term Work POE Total
Max. Marks 100 25 50 175
Contact Hours/ week 4 -- 2 6
28
Scheme of Marks
Section Unit No. Title Marks
I
1 Introduction to Databases 20
2 Structured Query Language 15
3 Normalization 15
II
4 Data Storage & Indexing 20
5 Transaction Management & Concurrency Control 15
6 Recovery System 15
Course Unitization
Section
Unit Course Outcomes No. of Questions in
No. Title CAT-I CAT-II CAT-III
I
1 Introduction to Databases CO309.1 1
2 Structured Query
Language
CO309.2 1
3 Normalization CO309.3 1
II
4 Data Storage & Indexing CO309.4 1
5 Transaction Management
& Concurrency Control
CO309.5 1
6 Recovery System CO309.6 1
Unit wise Lesson Plan
Section I
Unit
No
1 Unit Title Introduction to Databases Planned
Hrs.
08
Lesson schedule
Class
No.
Details to be covered
1 Introduction
2 Traditional File based Systems, Database Approach
3 Roles in Database Environment
4 History of Database management systems
5 Advantages and Disadvantages of DBMS’s.
6 Structure of Relational Databases
7 Database Schema, Keys, Schema Diagram
8 Relational Query Languages, Relational Operations
Review Questions
Q1 Explain the introduction to the database system. CO309.1
Q2 Describe different types of real time relational database systems. CO309.1
29
Q3 What are advantages and disadvantages of DBMS? CO309.1
Q4 What is key in database? explain what are different types of keys? CO309.1
Q5 Explain roles in database management? CO309.1
Q6 What are relational query languages? CO309.1
Q7 Explain Relational Operations. CO309.1
Unit
No.
2 Unit Title Structured Query Language (SQL) Planned
Hrs
08
Lesson schedule
Class
No.
Details to be covered
1 Introduction to SQL
2 DDL & DML
3 Data Definition Commands
4 Data manipulation Commands
5 Queries
6 Advanced data management commands
7 More complex queries
8 SQL functions
Review Questions
Q1 What are functions of SQL? CO9.2
Q2 What is DDL and DML? CO9.2
Q3 Write different queries fired on hospital database management system. CO9.2
Q4 What are DDL and DML commands? CO9.2
Q5 What are advanced data management commands? CO9.2
Unit
No.
3 Unit Title Normalization Planned
Hrs
06
Lesson schedule
Class
No.
Details to be covered
1 The purposes of Normalization, data Redundancies and Update Anomalies
2 Functional Dependencies, the Process of Normalization
3 First normal form, second normal form
4 Third normal form
5 Boyce-codd normal form
6 Fourth normal form, Fifth normal form
Review Questions
30
Q1 Explain the purpose of normalization in detail. CO9.3
Q2 What are different dependencies? CO9.3
Q3 Explain all types of normal form. CO9.3
Q4 What is difference between first normal form and second normal form? CO9.3
Q5 Explain concept of data redundancies. CO9.3
Section-II
Unit
No.
4 Unit Title Data Storage and Indexing Planned
Hrs
07
Lesson schedule
Class
No.
Details to be covered
1 File organization
2 File Organization, Organization of records in File
3 Data Dictionary Storage , Database Buffer
4 Basic Concepts indexing & hashing, Ordered Indices
5 Multiple-Key Access, Static Hashing
6 Dynamic Hashing, Bitmap Indices
7 Index Definition in SQL
Review Questions
Q1 Explain what is file organization system? CO9.4
Q2 Write a note on database buffer CO9.4
Q3 What is data dictionary storage? CO9.4
Q4 Explain in detail the indexing technique. CO9.4
Q5 What is Basic Concepts indexing & hashing? CO9.4
Q6 Write a note on Dynamic Hashing and Bitmap Indices. CO9.4
Unit
No
5 Unit Title Transaction Management And
Concurrency Control
Planned
Hrs.
10
Lesson schedule
Class
No.
Details to be covered
1 What is a Transaction
2 Concept of Concurrency Control
3 Need of concurrency control
4 Different methods of concurrency control
5 Concurrency Control with Locking Methods
6 Algorithm for Concurrency Control with Locking Methods
7 Concurrency Control with Times tamping Methods
8 Algorithm for Concurrency Control with Times tamping Methods
31
9 Concurrency Control with Optimistic Methods
10 Algorithm for Concurrency Control with Optimistic Methods
Review Questions
Q1 Explain Algorithm for Concurrency Control with Optimistic Methods CO9.5
Q2 Explain Concept of Concurrency Control CO9.5
Q3 Explain Different methods of concurrency control CO9.5
Unit
No
6 Unit Title Recovery System Planned
Hrs.
06
Lesson schedule
Class
No.
Details to be covered
1 Failure Classification
2 Storage
3 Recovery & atomicity
4 Recovery Algorithm
5 Buffer Management
6 Failure with loss of non- volatile Storage
Review Questions
Q1 Explain what is failure and its types? CO9.6
Q2 Explain what is buffer management? CO9.6
Q3 Write short note on crash recovery process. CO9.6
32
Model Question Paper
Course Title : Database Engineering
Duration 03 Hours Max.
Marks
Instructions:
Question No. 4 and 5 are compulsory.
Attempt any two questions from each Section
Figures to the right indicate full marks.
Assume suitable data if necessary
Section-I
Marks
1 a Explain the distinction among the terms.
i) Primary Key
ii) Candidate Key
iii) Super Key
iv) Foreign Key
8
b Distinguish database system versus file system. 8
2 a What do you understand by domain and tuple relational calculus?
Explain with examples.
8
b Discuss the concept of generalization, aggregation and specialization. 8
3 a compute the closure of the following set F of function for relational
schema R=(A'B'C'D'E)
A->BC
CD->E
B->D
E->A
List the candidate keys for R
4
b using the functional dependencies of above example compute the
canonical cover F
4
c Explain about Sequential file organization with an example 6
4 Write a short note on (any three) t18l
a) Reducing E'R diagram to tables
b) sql
c) Data Dictionary Storage
d) Normalization using Functional Dependency
18
Section-II
Marks
33
5 a Explain data structures used for dynamic hashing' 10
b What are the techniques used in searching record. 8
6 a Explain query evaluation using pipelining 8
b How to handle failure during data transfer 8
7 a What is log? How it is used for recovery.
8
b Explain timestamp ordering protocol 8
8 a Explain basis of evaluation of indices. 8
b Explain crash recovery system in detail. 8
Assignments
List of experiments/assignments to meet the requirements of the syllabus
Assignment Titles
1 Draw an E-R Diagram for any organization like Insurance Company, Library
systems, College Management systems, Hospital Management systems etc.
2 Convert the Above mentioned E-R Diagram in Relational Tables
3 Installation & Demonstration of DBMS like My Sql, Oracle, IBM-DB2 etc.,
Draw the architectures of installed DBMS.
4 Write a program of Database connectivity with any object oriented language
like Java, C++ etc.
5 Use DDL Queries to create, alter & drop Tables
6 Use DML Queries to insert, delete, update & display records of the tables.
7 Create tables using primary key & foreign key with all constraints.
8 Display the records using group by, order by, having and between clauses.
9 Display the records using Aggregate functions
10 Create Indexes & Views for the table.
11 Display the results of union, intersection, set difference, Cartesian product and
Join operations of two different tables
12 Write a program to implement Static Hashing.
13 Write a program to implement to Dense Index.
14 View the contents of data dictionary from the DBMS and write the contents.
15 Find the FC and F+ of relation schema r (A, B, C, G, H, I) and F= {A _B, A _
C, CG_H, CG_I, B_H}.
Practical/ Assignments:
List of experiments/assignments to meet the requirements of the syllabus
All Batches Minimum one assignment on each unit
34
Course Plan
Course Storage Networks Course Code CS311
Prepared by Mr. R. G. Sonkamble , Mrs. D.D. Patil Date : 03/10/2018
Examination
Scheme
Theory Term Work Oral Total
Max. Marks 100 -- -- 100
Contact
Hours/ week
3 -- -- --
Prerequisites
This course requires the student to know about the basic concepts Computer
Networks, Database System and Knowledge about File systems & Data
structures, algorithms.
Course Outcomes
At the end of the course the students should be able to
CO311.1 Explain2key challenges in information management
CO311.2 Describe2 Storage system architecture and data protection
CO311.3 Illustrate3 Storage Area Network- concepts, components and protocols
CO311.4 Discuss3 information about Network Attached Storage and concept of storage
virtualization
CO311.5 Apply4 knowledge for business Continuity, Backup and Recovery
CO311.6 Summarize5 need of Replication, Replication techniques and Storage
Security
Mapping of COs with POs
POs
COs a b c d e f g h i j k l m
CO311.1 2 1 2 2 1 2
CO311.2 2 2 3 2
CO311.3 2 1 2 3 2
CO311.4 1 2 3
CO311.5 1 2 2
CO311.6 3 2 1 3
1 Mild correlation 2 Moderato correlation 3 Strong correlation
(or L – low , M --- moderate, H – high correlation can also be used instead of 1, 2,3)
35
Course Contents
Unit No. Title No. of
Hours
1
Introduction to information storage: Evolution of storage technology and
architecture, Data Center Infrastructure, Key challenges in Managing
Information, Information Lifecycle. Components of Storage System
Environment, Disk Drive Components, Disk Drive Performance, Laws
governing disk Performance, Logical Components of Host, Application
requirements and disk performance.
Intelligent Storage System, Direct Attached Storage and Data Protection:
Components of Intelligent Storage System, Intelligent Storage Array.
Direct Attached Storage – types, benefits
and limitation, Disk drive Interface, Introduction to parallel SCSI, SCSI
command model.
Data Protection (RAID):- Implementation of RAID, RAID array
components, RAID levels, Comparison, RAID ,Impact on disk
performance, Hot Spares.
7
2
Storage Area Network: SAN – Evolution, Components of SAN, Fibre
Channel Protocol Stack- Links, ports and topologies, FC-0: Cables, plugs
and Signal Encoding, FC-1: 8b/10b encoding, ordered sets and link
control protocol, FC-2: data Transfer, FC-3: common Services, FC-4 and
ULPs, Fibre Channel SAN – point-to- point topology, Fabric topology,
Arbitrated loop topology, Hardware components of Fibre channel SAN.
IP SAN – iSCSI-components, connectivity, topology, protocol stack,
discovery, names, session, PDU.
6
3
Network -Attached Storage:
Local File Systems, Network File System and File Servers, Benefits of
NAS, NAS file I/O, Components of NAS, NAS Implementations, NAS
File sharing Protocols, NAS I/O operations, Factors affecting NAS
Performance.
Case Study: Direct Access File System, Shared Disk File System
Comparison: NAS, Fibre Channel SAN and iSCSI SAN
6
4
Storage Virtualization:Introduction, Virtualization in the I/O path,
Limitations and requirements, Definition of Storage Virtualization,
Implementation considerations, Storage Virtualization on block level,
File level Virtualization, Storage Virtualization on various levels of the
storage network, Symmetric and Asymmetric Storage Virtualization.
6
5
Business Continuity, Backup and Recovery: Introduction,
InformationAvailability, Cause of Information unavailability, Measuring
information Availability, Consequences of down time, BC terminology,
BC planning life cycle, Failure Analysis, BC Technology Solutions,
Backup Purpose, Backup Considerations, Backup Granularity, Recovery
5
36
Considerations, Backup Methods, Backup Process, Backup and Restore
Operations, Backup Topology, Backup in NAS environment, Backup
Technologies.
6
Replication and storage security: Local Replication, Uses of Local
Replicas, Data Consistency, Local Replication Technologies, Restore and
Restart Considerations.
Storage Security: Storage Security Framework, Risk Triad, Storage
Security Domains, Security
Implementations in Storage Networking.
6
Reference Books:
Sr. No. Title of Book Author Publisher/Edition Topics
1 Information Storage and
Management
G. Somasudaram EMC Education
Services (Wiley
India Edition)
1,2,3,4,5,6
2 Storage Networks
Explained
Ulf Troppen , Rainer
Erkens, Wolfgang
Müller
(Wiley India
Edition) 3,4
Scheme of Marks
Unit No. Title Marks
1 Introduction to information storage and Storage System
Environment
20
2 Storage Area Network 15
3 Network Attached Storage 15
4 Storage Virtualization 20
5 Business Continuity, Backup and Recovery 15
6 Replication and storage security 15
Course Unitization
Unit Course
Outcomes
No. of Questions in
No. Title CAT-I CAT-II CAT III
1 Introduction to
information storage and
Storage System
Environment
CO311.1 3 questions -- -
2 Storage Area Network CO311.2 3 questions -- -
3 Network Attached
Storage
CO311.3 - 3 questions -
37
4 Storage Virtualization
CO311.4 - 3 questions -
5 Business Continuity,
Backup and Recovery
CO311.5 - - 3 questions
6 Replication and storage
security
CO311.6 - - 3 questions
Unit wise Lesson Plan
SECTION I
Unit No 1 Unit Title Introduction to
information storage Planned Hrs. : 7
Lesson schedule
Class No. Details to be covered
1 Evolution of storage technology and architecture, Data Center Infrastructure, Key
challenges in Managing Information
2 Information Lifecycle, Components of Storage System Environment, Disk Drive
Components
3 Disk Drive Performance, Laws governing disk Performance, the Logical
Components of Host
4 Application requirements and disk performance, Application requirements and
disk performance,
5 Intelligent Storage System, Direct Attached Storage and Data Protection:
Components of Intelligent Storage System, Intelligent Storage Array
6 Direct Attached Storage – types, benefitsand limitation, Disk drive Interface,
Introduction to parallel SCSI, SCSI command model.
7 Data Protection (RAID):- Implementation of RAID, RAID array components,
RAID levels, Comparison, RAID ,Impact on disk performance, Hot Spares.
Review Questions
Q1 Explain the Evolution of Storage Technology and Architecture?
Q2 Explain the core elements of Data Center Infrastructure.
Q3 Explain key characteristics of data center elements?
Q4 Which are the activities of managing storage infrastructure?
Q5 Explain key challenges in managing information.
Q6 Explain information life cycle in detail.
Q7 Write short note on
a. Platter b. Spindle c. Read/Write head d. Controller
Q8 Define seek time Rotational latency, Data transfer rate?
Q9 Explain logical components of host in detail?
38
Unit No
2
Unit Title
Storage Area Network
Planned Hrs.06
Lesson schedule
Class No. Details to be covered
1 SAN – Evolution, Components of SAN, Fibre Channel Protocol Stack- Links,
ports and topologies.
2 FC-0: Cables, plugs and Signal Encoding, FC-1: 8b/10b encoding, ordered sets
and link control protocol.
3 FC-2: data Transfer, FC-3: common Services, FC-4 and ULPs.
4 Fibre Channel SAN – point-to- point topology, Fabric topology, Arbitrated
loop topology.
5 Hardware components of Fibre channel SAN.
6 IP SAN – iSCSI – components, connectivity, topology, protocol stack,
discovery, names, session, PDU.
Review Questions
Q1. Explain the components of SAN.
Q2. Explain Fibre Channel Protocol Stack.
Q3. Which are the FC topologies?
Q4. Explain topologies for iSCSI connectivity.
Q.5 Write short note on iSCSI names and iSCSI PDU.
Unit No 3 Unit Title Network -Attached
Storage
Planned Hrs.06
Lesson schedule
Class No. Details to be covered
1 Local File Systems, Network File System and File Servers.
2 Benefits of NAS, NAS file I/O, Components of NAS.
3 NAS Implementations, NAS File sharing Protocols.
4 NAS I/O operations, Factors affecting NAS Performance.
5 Case Study: Direct Access File System, Shared Disk File System.
6 Comparison: NAS Fibre Channel SAN and iSCSI SAN.
Review Questions
Q1 Explain Local file system in detail?
Q2 List out the benefits of NAS?
Q3 Write a short note on NAS file I/O.
Q4 Which are the types of NAS? Explain in detail.
Q5 Explain NAS File-Sharing protocol in detail.
Q6 Write a short note on NAS I/O operations.
Q7 List out the factors affecting NAS performance. Explain any four of them.
Q8 Explain direct access file system with diagram.
39
Unit No 4 Unit Title Storage Virtualization Planned Hrs. 06
Lesson schedule
Class No Details to be covered
1 Introduction
2 Virtualization in the I/O Path
3
Limitations and requirements ,Definition of storage virtualization
Implementations considerations
4 storage virtualization on block level, file level virtualization
5 storage virtualization on various levels of the storage network
6 Symmetric and asymmetric storage virtualization
Review Question
Q1 Define storage virtualization
Q2 What is file level virtualization?
Q3 What do you mean by virtualization in the I/O path?
Q4 Write a note on asymmetric storage virtualization
Unit No 5 Unit Title Business Continuity,
Backup and Recovery
Planned Hrs.05
Lesson schedule
Class No. Details to be covered
1 Introduction, Information Availability, Cause of Information unavailability,
Measuring information Availability.
2 Consequences of down time, BC terminology, BC planning life cycle, Failure
Analysis.
3 BC Technology Solutions, Backup Purpose, Backup Considerations, Backup
Granularity.
4 Recovery Considerations, Backup Methods, Backup Process, Backup and
Restore Operations.
5 Backup Topology, Backup in NAS environment, Backup Technologies.
Review Questions
Q1 Write a short note on information availability?
Q3 Explain BC planning life cycle in detail?
Q4 Write a short note on
a. Single point of failure, b. Fault tolerance, c. Multi pathing software.
Q5 What is the purpose of backup?
Q6 Explain backup granularity?
Q7 Write a short note on recovery considerations?
Q8 Write a short note on different backup method?
Q9 Explain backup operations and restore operation?
40
Q10 Explain backup topologies in detail?
Q11 Write a short note on backup process?
Q12 What is the difference between servers based backup and server less backup?
Unit No 6 Unit Title Replication Planned Hrs. 06
Lesson schedule
Class No. Details to be covered
1 Local Replication, Uses of Local Replicas
2 Data Consistency, Local Replication Technologies
3 Restore and Restart Considerations
4 Storage Security: Storage Security Framework
5 Risk Triad, Storage Security Domains, Security
6 Implementations in Storage Networking
Review Questions
Q1 Which are the uses of Local Replica?
Q2 Explain data consistency in detail.
Q3 Write a short note on Host-Based Local Replication.
Q4 Write a short note on Storage Array Based Replication.
Model Question Paper
Course Title : Storage Network
Duration: 3 Hours Max. Marks
Instructions: 100
1) Question no.4 & Question no. 8 compulsory.
2) Attempt any two questions from remaining questions
from section I and section II
3) Figure to the right indicate full marks
Marks
1 a Describe key characteristics of data center elements. 8
b What is information life cycle? Discuss characteristics of Information
Life Cycle Management.
8
2 a Which are the activities of managing storage infrastructure? 8
b Explain SCSI-3 Architecture in detail. 8
3 a Explain in detail SCSI command model. 8
b Explain topologies for iSCSI connectivity. 8
4 a Explain hardware components of fiber Channel SAN. 9
b What are the advantages of a virtual data center over a classic data
center?
9
41
5 a Discuss factors affecting NAS performance and availability. 8
b Explain architecture of local file system. 8
6 a Which are the limitations and requirements of Storage Virtualization? 8
b Explain backup operations and restore operation 8
7 a What is the difference between servers based backup and server less
backup?
8
b Which are the uses of Local Replica? 8
8 a Write a short note on Storage Array Based Replication 9
b Write a short note on Component of NAS. 9
42
Course Plan
Course Information Security Course Code CSE311
Prepared by Dr. N. D. Karande, Mr.A.S Kamble Date : 01/12/2018
Examination
Scheme
Theory Term Work Online Total
Max. Marks 50 25 50 125
Contact
Hours/ week
3 T 1 Tut -- 4
Prerequisites Students should know the basic concepts of computer network, cryptography.
Course Outcomes
At the end of the course the students should be able to:
CO311.1 Describe2 the basics of cryptographic techniques & represent different services &
mechanism of symmetric ciphers.
CO311.2 Explain6 different cryptographic algorithms and authentication protocols.
CO311.3 Discuss2 different network security practices like Kerberos & X.500 and mail
securities.
CO311.4 Describe2 the need of IP security in the today’s network.
CO311.5 Distinguish1between intruders & authenticated users.
CO311.6 Analyse3 web and system security with different malicious software’s & firewall
design principals.
Mapping of COs with Pos POs
COs
a b c d e f g h i j k l m
CO311.1 1 2 1 1 2
CO311.2 2 3 3 1
CO311.3 1 2 1 1
CO311.4 1 2 1 1
CO311.5 1 1 1 2
CO311.6 1 1 1
1 Mild correlation 2 Moderato correlation 3 Strong correlation
43
Course Contents
Unit No. Title No. of
Hours
1
Classical Encryption Techniques: Overview – The OSI Security
Architecture, Security Attacks, Services and Mechanism, A Model for
Network Security
Classical Encryption Techniques – Symmetric Cipher Model,
Substitution Techniques, Transposition Techniques, Steganography.
6
2
DES and Public Key Cryptography: Block Cipher and Data Encryption
Standard –Block Cipher Principles, The Data Encryption Standard, The
Strength of DES, Differential and Linear Cryptanalysis, Block Cipher
Design Principles.
Public Key Cryptography and RSA - Principles of Public Key
Cryptosystems, The RSA Algorithm.
7
3
Management and Authentication: Key Management; Other Public-Key
Cryptosystems- Key Management, Diffie-Hellman Key Exchange
Message Authentication and HASH Functions- Authentication
Requirements, Authentication Functions, Message Authentication
Codes, Hash Functions.
5
4
Digital Signatures and Authentication Applications: Digital Signatures
and Authentication Protocols - Digital Signatures, authentication
Protocols, Digital Signature Standard.
Authentication Applications - Kerberos, X.509 Authentication Service,
Public – Key Infrastructure.
7
5
Electronic mail and IP security: Electronic Mail Security - Pretty Good
Privacy, S/MIME
IP Security – IP Security Overview, IP Security Architecture,
Authentication Header, Encapsulating Security Payload.
6
6
Web and System Security: Web Security - Web Security Considerations,
Secure Socket Layer and Transport Layer Security, Secure Electronic
Transaction.
Intruders - Intruders, Intruder Detection, Password Management
Firewall - Firewall Design Principles, Trusted Systems.
5
44
Reference Books:
Sr. No. Title of Book Author Publisher/E
dition
Units
1 Cryptography and network
security
Atul Kahate TMGH 1,4,5
2 Cryptography & Security Shyalama Wiley 4,5,6
3 Information Systems Security Nina Godbole Wiley 2,3
4 Cryptography & Network
Security
Forouzan TMGH 2,3
Scheme of Marks
Section Unit No. Title Marks
I
1 Classical Encryption Techniques 14
2 DES and Public Key Cryptography 18
3 Key Management & Authentication 16
II
4 Digital Signatures & Authentication Application 20
5 Electronic mail & IP security 14
6 Web & System Security 18
Course Unitization
Unit
No.
CO Evaluation Notes
1 CO311.1 CAT 1
3 questions with mixing of sub questions from
Unit 1 and 2 2 CO311.2
3 CO311.3 CAT 2
3 questions with mixing of sub questions from
Unit 3 and 4 4 CO311.4
5 CO311.5 CAT3
3 questions with mixing of sub questions from chapters
Unit 5 and 6 6 CO311.6
45
Unit wise Lesson Plan
Unit
No 1 Unit Title: Classical Encryption Techniques
Planned
Hrs. 6
Lesson schedule
Class
No.
Details to be covered
1 Overview - The OSI security Architecture
2 Attacks ,Services and Mechanism
3 A model for network security
4 Classical Encryption techniques – Symmetric Cipher model
5 Substitution techniques
6 Transposition techniques
7 Steganography
Review Questions
Q1 What is the OSI security architecture? CO311.1
Q2 What is the difference between passive and active security threats? CO311.1
Q3 List and briefly define categories of passive and active security attacks? CO311.1
Q4 What are the essential ingredients of a symmetric cipher? CO311.1
Q5 What are the two basic function used in encryption algorithm? CO311.1
Q6 How many keys are required for two people to communicate via a
symmetric cipher?
CO311.1
Unit
No 2 Unit Title: DES and Public Key Cryptography
Planned
Hrs. 7
Lesson schedule
Class
No.
Details to be covered
1 DES and Public Key Cryptography: Block Cipher and Data Encryption Standard, Block Cipher
Principles
2 The Data Encryption Standard
3 The Strength of DES
4 Differential and Linear Cryptanalysis
5 Block Cipher Design Principles
6 Principles of Public Key Cryptosystems
7 The RSA Algorithm.
Review Questions
Q1 How are block ciphers different from stream cipher? CO311.2
Q2 Why do block ciphers modes of operation only use encryption while
others use both encryption and decryption?
CO311.2
46
Q3 Explain the Data Encryption Standard. CO311.2
Q4 What are the strengths of DES? CO311.2
Q5 Explain differential and linear cryptanalysis. CO311.2
Q6 Draw & explain public key cryptography CO311.2
Q7 Explain RSA algorithm with an example CO311.2
Unit
No 3 Unit Title Key Management & Authentication
Planned
Hrs. 5
Lesson schedule
Class
No.
Details to be covered
1 Key Management
2 Other public key cryptosystems, Key Management
3 Diffie-Hellman Key Exchange
4 Message Authentication and HASH Functions
5 Authentication requirements, Authentication Functions
6 Message Authentication Codes, Hash Functions
Review Questions
Q1 List the approaches of message authentication? CO311.3
Q2 List and brief define three uses of a public-key cryptosystem. CO311.3
Q3 What is a difference between a private key and a secret key? CO311.3
Q4 What is public –key certification? CO311.3
Q5 Explain different Crypto algorithm where public-key cryptosystems are
used.
CO311.3
Q6 How certification authorities are useful for distribution of public keys? CO311.3
Unit
No 4 Unit Title:
Digital Signatures & Authentication
Application
Planned
Hrs. 7
Lesson schedule
Class
No.
Details to be covered
1 Digital Signatures
2 Authentication Protocols
3 Digital Signatures Standards
4 Authentication Applications – Kerberos
5 X.500 Authentication Service
6 Public-Key Infrastructure
Review Questions
Q1 Write short note on digital signature CO311.4
47
Q2 Explain what is digital signature standard? CO311.4
Q3 Why authentication protocols are needed? CO311.4
Q4 Explain Kerberos & its types. CO311.4
Q5 Write short notes on X.509 authentication services CO311.4
Q6 Public-Key Infrastructure CO311.4
Unit
No
5 Unit Title Electronic mail & IP Security
Planned
Hrs.
6
Lesson schedule
Class
No.
Details to be covered
1 Electronic Mail Security - Pretty Good Privacy
2 S/MIME
3 IP Security – IP Security Overview
4 IP Security Architecture
5 Authentication Header
6 Encapsulating security Payload
Review Questions
Q1 What are the five principal services provided by PGP? CO311.5
Q2 What is the utility of a detached signature? CO311.5
Q3 Why does PGP generate a signature before applying compression? CO311.5
Q4 What is radix-64 conversion? How is it used for an e-mail application? CO311.5
Q5 Explain briefly User agent role. CO311.5
Q6 State and explain S/MIME functions. CO311.5
Q7 Explain PGP cryptographic functions. CO311.5
Unit
No 6 Unit Title: Web & System Security
Planned
Hrs. 5
Lesson schedule
Class
No.
Details to be covered
1 Web Security Considerations
2 Secure Socket Layer and Transport Layer Security
3 Secure Electronic Transaction
4 Intruders
5 Intruder detection
6 Password Management
7 Malicious Software
8 Viruses and Related Threats
9 Virus Countermeasures
48
10 Firewall Design principles
11 Trusted systems
Review Questions
Q1 List and briefly define three classes of intruders. CO311.6
Q2 Why are biometric used instead of passwords for authentication? CO311.6
Q3 What are three benefits that can be provided by an intrusion detection
system?
CO311.6
Q4 What is the difference between statistical anomaly detection and rue-based
intrusion detection
CO311.6
Q5 List difference file access activities used for intrusion detection CO311.6
Q6 List different audit record fields CO311.6
Q7 How honey pots are used for network security? CO311.6
Q8 What is the salt in the context of UNIX password management? CO311.6
Practical/ Assignments:
List of assignments to meet the requirements of the syllabus
Assignment No. 1
Assignment Title Classical Encryption Techniques CO311.1
Batch I [1] Explain OSI Security Architecture
[2] Describe various Security Attacks
[3] Describe various Security Services
[4] Draw and explain N/W security model
[5] Draw and explain Symmetric Cipher model
[6] Explain all Substitution techniques
[7] Explain all Transposition techniques
[8] Draw and explain Rotor machines
[9] Describe all types of Steganography methods
Batch II [1] OSI Security Architecture
[2] Describe various Security Attacks
[3] Describe various Security Services
[4] Draw and explain N/W security model
[5] Draw and explain Symmetric Cipher model
[6] Explain all Substitution techniques
[7] Explain all Transposition techniques
[8] Draw and explain Rotor machines
[9] Describe all types of Steganography methods
Batch III [1] OSI Security Architecture
[2] Describe various Security Attacks
[3] Describe various Security Services
[4] Draw and explain N/W security model
[5] Draw and explain Symmetric Cipher model
49
[6] Explain all Substitution techniques
[7] Explain all Transposition techniques
[8] Draw and explain Rotor machines
[9] Describe all types of Steganography methods
Batch IV [1] OSI Security Architecture
[2] Describe various Security Attacks
[3] Describe various Security Services
[4] Draw and explain N/W security model
[5] Draw and explain Symmetric Cipher model
[6] Explain all Substitution techniques
[7] Explain all Transposition techniques
[8] Draw and explain Rotor machines
[9] Describe all types of Steganography methods
Assignment No. 2
Assignment Title DES and Public Key Cryptography CO311.2
Batch I [1] Explain difference between Block cipher and Stream cipher
[2] Explain Block Cipher Principles
[3] Explain DES algorithm
[4] What are strengths of DES?
[5] Explain Differential and Linear Cryptanalysis
[6] What are different Block Cipher Design Principles?
[7] Draw and explain Public keys cryptography
[8] Explain RSA algorithm with an example
Batch II [1] Explain difference between Block cipher and Stream cipher
[2] Explain Block Cipher Principles
[3] Explain DES algorithm
[4] What are strengths of DES?
[5] Explain Differential and Linear Cryptanalysis
[6] What are different Block Cipher Design Principles?
[7] Draw and explain Public keys cryptography
[8] Explain RSA algorithm with an example
Batch III [1] Explain difference between Block cipher and Stream cipher
[2] Explain Block Cipher Principles
[3] Explain DES algorithm
[4] What are strengths of DES?
[5] Explain Differential and Linear Cryptanalysis
[6] What are different Block Cipher Design Principles?
[7] Draw and explain Public keys cryptography
[8] Explain RSA algorithm with an example
Batch IV [1] Explain difference between Block cipher and Stream cipher
[2] Explain Block Cipher Principles
[3] Explain DES algorithm
50
[4] What are strengths of DES?
[5] Explain Differential and Linear Cryptanalysis
[6] What are different Block Cipher Design Principles?
[7] Draw and explain Public keys cryptography
[8] Explain RSA algorithm with an example
Assignment No. 3
Assignment Title Key Management and Authentication CO311.3
Batch I [1] What is meaning of key-management?
[2] Explain Diffie-Hellman Key Exchange with an example
[3] Explain Message authentication and HASH function
[4] What are different Authentication requirements and Authentication
functions of HASH functions?
Batch II [1] What is meaning of key-management?
[2] Explain Diffie-Hellman Key Exchange with an example
[3] Explain Message authentication and HASH function
[4] What are different Authentication requirements and Authentication
functions of HASH functions?
Batch III [1] What is meaning of key-management?
[2] Explain Diffie-Hellman Key Exchange with an example
[3] Explain Message authentication and HASH function
[4] What are different Authentication requirements and Authentication
functions of HASH functions?
Batch IV [1] What is meaning of key-management?
[2] Explain Diffie-Hellman Key Exchange with an example
[3] Explain Message authentication and HASH function
[4] What are different Authentication requirements and Authentication
functions of HASH functions?
Assignment No. 4
Assignment Title Digital Signatures and Authentication Applications CO311.4
Batch I [1] What are Digital signatures?
[2] What are different Authentication Protocols?
[3] Explain Digital Signature Standard
[4] Draw and explain Kerberos
[5] What are different X.509 Authentication Services?
Batch II [1] What are Digital signatures?
[2] What are different Authentication Protocols?
[3] Explain Digital Signature Standard
[4] Draw and explain Kerberos
[5] What are different X.509 Authentication Services?
Batch III [1] What are Digital signatures?
[2] What are different Authentication Protocols?
[3] Explain Digital Signature Standard
51
[4] Draw and explain Kerberos
[5] What are different X.509 Authentication Services?
Batch IV [1] What are Digital signatures?
[2] What are different Authentication Protocols?
[3] Explain Digital Signature Standard
[4] Draw and explain Kerberos
[5] What are different X.509 Authentication Services?
Assignment No. 5
Assignment Title Electronic mail and IP security CO311.5
Batch I [1] Why there is need of Electronic Mail Security?
[2] What is Pretty Good Privacy?
[3] Draw and explain S/MIME
[4] Explain IP Security Architecture
[5] What are different fields in Authentication Header?
[6] What is Encapsulating Security Payload (ESP)?
Batch II [1] Why there is need of Electronic Mail Security?
[2] What is Pretty Good Privacy?
[3] Draw and explain S/MIME
[4] Explain IP Security Architecture
[5] What are different fields in Authentication Header?
[6] What is Encapsulating Security Payload (ESP)?
Batch III [1] Why there is need of Electronic Mail Security?
[2] What is Pretty Good Privacy?
[3] Draw and explain S/MIME
[4] Explain IP Security Architecture
[5] What are different fields in Authentication Header?
[6] What is Encapsulating Security Payload (ESP)?
Batch IV [1] Why there is need of Electronic Mail Security?
[2] What is Pretty Good Privacy?
[3] Draw and explain S/MIME
[4] Explain IP Security Architecture
[5] What are different fields in Authentication Header?
[6] What is Encapsulating Security Payload (ESP)?
Assignment No. 6
Assignment Title Web and System Security CO311.6
Batch I [1] What are different Web Security Considerations?
[2] Explain Secure Socket Layer and Transport Layer Security in detail
[3] Explain Secure Electronic Transaction
[4] What do you mean by an Intruder?
[5] What are different techniques of Intruder Detection?
52
[6] How to manage your Password securely?
[7] What is Firewall?
[8] What are different Firewall Design Principles?
[9] What do you mean by Trusted Systems?
Batch II [1] What are different Web Security Considerations?
[2] Explain Secure Socket Layer and Transport Layer Security in detail
[3] Explain Secure Electronic Transaction
[4] What do you mean by an Intruder?
[5] What are different techniques of Intruder Detection?
[6] How to manage your Password securely?
[7] What is Firewall?
[8] What are different Firewall Design Principles?
[9] What do you mean by Trusted Systems?
Batch III [1] What are different Web Security Considerations?
[2] Explain Secure Socket Layer and Transport Layer Security in detail
[3] Explain Secure Electronic Transaction
[4] What do you mean by an Intruder?
[5] What are different techniques of Intruder Detection?
[6] How to manage your Password securely?
[7] What is Firewall?
[8] What are different Firewall Design Principles?
[9] What do you mean by Trusted Systems?
Batch IV [1] What are different Web Security Considerations?
[2] Explain Secure Socket Layer and Transport Layer Security in detail
[3] Explain Secure Electronic Transaction
[4] What do you mean by an Intruder?
[5] What are different techniques of Intruder Detection?
[6] How to manage your Password securely?
[7] What is Firewall?
[8] What are different Firewall Design Principles?
[9] What do you mean by Trusted Systems?
53
Model Question Paper
Course Title : Information Security
Duration-3 Hrs. Max Marks : 50
Instructions:
1 Question no 3 and 6 are compulsory.
2 Attempt any one question from question no. 1 and 2
3 Attempt any one question from question no. 4 and 5
2 Figures to the right indicate full marks
1 a) List and explain OSI security mechanisms. [06]
b) Explain substitution techniques with example [06]
2 a) Draw and explain the internal structure of single round of DES algorithms. [06]
b) Differentiate between
a) Block cipher & stream cipher b) Diffusion & confusion
[06]
3 a) Explain Diffie-Hellman key exchange. [06]
b) What types of attacks are addressed by the message authentication? [07]
4 a) What is digital signature? Explain DSA algorithm in detail [06]
b) Give overview of Kerberos [06]
5 a) What are the different principal services provided by PGP Discuss each
service in detail
[06]
b) Explain Encapsulating security payload header format used in IPsec. [06]
6 a) Discuss the features and requirements of SET (Secure Electronic Transactions [07]
b) Explain different approaches used for intrusion detection [06]
Model Question Paper (Multiple choice questions)
1 Security mechanism is designated to…………. From a security attack.
a) detect b) Prevent c) recover d) all of the above
2 Diffre-Hellman algorithm computes keeps …..values private and makes the……value available
publically to other side
a) YX b) x,Y c) q,x d) Y,q
3 To solve Source repudiation problem…… can be used
a) Digital Signature b) Diffre- Helln.ranAlgorithm c) Steganography
d) Transposition
4
…… Provides centralized authentication server whose function is to authenticate users to seryer and servers to users.
a) Hash functions b) Message Authentication
Code
c) Public-key infrastructure d) Kerberos
5 In Digital signature, message signed using…….
a) public key of Sender b) public key of Receiver c) private key of Sender d) private key of
Receiver
6 Certificate issued by Certificate Authority is encrypted using……..
a) Private Key Of Authority b) Public Key Of
Authority
c) Private Key Of
Certificate Owner
d) none of the above
7 The Is a collection of protocols designed by Internet Engineering Task Fork (IETF) to provide security for a packet at the
Network level
a) IPsec b) Netsec c) Packetsec d) Protocols sec
54
8 ……uniquely identifies the MIME entities uniquely with reference to multiple contexts
a) Content description b) Content -id c) Content type d) Content transfer encoding
9 Pretty good privacy (PGP) is used in
a) browser security b) email security c) FTP security
d) none of the mentioned
10 The primary goal of the………. protocol is to provide a private channel between communicating application, which ensures
privacy of data authentication of the partners, and integrity
a) SSL b) ESP c) TSL d) PSL
11 A fundamental tool for intrusion detection is………
a) Audit record b) Password management c) Both A& B d) none of the above
12 One of the protocols to provide security at the application layer ls
a) Pretty Good Privacy b) Handshake Protocol c) Alert Protocol d) Record Protocol
13 IPSec is designed to provide the security at the ………
a) Transport layer b) Network Layer c) Application Layer d) Session Layer
14 The components of IP security includes……..
a) Authentication Header
(AH)
b) Encapsulating Security
Payload (ESP)
c) Internet key Exchange (IKE) d) All of the above
15 In direct digital signatures, signing can be done
a) only on the whole
message
b) only on the hash of the
message
c) either on the whole message or
on in the hash of the message
d) on the public key
of the receiver
16 In Kerberos interealm authentication Dialogue, A user wishing service on a
server in another realm needs………
a) Ticket-granting ticket for
a local TGS
b) Ticket-granting ticket for
a remote TGS
c) Service-granting ticket for the
server in the realm of the
remote TGS'
d) All of the above
17 The Diffie-Hellman protocol is vulnerable to…… if two parties are
not authenticated to each other
a) Mar-in-the-middle attack
b) Cipher text attacks c) Plaintext attack d) Birthday Attack
18 Which of the following is not an approach to security of RSA.
a) Brute Force b) Mathematical Attack c) Timing attack d) None of the above
19 In data encryption algorithm…… key used as input
a) 32 bit b) 8 bit c) 48 bit d) 64 bit
20 Which service provides proof that the message was received by specified
Party?
a) Integrity b) Confidentiality c) Repudiation d) Non repudiation
destination
21 A more complex scheme in transposition technique is to read the
message
a) row by row b) diagonally c) column by column d) none of the above
22 A process that is designed to detect, prevent or recover is called as
a) Security Service b) Security Mechanism c) Security Attack d) None of these
23 In Feistel Cipher structure…… is performed on left half of the data.
a) Substitution b) Permutation c) Transposition d) Both (a) and (b)
24 Which of the Following is not the Requirement of Kerberos
a) Reliable b) Transparent c) Scalable d) None of the above
25 MIME stands for
a) Multipurpose Internet
Mail Extensions
b) Multipurpose Internet
Mail Email
c) Multipurpose Internet Mail
End
d) Multipurpose
internet Mail
Extra
55
Course Plan
Course Code Programming Lab -IV Course Code CS313
Prepared by Ms. R.Y. Mulla , Mr. R. G. Sonkamble Date 3/10/2018
Examination
Scheme Theory Term work OE Total
Max.Marks -- 25 50 75
Lecture Tutorial Practical Total
Contact
hours/Week 2 -- 2 8
Pre-requisites This course requires the students to have some basic Programming language skills(C &
C++) with different Object Oriented Programming concepts & basic knowledge of
Networking & File Handling.
Course Outcomes
At the end of the course the students should be able to:
CO313.1 Explain2.NET Framework, with its internals execution Model and Architecture.
CO313.2 Use3Visual Studio IDE for building different types of C# Applications.
CO313.3 Test4Console & Windows form based C# Applications based on array and OOP
concepts.
CO313.4 Convert2 From one Type to another Type (value_type-reference_type) in C#.
CO313.5 Summarize5Windows form application using GUI &database connectivity with
ADO.NET.
CO313.6 Use3String Namespace & its ,Constants, Functions, Properties & use of Regular
Expression
CO313.7 Experiment3 C# applications based on Multithreading, Networking, Delegates and
otherFeatures
56
Mapping of COs with POs
POs
COs a b c d e f g h i j k l m
CO313.1 2 1 2 1 2 2
CO313.2 2 1 1 3 2 1
CO313.3 3 1 3 1 1 2
CO313.4 2 2 1
CO313.5 2 3 1 2 2 2
CO313.6 1 1 1 2
CO313.7 2 3 1 2 1 2
1 Mild correlation 2 Moderate correlation 3 Strong correlation
Course Contents
Unit No. Title No. of
Hours
1.
.NET Architecture
The Relationship of C# to .NET, The Common Language Runtime,
A Closer Look at Intermediate Language, Assemblies, .NET
Framework Classes, Namespace.
3
2.
C# Basics
Variables, Predefined Data Types, Flow Control, Enumerations,
Arrays, Namespaces, The Main () Method, More on Compiling C#
Files, Console I/O, Using Comments, C# Programming Guideline,
Dynamic variables, DLL creations & calling.
4
3.
Objects and Types
Classes and Structs, Class Members, Anonymous Types, Structs,
Partial Classes, Static Classes, The Object Class, Extension Methods.
3
4.
Inheritance
Types of Inheritance, Implementation Inheritance, Modifiers,
Interfaces.
2
5.
Arrays
Simple Arrays, Multidimensional Arrays, Jagged Arrays, Array
Class, Array and Collection Interfaces, Enumerations.
2
6.
Operators and Casts
Operators, Type Safety, Comparing Objects for Equality, Operator
Overloading, User-Defined Casts.
2
7. Windows Forms & Database with ADO.Net 4
57
Introduction to GUI application & components –add data control
programmatically, Link data to control, process all control, track the
visible forms, Find all MDI child forms, Save configuration setting
for form, Force list box to scroll items, Restrict text box, Use of auto
complete combo box, Sort a list view, Database with ADO.NET-
Overview of Ado.NET, Data components in Visual Studio .NET.
8.
Strings
System.String, Building Strings, StringBuilder Members, Format
String, Regular expression
1
9.
Threading
Overview, Asynchronous Delegates, The Thread Class, Thread
Pools, Threading Issues, Synchronization, Timers.
3
10. I/O, Files and Networking
Streams, Standard Devices, Networking 2
Text Books:
Sr. No. Title of Book Author Publisher/Edition Topics
1. Professional C# 2012 & .Net
4.5(for unit 1 to 6 & Unit-8
to 9)
Christian Nagel, Bill
Evjen, Jay Glynn,
Morgan Skinner, Karli
Watson.
WROX
Publication
Unit 1- 6
&
Unit 8-9
2. A Programmer’s Guide to
ADO.Net in C#
Mahesh Chand Apress
Publications
Unit 7-
database
With
ADO.Net
3. Visual C# 2010 Recipes- A
Problem-Solution Approach
Allen Jones, Adam
Freeman, Matthew
Macdonald
Apress
Publications
Unit 7-10
Reference Books:
Sr. No. Title of Book Author Publisher/Edition
1 Pro C# 2008 and the .NET 3.5
platform.
Fourth Edition. Windows/.NET
2 C# 3.0 in a Nutshell:A desktop
Quick Reference
First Edition O'Reilly
3 C# in Depth: What you need to
master C#
First Edition Manning
4 Pro C#5.0 and the .NET 4.5
Framework
Andrew Troelson Apress
5 Professional C# 4.0 and .NET 4. Christian Nagel WROX
58
Evaluation scheme
Examination
Scheme
Theory Term Work POE Total
Max. Marks -- 25 50 75
Lecture Tutorial Practical Total
Contact
Hours/ week
2 -- 2 4
Unit wise Lesson Plan
SECTION I
Unit No Unit Title Planned Hrs.
1 .NET Architecture 03
Lesson schedule
Class No Details to be covered
1 (i)The Relationship of C# to .NET,
(ii)The Common Language Runtime.
2 (i)A Closer Look at Intermediate Language
(ii) Assemblies.
3 (i)NET Framework Classes,
(ii)Namespaces
Review Questions
Q1 What is the Relationship of C# to .NET? CO313.1
CO313.1
CO313.2
CO313.1
CO313.3
Q2 What is the .NET Architecture and .NET Framework?
Q3 What is the .NET Framework Classes?
Q4 What is JIT?
Q5 What is the Common Language Runtime?
Unit No Unit title Planned Hrs.
2 C# Basics 04
Lesson schedule
Class No Details to be covered
1 (i)Variables,
(ii)Predefined Data Types,
(iii)Flow Control,
(iv)Enumerations,
2 (i)Arrays,
(ii)Namespaces.
(iii) The Main () Method
(iv)More on Compiling C# Files,
3 (i)Console I/O,
(ii)Using Comments,
(iii)C# Programming Guideline.
59
4 (i)Dynamic variables
(ii)DLL creation & calling.
Review Questions
Q1 What are Variables and predefined Data Types? CO313.3
CO313.3
CO313.4
CO313.4
CO313.4
Q2 What is the C# Preprocessor Directives?
Q3 What is the Console I/O?
Q4 What is Array and the Namespaces?
Q5 What is DLL? How to create DLL file in C#?
Unit No Unit Title Planned Hrs.
3 Objects and Types 03
Lesson schedule
Class No Details to be covered
1 Classes and Structs , Class Members, Anonymous Types.
2 Structs, Partial Classes, Static Classes.
3 The Object Class, Extension Methods.
Review Questions
Q1. What is the Static Classes? CO313.4
CO313.4
CO313.5
CO313.5
CO313.5
CO313.5
Q2. What is the Class Members?
Q3. What is the difference between Partial Classes and Static Classes?
Q4. What are classes and structs?
Q5. What is the Anonymous Types?
Q6. What is the Object Class?
SECTION II
Unit No Unit Title Planned Hrs.
4 Inheritance 2
Lesson schedule
Class No Details to be covered
1 Types of Inheritance, Implementation Inheritance.
2 Modifiers, Interface
Review Questions
Q1 What is the Inheritance and type of Inheritance? CO313.5
CO313.5
CO313.5
Q2 What is the Modifiers?
Q3 What is the Interfaces?
Unit
No
5 Unit
Title
Arrays Planned Hrs. 02
Lesson schedule
Class No Details to be covered
1 Simple Arrays, Multidimensional Arrays, Jagged Arrays, Array Class.
2 Array and Collection Interfaces, Enumerations.
Review Questions
Q1 What is the Array and types of Array? CO313.6
60
Q2 What is the jagged Arrays? CO313.6
CO313.6
CO313.6
Q3 What is Array Class?
Q4 Describe the Collection Interface and its methods.
Unit
No
6 Unit
Title
Operators and Casts Planned Hrs. 02
Lesson schedule
Class No Details to be covered
1 Operators, Type Safety, Comparing Objects for Equality.
2 Operator Overloading, User-Defined Casts.
Review Questions
Q1 What is the Operator? CO313.7
CO313.7
CO313.7
Q2 What is Operator Overloading?
Q3 What is Type Safety?
Unit
No
7 Unit
Title
Windows Form & Database with
ADO.NET
Planned Hrs. 04
Lesson schedule
Class No Details to be covered
1. Introduction to GUI application & components –add data control programmatically,
Link data to control, process all control, track the visible forms
2. Find all MDI child forms, Save configuration setting for form, Force list box to scroll
items
3. Restrict text box, Use of auto complete combo box ,Sort a list view
4. Database with ADO.NET-Overview of Ado.NET
5. Data components in Visual Studio .NET
Review Questions
Q.1 What id Windows Form application? CO313.8
CO313.8
CO313.8
Q.2 What are the different controls used to develop the application?
Q.3 What is the use of combo box, list box?
Q.4 Explain Ado.Net? What is ADO? CO313.8
Q.5 Which are the different components in Visual Studio.NET? CO313.8
Q.6 What are the different GUI controls in the Windows form application? CO313.8
Q.7 What do you mean by connection string with ADO.NET? CO313.8
Unit
No
8 Unit
Title
STRINGS Planned Hrs. 02
Lesson schedule
Class No Details to be covered
1 System. String, Building Strings, StringBuilder Members, Format String
Review Questions
Q1 What is the Building Strings? CO313.9
CO313.9 Q2 What are the String Builder Functions?
61
Q3 Write the hierarchy in which exceptions are caught in a C# language. CO313.9
CO313.9 Q4 What are the different classes from REGEX for building the regular expression
Unit
No
9 Unit
Title
THREADING Planned Hrs. 03
Lesson schedule
Class No Details to be covered
1 Overview, Asynchronous Delegates.
2 The Thread Class, Thread Pools, Threading Issues.
3 Synchronization, Timers.
Review Questions
Q1 Illustrate the Thread and Thread Class. CO313.10
CO313.10
CO313.10
Q2 What is Process Synchronization?
Q3 What are Asynchronous Delegates? When should they be used?
Unit
No
10 Unit
Title
I/O, Files and Networking Planned Hrs. 03
Lesson schedule
Class No Details to be covered
1 Streams
2 Standard Devices
3 Networking
Review Questions
Q1 What are Streams? CO313.11
CO313.11
CO313.11
Q2 What are the Standard Devices?
Q3 What are the Networking Classes used in C# Network Programming?
Practical’s/Experiments:
List of experiments/assignments to meet the requirements of the syllabus
01 Introduction to .NET framework and Architecture.
02
Write a C# Program to accept and display
1. Student Roll No
2. Student Name
3. Name of the Subject
4. Course Code
1. xecute this program using Command line.
2. Create a dll for the same.
3. Call the method from another c# program.
03
Write a C# Program to demonstrate Extension Methods in the following scenario.
Consider objects for an Employee in a Company containing the following classes
Person →Parent Class
1. Name
62
2. Age
3. Gender
4. Address
Employee → Extends Person
1. EmpID
2. Salary
3. Position
Dependent → Extends Person
1. EmpID
2. DependantName
Shareholder → Extends Person
1. ShareHolderID
2. Name
3. NoOfShares
4. Assume value of 1 share=Rs100/-(static variable)
Create an Extension Class containing the following methods.
Bonus→ to calculate the bonus, take bonus percentage from user,
Pension→ to calculate pension, 50% of salary and
Premium→ to calculate the premium at percentage entered by user.
04
Write a C# Program to implement the Banking Accounts
Account → Parent Class
1. Account ID
2. Account Holder Name
3. Address
4. Phone Number
Child Classes
1. SavingsAccount
i. Amount
ii. Interest Rate
iii. Minimum amount
2. CurrentAccount
i. Amount
ii. ROI
iii. MaxDebitLimit
3. GoldAccount
i. WeightOfGold
ii. ValuePerGram
4. FixedDepositAccount
i. Amount
ii. ROI
iii. Duration
Implement the following Interfaces
63
1. Deposit Amount → Implemented by 1 & 2
i. Deposit In Account by cash
ii. Deposit in Account by Cheque
iii. Deposit in Account via eBanking
2. Assessment → Implemented by all classes
i. Interest
ii. Current Value.
05
Write a C# program to implement the linked list representation of a directed Graph
using Jagged Arrays.
Input:
1. Number of vertices
2. Number of edges
3. The edges in the form of an ordered pair.
Write a method to display the adjacency list of the graph.
06
Write a C# Program to implement the Gregorian Calendar using properties.
The properties are
1. Day
2. Month
3. Year
Implement methods to do the following
1. Validate the Date
2. Check whether the year is a leap year.
3. Calculate which day of the year it is.
07
Continue the program of calendar to implement operator overloading
1. Increment the date
2. Decrement the date
3. Increment the date by a number of days.
4. Decrement the date by number of days.
08
a) Write a C# program to accept a sentence from the user and do the following
1. Reverse every word of the sentence.
2. Count the number of vowels in the sentence.
b) Write a C# Program to accept an email id & phone number from the user and
check if the email id & phone number is entered is valid or not using REGEX &
REGEX Matching.
09
Develop a C# based Windows Form application which shows the fonts. The
application must be able to do the following:
1. Change the size of the text.
2. Change the Text Weight.(Bold)
3. Change the text to Italics.
4. Change the Color of the Text.
10 Write a C# program to implement a simple calculator by using delegates. The
methods should be able to do mathematical operations on integers and floating
64
values.
11 Develop C# based Windows Form application to write a data into a sequential text
file & read a data from file with strong data typing.
12
Develop a C# based Windows Form application that accepts employee details into
the database and checks whether all the fields are valid or not using some regular
expression.
13
Develop a C# based Windows Form application for Student Login which accepts the
user credentials, confirms the credentials in a Student Database and returns a Success
message on successful login and a Failure message on invalid user credentials.
14 Write a Console based C# program to use the Network Namespaces and implement
the TCP-IP Protocol.
65
Course Plan
Course Title Domain Specific Mini-Project Course CSE314
Prepared by Mr. K. M. Aldar Date: 30/11/2018
Pre-requisites • Basics of programming languages.
• Basics of Database.
• Must be familiar with relational databases and file handling.
Course Outcomes
At the end of the course the students should be able to:
CO314.1 Develop4project management skills related to application design.
CO314.2 Developing4 creativity and innovative in project and innovation through
contested product.
CO314.3 Identify3any challenging practical problems and find solution by
formulating proper methodology.
CO314.4 Apply3 the skills of team building and team work.
Mapping of COs with POs
POs
COs
a b c d e f g h i j k l m
CO314.1 3 2 3 2
CO314.2 2 3 2 3
CO314.3 2 3 1 2 2 2
CO314.4 3 2
1 Mild correlation 2 Moderato correlation 3 Strong
correlation
66
Course Contents
Unit No. Title No. of Hours
1.
Guidelines for Mini-project
The students should form group of maximum 5 students each
and every group is supposed to choose a specific domain in
which they would like to carry on their Sem-VII and VIII
project work.Further the group should identify the relevant
problem and propose the solution, which can be implemented
as a mini-project using suitable technology. The domain
specific mini-project work should be evaluated by a team of
teachers appointed by the department. The evaluation should be
done in the mid and end of the semester during which the group
should give presentation and demonstration of their work done.
Care should be taken to avoid out-sourcing of the work. The
termwork assessment is to be done as follows.
2
Evaluation scheme
Examination
Scheme
Theory Term Work POE Total
Max. Marks 25 50 75
Contact
Hours/ week
2(PR)