Nothing Special   »   [go: up one dir, main page]

0% found this document useful (0 votes)
12 views12 pages

3rd semCompEng SemesterIII

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 12

DELHI SKILL AND

ENTREPRENEURSHIP UNIVERSITY

Diploma in
Computer
Engineering

Syllabus Document

EFFECTIVE FROM ACADEMIC YEAR 2021-22

1
Program Vision

The vision of the Diploma in Computer Engineering is to impart knowledge and practical
expertise to empower students with new technologies in the field of Computer Engineering.
This course has been designed to include specialized fields for the current and futuristic
demands of the IT industry. Apart from IT skills, students will get multiple opportunities to
enhance their personalities and focus to handle life challenges smoothly and practice good
hobbies.

Program Outcome

● To develop skilled computer engineering professionals with innovative attitude


● Students will have great and long vision careers in computer engineering fields or will
be able to successfully pursue advanced degrees
● To inculcate mindset towards Entrepreneur

a. Technical Knowledge/Skills: HTML, JavaScript, PHP, XML, Flutter, AJAX, Python.


b. Software Skill and Project Skills: Programming skills & Software management Skills
in PHP, Android, .NET, Cloud, Java, Advance Java Programming, and MySQL.
c. Personality Traits and Ethics: Assertiveness, Good attitude, Compassionate,
Patience, Punctuality, and Sincerity
d. Soft Skills: Flexibility and adaptability, work ethics, Responsibility, Good Verbal,
written and communication skills, and Interpersonal Skills.
Credit Scheme

Semester III

Hours/week
S. Course Total
Course Titles
No. Code Credits
L T P

1 FW-DP033 Face The World Skills III (SEL) 1 0 0 1

2 HS-023 English Communication III 1 0 0 1

3 HS-MC041 Indian Constitution (MOOC) 0 0 0 1

4 HS-011 Environmental Studies 1 0 0 1

5 CS-PC301 Computer Organisation 3 1 0 4

6 CS-PC302 Data Structure using C 3 1 2 5

7 CS-PC303 Operating System 3 1 2 5

8 CS-MC301 MOOC 0 0 0 2

Industrial Training I/Industrial


9 CS-IE301 0 0 4 2
Visit Project

TOTAL 12 0 8 22
SEMESTER III

32
Data structure Using C
Semester 3
Course Code: CS-PC302
Course Title: Data Structure using C
Total Credits: 5.5
Pre-requisites Knowledge of C Programming language

Rationale

Data structures are the techniques of designing the basic algorithms for real-life
projects. Understanding of data structures is essential and this facilitates the understanding
of the language. The practice and assimilation of data structure techniques is essential for
programming. The knowledge of ‘C’ language and data structures will be reinforced by
practical exercises during the course of study. The course will help students to develop the
capability of selecting a particular data structure. The course is designed to develop skills to
design and analyse simple linear and nonlinear data structures. It strengthens the ability of
the students to identify and apply the suitable data structure for the given real-world problem.
It enables them to gain knowledge in practical applications of data structures

Course Objective
The course objective is to provide a strong foundation for implementing C programs to
formulate, analyse, and develop solutions related to various data structures problems.

Learning Outcome

After undergoing the subject, the students will be able to:


● Define Linear and non-linear data structures.
● List and discuss the different types of linear data structures.
● Differentiate Stack and Queue
● Understand the Operations of Stack
● Explain the applications of stack
● Explain Linked lists and its implementation
● Define a tree and the different terms related to trees.
● Describe the different ways of traversing a binary tree.
● Discuss the various operations on the Binary Search tree.
● Write the algorithm for different types of sorting.
● Write the algorithm for different types of searching.

23
Course Content

Unit Title Hours


