index [] · 3 compiler construction tools 4 cousins of the compiler 5 compilers in programming...

87
Page 1 of 87 Shivaji University, Kolhapur T.E Computer Science and Engg. (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 0 - 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 CSE 308 2 2 Operating System - II CSE 309 22 3 Database Engineering CSE 310 36 4 Storage Networks CSE 311 46 5 Information Security CSE 312 58 6 Programming Lab - IV CSE 313 74 7 Domain Specific Mini- Project CSE314 86

Upload: nguyenthien

Post on 12-May-2018

227 views

Category:

Documents


0 download

TRANSCRIPT

Page 1 of 87

Shivaji University, Kolhapur

T.E Computer Science and Engg. (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

0 - 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 CSE 308 2 2 Operating System - II CSE 309 22 3 Database Engineering CSE 310 36 4 Storage Networks CSE 311 46 5 Information Security CSE 312 58 6 Programming Lab - IV CSE 313 74 7 Domain Specific Mini- Project CSE314 86

Page 2 of 87

Course Plan for Compiler Construction

Course Compiler Construction Course Code 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 Date 2 November

2017

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 Explain2 phases 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 like top-down and bottom-up

parsing.

CO308.4 Analyze4 S and L attributed syntax directed definitions, storage organization

and it’s allocations strategies

CO308.5 Identify4 the basics of code optimization techniques and data flow analysis

and algorithms

CO308.6 Illustrate3 intermediate code generation techniques with procedure calls

issues in design of code generator and target machines

Page 3 of 87

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

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

Page 4 of 87

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 Modern Compiler

Implementation in Java

Andrew W. Appel Cambridge

University Press

1998

1 to 6

Page 5 of 87

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

Page 6 of 87

Unit wise Lesson Plan

Section I

Unit

No

1 Unit Title Introduction to Compiling Planned

Hrs.

6

Unit Outcomes

At the end of this unit the students should be able to:

UO1 Explain phases of compiler CO308.1

UO2 Construct compiler construction tools CO308.1

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

Page 7 of 87

Unit

No

2

Unit Title

Lexical Analysis

Planned

Hrs.

5

Unit Outcomes

At the end of this unit the students should be able to:

UO1 Elaborate the role of a lexical analyzer, input buffering CO308.2

UO2 Design a lexical analyzer generator CO308.2

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

Page 8 of 87

Unit

No

3

Unit Title

Syntax Analysis

Planned

Hrs.

7

Unit Outcomes

At the end of this unit the students should be able to:

UO1 Demonstrate the role of parser CO308.3

UO2 Explain top-down and bottom-up parsing techniques CO308.3

UO3 Construct LR, SLR and LALR parser CO308.3

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 CO308.3

Page 9 of 87

algorithm.

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

Unit Outcomes

At the end of this unit the students should be able to:

UO1 Define Syntax Directed Definitions, L and S attributed definitions CO308.4

UO2 Construct syntax tree CO308.4

UO3 Analyze Syntax Directed Definitions CO308.4

UO4 Classify back patching techniques with procedure calls CO308.4

UO5 Design intermediate languages CO308.4

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

Page 10 of 87

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

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

Unit Outcomes

At the end of this unit the students should be able to:

UO1 Express sources of optimization and basic blocks CO308.5

UO2 Design Directed Acyclic Graph (DAG) and dynamic code generation

algorithm

CO308.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

Page 11 of 87

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

Unit Outcomes

At the end of this unit the students should be able to:

UO1 Write issues in design of a code generator and target machine CO308.6

UO2 Recognize run time storage management CO308.6

UO3 Explain register allocation and dynamic code generation algorithm CO308.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

Page 12 of 87

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

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

Section-II

Marks

Page 13 of 87

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.

Page 14 of 87

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

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.

Page 15 of 87

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:

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.

Page 16 of 87

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.

Page 17 of 87

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 ___________________.

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?

Page 18 of 87

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.

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

Page 19 of 87

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

Batch IV Design and implement LEX tools and its input specification

Page 20 of 87

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

Page 21 of 87

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

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

Page 22 of 87

Course Plan

Course Code CS309 Course Operating

Systems-II

Prepared by Ms.P K Akulwar, Mr. M P Gaikwad Date 3/11/2017

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 Explain4 UNIX 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

Page 23 of 87

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 disadvantages

of cache.

10

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

8

Page 24 of 87

address space.

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

Evaluation scheme

Examination

Scheme

Theory Term Work OE Total

Max. Marks 100 25 - 100

Contact

Hours/ week

4 --

Page 25 of 87

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

Weightage may differ

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

Page 26 of 87

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.

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.

Page 27 of 87

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.

Page 28 of 87

Review Questions

Q1 Define INODE & explain algorithm for allocation of In-Core

Inodes.

CO309.2

Q2 Explain an algorithm for releasing an Inode.

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.

Page 29 of 87

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.

4 The Structure of process 8

Lesson schedule

Page 30 of 87

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

Page 31 of 87

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

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.

Page 32 of 87

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.

Page 33 of 87

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.

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

Page 34 of 87

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

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.

Page 35 of 87

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.

Page 36 of 87

Course Plan

Course Code 66860 Course Database Engineering

Prepared by Dr. Bhuvaneshwari Melinamath

& Mr. Vinayak. N. Malavade.

Date 03/11/2017

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 Moderate correlation 3 Strong correlation

Page 37 of 87

Course Contents

Unit No. Title No. of Hours

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

4 Data Storage & Indexing [Text Book -3]

4.1 File Organization 4.2 Organization of records in File

07 Hours

Page 38 of 87

4.3 Data Dictionary Storage 4.4 Database Buffer 4.5 Basic Concepts indexing & hashing 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

Page 39 of 87

Evaluation scheme

Examination

Scheme

Theory Term Work POE Total

Max. Marks 100 25 50 175

Contact

Hours/ week

4 -- 2 6

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 3 questions

2 Structured Query Language

CO309.2

3 Normalization CO309.3 3

questions

II

4 Data Storage & Indexing

CO309.4

5 Transaction Management & Concurrency Control

CO309.5 3 questions

6 Recovery System CO309.6

Page 40 of 87

Unit wise Lesson Plan

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

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

Page 41 of 87

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

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

Unit No.

4 Unit Title Data Storage and Indexing Planned Hrs

07

Lesson schedule Class No.

Details to be covered

1 File organization

Page 42 of 87

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 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

Page 43 of 87

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

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

Page 44 of 87

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

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.

Page 45 of 87

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}.

Page 46 of 87

Course Plan

Course Storage Networks Course Code 49448

Examination

Scheme

Theory Term Work Oral Total

Max. Marks 100 -- -- 100

Contact

Hours/ week

3 -- -- --

Prepared by Mr. P.S.Khot and Mr. G. A.Walikar Date : 07/11/17

Prerequisites

This course requires the student to know about the

Basic concepts Computer Networks, Database System 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

Page 47 of 87

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 Moderate correlation 3 Strong correlation

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

7

Page 48 of 87

performance, Hot Spares.

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

Considerations, Backup Methods, Backup Process, Backup and Restore

Operations, Backup Topology, Backup in NAS environment, Backup

Technologies.

5

6 Replication and storage security: Local Replication, Uses of Local

Replicas, Data Consistency, Local Replication Technologies, Restore and 6

Page 49 of 87

Restart Considerations.

Storage Security: Storage Security Framework, Risk Triad, Storage

Security Domains, Security

Implementations in Storage Networking.

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

Page 50 of 87

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 -

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

Page 51 of 87

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, benefits

and 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?

Unit No

2

Unit

Title

Storage Area Network

Planned Hrs.

Page 52 of 87

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.

Q5. Write short note on iSCSI names and iSCSI PDU.

Unit No 3 Unit

Title

Network -Attached

Storage

Planned Hrs.

Lesson schedule

Class

No.

Details to be covered

1 Local File Systems, Network File System and File Servers.

Page 53 of 87

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.

Unit No 4 Unit

Title

Storage Virtualization Planned Hrs.

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

Page 54 of 87

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.

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?

Page 55 of 87

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?

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.

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?

Page 56 of 87

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

5 a Discuss factors affecting NAS performance and availability. 8

Page 57 of 87

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

Page 58 of 87

Course Plan

Course Information Security Course Code CSE311

Examination Scheme

Theory Term Work Online Total

Max. Marks 50 25 50 125 Contact Hours/ week

3 lectures 1 tutorial -- 4

Prepared by Mr.A.S Kamble, Dr. N. D. Karande Date : 06/11/2017 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:

CO312.1 Describe2 the basics of cryptographic techniques & represent different services &

mechanism of symmetric ciphers.

CO312.2 Explain6 different cryptographic algorithms and authentication protocols.

CO312.3 Discuss2 different network security practices like Kerberos & X.500 and mail

securities. CO312.4 Describe

2 the need of IP security in the today’s network.

CO312.5 Distinguish1between intruders & authenticated users.

CO312.6 Analyse3 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

CO312.1 1 2 1 1 2

CO312.2 2 3 3 1

CO312.3 1 2 1 1

CO312.4 1 2 1 1

CO312.5 1 1 1 2

CO312.6 1 1 1

1 Mild correlation 2 Moderato correlation 3 Strong correlation

Page 59 of 87

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

Page 60 of 87

Reference Books:

Sr.

No.

Title of Book Author Publisher/

Edition

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 CO312.1 CAT 1

3 questions with mixing of sub questions from

Unit 1 and 2 2 CO312.2

3 CO312.3

CAT 2

3 questions with mixing of sub questions from

Unit 3 and 4 4 CO312.4

5 CO312.5 CAT3 3 questions with mixing of sub questions from chapters

Unit 5 and 6 6 CO312.6

Page 61 of 87

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? CO312.1

Q2 What is the difference between passive and active security threats? CO312.1

Q3 List and briefly define categories of passive and active security attacks? CO312.1

Q4 What are the essential ingredients of a symmetric cipher? CO312.1

Q5 What are the two basic function used in encryption algorithm? CO312.1

Q6 How many keys are required for two people to communicate via a symmetric cipher?

CO312.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

Page 62 of 87

Q1 How are block ciphers different from stream cipher? CO312.2

Q2 Why do block ciphers modes of operation only use encryption while others use both encryption and decryption?

CO312.2

Q3 Explain the Data Encryption Standard. CO312.2

Q4 What are the strengths of DES? CO312.2

Q5 Explain differential and linear cryptanalysis. CO312.2

Q6 Draw & explain public key cryptography CO312.2

Q7 Explain RSA algorithm with an example CO312.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? CO312.3

Q2 List and brief define three uses of a public-key cryptosystem. CO312.3

Q3 What is a difference between a private key and a secret key? CO312.3

Q4 What is public –key certification? CO312.3

Q5 Explain different Crypto algorithm where public-key cryptosystems are used.

CO312.3

Q6 How certification authorities are useful for distribution of public keys? CO312.3

Unit

No 4 Unit Title:

Digital Signatures &

Authentication Application

Planned

Hrs. 7

Lesson schedule

Page 63 of 87

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 CO312.4

Q2 Explain what is digital signature standard? CO312.4

Q3 Why authentication protocols are needed? CO312.4

Q4 Explain Kerberos & its types. CO312.4

Q5 Write short notes on X.509 authentication services CO312.4

Q6 Public-Key Infrastructure CO312.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? CO312.5

Q2 What is the utility of a detached signature? CO312.5

Q3 Why does PGP generate a signature before applying compression? CO312.5

Q4 What is radix-64 conversion? How is it used for an e-mail application? CO312.5

Page 64 of 87

Q5 Explain briefly User agent role. CO312.5

Q6 State and explain S/MIME functions. CO312.5

Q7 Explain PGP cryptographic functions. CO312.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 10 Firewall Design principles 11 Trusted systems

Review Questions

Q1 List and briefly define three classes of intruders. CO312.6

Q2 Why are biometric used instead of passwords for authentication? CO312.6

Q3 What are three benefits that can be provided by an intrusion detection system?

CO312.6

Q4 What is the difference between statistical anomaly detection and rue-based intrusion detection

CO312.6

Q5 List difference file access activities used for intrusion detection CO312.6

Q6 List different audit record fields CO312.6

Q7 How honey pots are used for network security? CO312.6

Q8 What is the salt in the context of UNIX password management? CO312.6

Page 65 of 87

Practical/ Assignments:

List of assignments to meet the requirements of the syllabus Assignment No. 1

Assignment Title Classical Encryption Techniques CO312.1 Batch I [1] Explain CIA triad

[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] Explain CIA triad [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] Explain CIA triad [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 IV [1] Explain CIA triad [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 CO312.2

Page 66 of 87

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 [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 CO312.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

Page 67 of 87

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 CO312.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 [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 CO312.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)?

Page 68 of 87

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 CO312.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? [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?

Page 69 of 87

[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?

Model Question Paper :

Course Title : Information Security

Duration-3 Hrs. Max Marks : 50

Instructions:

Attempt any two questions from question no. 1, 2.and 3.

Attempt any two questions from question no. ,4,5, and 6.

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 [06]

Page 70 of 87

service in detail

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 c) private key of Sender d) private key of

Page 71 of 87

Receiver 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

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

Page 72 of 87

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

Page 73 of 87

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

Page 74 of 87

Course Plan

Course Code Programming Lab -IV Course Code 45608

Examination Scheme

Theory Term work OE Total

Max.Marks -- 25 50 75 Lecture Tutorial Practical Total Contact hours/Week

2 -- 2 8

Prepared by Ms. R.Priyambiga/ Mr. R. G.

Sonkamble

Date 3/11/2017

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 Explain

2 the .NET Framework, with its internals along with the Execution Model and Architecture.

CO313.2 Use3 the Visual Studio IDE for building different types of C# Applications.

CO313.3 Test

4 Console based & Windows form based C# Applications that implements array concepts and Object Oriented Programming concepts.

CO313.4 Convert2 from one Type to another Type (value_type-reference_type) in C#.

CO313.5

Summarize5 windows form based C# application by using different GUI controls

&building a windows form application with database connectivity with ADO.NET.

CO313.6 Use

3 String Namespace and all its constituent Classes, Constants, Functions and Properties & use of Regular Expression with its classes

CO313.7

Experiment3 C# Programs that implement Multithreading, Networking

applications, Delegates and other Threading Features offered by the .NET framework.

Page 75 of 87

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 2

Page 76 of 87

Operators, Type Safety, Comparing Objects for Equality, Operator

Overloading, User-Defined Casts.

7.

Windows Forms & Database with ADO.Net

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.

4

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

Page 77 of 87

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

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

Page 78 of 87

Q2 What is the .NET Architecture and .NET Framework? CO313.1 CO313.2 CO313.1 CO313.3

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.

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

Page 79 of 87

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?

Page 80 of 87

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 CO313.6 CO313.6 CO313.6

Q2 What is the jagged Arrays? 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?

Page 81 of 87

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

Page 82 of 87

Review Questions

Q1 What is the Building Strings? CO313.9 CO313.9 CO313.9 CO313.9

Q2 What are the String Builder Functions? Q3 Write the hierarchy in which exceptions are caught in a C# language. 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?

Page 83 of 87

Practical/ Assignments:

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. Execute 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 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

Page 84 of 87

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 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

Page 85 of 87

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 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.

Page 86 of 87

Course Plan

Course Code CSE 314 Course Domain Specific Mini-Project

Prepared by Mr. Shailesh Dinde Date:06/11/2017

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 Identify

3any 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

Page 87 of 87

Course Contents

Unit No. Title No. of Hours

1.

Guidelines for Mini-project

The students should form group of 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)