Problem solving Top down and bottom-up design, Structured programming & 2
concepts Debugging technique, Program testing to documentation,
Consideration for choice of data structure,
Concepts of Concept of data type and data structures, Difference between 4
Data type, Data data type and data structures, View of data structure at logical
structure, and level, implementation level, application level, Built in data
Algorithms structures and User defined data structures and their
difference, Basics of algorithm, Introduction to Time and
Space complexity of algorithms
Linear Data Characteristics of Array, Storage strategies of 1D, 2D, and 4
Structures- multi-dimensional arrays, Operations on arrays with
Arrays algorithms (searching, traversing, inserting, deleting), Pointer
and Arrays,
Pointers and Two-Dimensional Arrays
Linked Lists Terminologies: Node, Address, Information, Null Pointer, 8
Empty list.
Type of lists: Singly linked list, Doubly linked list, Circular
linked list, Representation of Singly linked lists in Memory,
Difference between Linked & Sequential list, Advantages and
Disadvantages of Linked list.
Implementation of various operations on different types of
linked lists: Traversal, Search, Insertion, and Deletion
operations on Single, Double, and Circular linked lists.
Stacks Stack: Definition and examples, Stack operations, Polish 4
Notations, Representation of stacks using Arrays and Linked
list, Application of Stacks
Queues Queues: Definitions and examples, Queues operation, 4
Representation of queues using Array and Linked list
Application of queues and dequeue (concepts only).
Non-linear Data Trees, Terminology of trees, Types of trees, Concepts and 7
structures- application of Binary trees, Representation of Binary trees
Trees using Array and Linked List, Tree traversal technique and
algorithms, Concept of Binary Search Tree, Implementation of
various operations on Binary Search Tree (Search, Insertion,
and Deletion of a node from a binary tree)
Searching and Searching techniques-Sequential search and Binary search. 6
Sorting Sorting techniques: Insertion sort, Selection sort, Bubble sort,
and Merge sort
List of Practical

Note: The required list of Experiments is provided as under. The examples cited here are
purely indicative and not exhaustive. Attempts shall be made to perform all experiments.
However, at least 8 experiments should be done in the semester. More experiments may be
designed by the respective institutes as per their choice.

1. Program on mathematical operations on 1D and 2D arrays (addition, subtraction,


multiplication, transpose, operation on diagonal elements etc.)
2. Programs on arrays for insertion, deletion, and searching.
3. Programs on operation of Linear linked list.
4. Programs on operations of Circular linked list.
5. Programs on operation of Doubly linked list.
6. Programs on implementation of Stack as an array as well as pointers.
7. Programs on implementation of Queues as an array as well as pointers.
8. Programs on trees such as Binary trees, insertion, deletion and searching in binary
trees.
9. Programs on tree traversal algorithm pre-order, in-order and post-order.
10. Programs on Linear search.
11. Programs on Binary search.
12. Programs on various sorting techniques - Selection sort, Bubble sort, Merge sort,
Insertion sort etc.

Teaching Approach

Teachers should stress on explaining all the techniques and algorithms in detail in theory
sessions. The students should be asked to convert their ideas about a problem into an
algorithm in theory class and implement it in practical class. This will help the students to
have clear concepts of programming.

Text Book

1. Data Structures with C (Schaum's Outline Series) by Seymour Lipschutz, McGraw Hill
Education

Reference Books

1. Data Structures Using C by Tanenbaum, Pearson Education India


2. Data Structures Using C by Balagurusamy, McGraw Hill Education
3. Data Structure Through C by Yashavant P. Kanetkar, BPB Publication

Open Source/Online Resources


http://swayam.gov.in

25
Operating System
Semester 3
Course Code: CS-PC303
Course Title: Operating System
Total Credits: 5.5
Pre-requisites: Knowledge of Computer Concepts and Introduction to
Microprocessor

Rationale:

The course provides the students with an understanding of the human computer interface
existing in computer systems and the basic concepts of operating system and its working.
The students will also get hands-on experience and good working knowledge to work in
windows and Linux environments. The aim is to gain proficiency in using various operating
systems after undergoing this course. While imparting instructions, the teachers are
expected to lay more emphasis on concepts and principles of operating systems, its
features and practical utility.

Course Objective:
To provide strong concepts and knowledge of the Operating System and its working. To
impart knowledge of detailed features, functionality, and operations of an operating system.

Learning Outcome:

After undergoing the subject, the students will be able to:


● Describe various types and services of operating system
● Identify the concept of process, various states in the process and their
scheduling.
● Classify different types of schedulers and scheduling algorithms.
● Understand the significance of inter-process communication and
synchronization.
● Describe deadlock and various ways to recover from deadlock
● Understand memory management techniques
● Describe virtual memory and its underlying concepts.
● Describe the features and brief history of Linux.

Course Content:

Unit Title Hours


Overview of Definition of Operating Systems, Need of Operating System, 8
Operating Types of Operating Systems, Concepts of Compiler, Assembler,
Systems Linker, and Loader, Operating System Services, Operating
System as resource manager, Operating system classifications:
Single user, Multi-user, Batch-processing, Time-sharing,
Real-time, Multi processing, Distributed operating system,
Network operating system. User and operating system interface,
System Calls, Types of System Calls, Operating System
Structure, Introduction to Virtual Machine, Benefits of Virtual
Machine

Process Process concept, Process State, Process Control Block, 7


Management Scheduler and its types, Context Switch, Operations on
Processes, Inter-process Communication, Shared Memory
Systems, Message Passing Systems, CPU Scheduler,
Scheduling Criteria, Scheduling Algorithms, Pre-emptive and
Non pre-emptive, First come first serve (FCFS), Shortest Job
first (SJF), Round Robin (RR), Levels of scheduling,
Multiprocessor scheduling, Process Synchronization.

Deadlocks Deadlock, Conditions for Deadlock, Methods for handling 6


deadlocks, Dead Prevention, Deadlock Avoidance, Banker’s
Algorithm, Deadlock detection, Recovery from deadlock.

Memory Definition – Logical and Physical address Space, Swapping, 8


Management Memory allocation, Contiguous Memory allocation, Fixed and
variable partition, Internal and External fragmentation and
Compaction, Memory Allocation: Allocation Strategies (First Fit,
Best Fit, and Worst Fit), Fragmentation, Swapping, and Paging,
Segmentation, Demand paging.
Virtual Memory: Concepts, Management of VM, Page
Replacement Algorithms (FIFO, LRU, Optimal), Thrashing.

Device Dedicated Devices, Shared Devices, I/O Devices, Storage 5


Management Devices, Buffering, Spooling, Disk Scheduling (FCFS, SCAN,
and Disk C-SCAN, SSTF), RAID, Disk Cache.
Scheduling

File File supports, access methods, contiguous, linked and indexed 5


Management allocation, directory systems, single level, two levels, tree
structure, graph directory system and file protection

List of Practical
Note: The required list of Experiments is provided as under. The examples cited here are
purely indicative and not exhaustive. Attempts shall be made to perform all experiments.
However, at least 8 experiments should be done in the semester. More experiments may be
designed by the respective institutes as per their choice.

1. Demonstration of controls provided in windows control panel


2. Internal and External DOS Commands
3. Creating batch file for various operations of DOS commands
4. Preparation of boot-able disk
5. Installation of Window Operating System and partitioning of Hard disk
6. Installation of Linux Operating System
7. Execution of various Linux Commands

27
8. Hands on practice of vi editor
9. Write Shell Script for the followings:
a. To display list of students using echo command
b. To change date and time of the system
c. To concatenate two or multiple strings
d. To concatenate two or multiple files
e. To perform basic mathematical operations
10. Write a program to implement FCFS algorithm in C language.
11. Write a program to implement Round Robin technique in C language.
12. Write a program to calculate the logical address from the physical memory
address.
13. Study of two operating systems and their comparison.

Teaching Approach

This subject is both theory and practical oriental. Therefore, stress must be given on
particulars along with theory. Laboratory must have windows as well as Linux operating
systems. Concepts of Operating Systems must be taught practically.

Textbook
1. Operating Systems Concepts by Silberschatz Abraham, Peter B Galvin, and Greg
Gagne, Wiley India Pvt. Ltd

Reference Books
1. Operating Systems Design and Implementation by Andrew S Tanenbaum and Albert S
Woodhull, Pearson
2. Operating Systems by Achyut Godbole and Atul Kahate, McGraw Hill Education
3. Operating Systems: A Concept-Based Approach by Dhananjay Dhamdhere, McGraw
Hill Education

Open Source/Online Resources


http://swayam.gov.in
Computer Organisation

Semester 3
Course Code: CS-PC301
Course Title: Computer Organisation
Total Credits: 4
Pre-requisites: Knowledge of Computer Concepts and Introduction to
Microprocessor

Rationale

The accelerated growth of Computing Technologies and applications in the world requires
students to understand the principles of computer systems. The understanding of basic
computer architecture is mandatory to understand the functioning of a computer system and
students need to learn it.

Course Objective

After reading this subject, students will be familiar with the architecture and hardware of
computer systems. The students will learn about the organisation of different units in a
computer system.

Learning Outcome

1. To learn the basic structure and operation of a Computer.


2. To learn the arithmetic and logic unit and implementation of fixed – point and floating
point arithmetic units.
3. To understand CISC and RISC characteristics.
4. To understand control unit organisation
5. To understand Computer memory systems.
6. To learn computer input and output systems.
7. To learn the basics of pipelined execution.

Course Content

Unit Title Hours


Hardware A brief introduction to computer organization and architecture, 7
Organisation Register transfer language (Micro-operation), Bus and memory
of computer transfer, Design of arithmetic and logic unit, General register
system organization, Stack organization, Instruction formats, Addressing
modes, Data Transfer and manipulation, Study of CISC and RISC
characteristics along with its comparison.
Elementary Concept of fixed and float number and their representation, Fixed 6
Arithmetic point Addition, Subtraction and Multiplication. Floating point
Operation addition and Subtraction

Control Unit Concept of Hardwired and Micro Instruction based Control Units, 7
Organization Principles of instruction decoding and implementation, Horizontal
and vertical classes of micro instructions, Identifying

29
micro-instructions, Minimising micro-instruction size, Parallelism in
micro-instructions, Timing cycles and Clock generation.
Computer Memory Hierarchy, Main Memory, Auxiliary memory, Virtual 7
Memory memory, Paging and Segmentation, Associative memory, Cache
System memory and its mapping techniques

Input and I/O interface, Memory mapped and I/O mapped, Modes of Data 7
Output transfer - Polled, Interrupt and DMA, Multiple I/O - Daisy Chaining,
System Polling and Parallel Priority Control, I/O processor, CPU-IOP
Communication
Introduction Introduction to parallel processing, Flynn’s classification, Array 6
to Parallel processors, Pipeline processing, Instruction pipeline, Pipeline
Processing hazards, Basic characteristics of multiprocessor systems

Textbook
1. Computer System Architecture by M. Morris Mano, Pearson Education India.

Reference Books
1. Computer Organization and Architecture: Designing for Performance by William
Stallings, Pearson
2. Computer Architecture and Organization by John P. Hayes, McGraw Hill Education
3. Structured Computer Organization by Tanenbaum, Pearson Education India

CS-SI301- Industrial Visit Guidelines


1. Students have to undertake a minimum two industrial visits.
2. The faculty members allocated for industrial visits shall accompany the respective
students during industrial visits.
3. On completion of industrial visits, students have to submit a detailed project report.
Students will also implement some application or a part of application of the industrial
exposure in a group of 1-3 students, under the guidance of allocated faculty
members.
4. For guidance purposes, the entire class will be divided in two batches and each
batch will be guided and evaluated by one -faculty member.
5. Final evaluation shall be based on project report, implementation, and viva.
6. The project guidance and evaluation by the allotted faculty member can be in hybrid
mode.
7. Teaching load of four hours per week (2 credits) shall be allocated for industrial visits,
guidance, and evaluation purposes.

You might also like