INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) DUNDIGAL, HYDERABAD

Similar documents
UNIT I Linux Utilities

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

UNIT I Linux Utilities and Working with Bash

INSTITUTE OF AERONAUTICAL ENGINEERING Dundigal, Hyderabad INFORMATION TECHNOLOGY COURSE DESCRIPTION FORM

INSTITUTE OF AERONAUTICAL ENGINEERING

MLR Institute of Technology

G. PULLAIAH COLLEGE OF ENGINEERING AND TECHNOLOGY Pasupula, Nandikotkur Road, Kurnool

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

INSTITUTE OF AERONAUTICAL ENGINEERING (AUTONOMOUS) Dundigal, Hyderabad

INSTITUTE OF AERONAUTICAL ENGINEERING Autonomous Dundigal, Hyderabad

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

COURSE DESCRIPTION FORM. Level Credits Periods/ Week Prerequisites

INSTITUTE OF AERONAUTICAL ENGINEERING

University of Asia Pacific (UAP) Department of Computer Science and Engineering (CSE)

INSTITUTE OF AERONAUTICAL ENGINEERING Dundigal, Hyderabad

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous)

St. MARTIN s ENGINERING COLLEGE Dhulapally,Secunderabad

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

University of Asia Pacific (UAP) Department of Computer Science and Engineering (CSE)

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

St. MARTIN S ENGINEERING COLLEGE Dhulapally,Secunderabad DEPARTMENT OF INFORMATION TECHNOLOGY Academic year

G.PULLAIH COLLEGE OF ENGINEERING & TECHNOLOGY

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

KLS s Gogte Institute of Technology, Udyambag, Belagavi. CLO 1: To provide introduction to UNIX Operating System and its File System

University of Asia Pacific (UAP) Department of Electrical and Electronics Engineering (EEE) Course Outline

University of Asia Pacific (UAP) Department of Computer Science and Engineering (CSE) Course Outline

CHALAPATHI INSTITUTE OF ENGINEERING & TECHNOLOGY

B.E Civil Engineering Program Outcomes (POs) At the end of the B.E program, students are expected to have developed the following outcomes.

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

COURSE OUTCOMES AND PROGRAM OUTCOMES

CL020 - Advanced Linux and UNIX Programming

Advanced Programming in the UNIX Environment W. Richard Stevens

INSTITUTE OF AERONAUTICAL ENGINEERING

COURSE PLAN Regulation: R11 FACULTY DETAILS: Department::

MLR Institute of Technology

DEPARTMENT OF INSTRUMENTATION AND CONTROL ENGINEERING VISION

G.PULLAIAH COLLEGE OF ENGINEERING AND TECHNOLOGY

Course Contents/Syllabus: Weightage (%) Module I: Introduction to operating system: 15

Department of Computer Science and Technology

On successful completion of the course, the students will be able to attain CO: Experiment linked. 2 to 4. 5 to 8. 9 to 12.

BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, Pilani Pilani Campus Instruction Division

CSET 3400 Unix System Administration (3 semester credit hours) IT Elective

Processor : Intel Pentium D3.0 GigaHtz

3.4.3 Bachelor of Technology (Electronics Engineering)

PROGRAMME: COMPUTER SCIENCE & ENGINEERING COURSE: Operating System Lab SEMESTER: VI CREDITS: 2

Undergraduate Program for Specialty of Software Engineering

Academic Course Description

G COURSE PLAN ASSISTANT PROFESSOR Regulation: R13 FACULTY DETAILS: Department::

Introduction to Software Engineering: The evolving role of software, Changing Nature of Software, Software myths.

Teaching and Examination Scheme: PAPER HRS TH TU PR TH PR OR TW TOTAL

School of Computing and Information Sciences

LINUX INTERNALS & NETWORKING Weekend Workshop

Curriculum Scheme. Dr. Ambedkar Institute of Technology, Bengaluru-56 (An Autonomous Institute, Affiliated to V T U, Belagavi)

Academic Course Description

CSET 4150 Web System Administration (3 semester credit hours) IT Required

II/IV B.Tech. DEGREE EXAMINATIONS, NOV/DEC-2017

Academic Course Description

STORAGE AREA NETWORKS COURSE PLAN. BIJAYA KUMAR BISWAL Assistant Professor, CSE

Noorul Islam College Of Engineering, Kumaracoil MCA Degree Model Examination (October 2007) 5 th Semester MC1642 UNIX Internals 2 mark Questions

Student Name:.. Student ID... Course Code: CSC 227 Course Title: Semester: Fall Exercises Cover Sheet:

Part A: Course Outline

ASSIUT UNIVERSITY. Faculty of Computers and Information Department of Information Technology. on Technology. IT PH.D. Program.

ERIE COMMUNITY COLLEGE COURSE OUTLINE. DA155 Operating Systems and Shell Scripting

CTP203 Operating Systems Syllabus

Academic Course Description

CSC209 Review. Yeah! We made it!

CSC 280 Operating System Principles

KALASALINGAM UNIVERSITY (Kalasalingam Academy of Research and Education) KRISNANKOIL Academic Year [Odd Semester]

2. UDP Client, UDP Server

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

Community Enterprise Operating System (CentOS 7) Courses

Name of chapter & details

ASSIUT UNIVERSITY. Faculty of Computers and Information Department of Information Systems. IS Ph.D. Program. Page 0

Academic Course Description

Study Scheme & Syllabus Of B.Tech Production Engineering 2014 onwards

CSE 410: Systems Programming

Proposed syllabus for

CSC209: Software tools. Unix files and directories permissions utilities/commands Shell programming quoting wild cards files

CSC209: Software tools. Unix files and directories permissions utilities/commands Shell programming quoting wild cards files. Compiler vs.

Course Outline. TERM EFFECTIVE: Fall 2016 CURRICULUM APPROVAL DATE: 11/23/2015

Institute of Engineering & Management. Course:CS603- Operating System. Course pre-requisites

VALLIAMMAI ENGINEERING COLLEGE. SRM Nagar, Kattankulathur QUESTION BANK

Unix API Books. Linux Kernel Books. Assignments and Exams. Grading for CSC 256. Operating Systems 8/31/2018. CSC 256/456 Fall

SYLLABUS. Departmental Syllabus. Linux and Windows Practical Server. Departmental Syllabus. Departmental Syllabus. Departmental Syllabus

SYLLABUS. Departmental Syllabus. Modern Publication Design JOUR0180. Departmental Syllabus. Departmental Syllabus. Departmental Syllabus

COURSE PLAN. Regulation: R12. FACULTY DETAILS: Name of the Faculty:: B.VIJAY KUMAR Designation: Assistant Professor Department:: IT

JBIET. Dept of IT. Operating Systems III B.Tech -I Sem. Department of Information Technology

Washington State University School of EECS Computer Science Course Assessment Report

Academic Course Description

VALLIAMMAI ENGINEERING COLLEGE

CSC 256/456: Operating Systems. Introduction. John Criswell! University of Rochester

Operating System Design

Software Development & Education Center

Here to take you beyond. ECEP Course syllabus. Emertxe Information Technologies ECEP course syllabus

CS 375 UNIX System Programming Spring 2014 Syllabus

B.TECH(COMPUTER) Will be equipped with sound knowledge of mathematics, science and technology useful to build complex computer engineering solutions.

File System User API

Transcription:

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) DUNDIGAL, HYDERABAD -500 043 Course Title Course Code Regulation COMPUTER SCIENCE AND ENGINEERING COURSE DESCRIPTION FORM LINUX PROGRAMMING A70511 R13 Course Structure Lectures Tutorials Practicals Credits Course Coordinator Team of Instructors 4 1 3 4 Dr. R.ObulaKonda Reddy, Professor, CSE Ms. K. Radhika, Associate Professor, CSE Mr. D Abdulla, Assistant Professor, CSE I. COURSE OVERVIEW: The main objective of this course is to present the fundamental ideas behind the Linux operating system. Explores fundamental relationship between principles of Linux file system and Linux system calls, Implement extensive scripting techniques with the BASH Shell and advanced Programming Languages. Designing and developing client server applications in Linux using major methods of Inter Process (IPC) and concurrent programming, it also emphasizes files, process and signals. Provides extensive implementation skills in multithread based socket programming. II. PREREQUISITES: Level Credits Periods / Week Prerequisites UG 4 5 Computer Programming, Computer Networks III. MARKS DISTRIBUTION: Sessional Marks University End Total Exam marks marks There shall be 2 midterm examinations. Each midterm examination consists of subjective test. The subjective test is for 20 marks, with duration of 2 hours. Subjective test of each semester shall contain 5 one mark compulsory questions in part-a and part-b contains 5 questions, the student has to answer 3 questions, each carrying 5 marks. First midterm examination shall be conducted for the first two and half units 75 100 of syllabus and second midterm examination shall be conducted for the remaining position. Five marks are earmarked for assignments. There shall be two assignments in every theory course. Marks shall be awarded considering the average of two assignments in each course. Five marks are earmarked for assignments. There shall be two assignments 1 P a g e

IV. EVALUATION SCHEME: S. No Component Duration Marks 1 I Mid Examination 80 minutes 20 2 I Assignment - 05 3 II Mid Examination 80 minutes 20 4 II Assignment - 05 5 External Examination 3 hours 75 V. COURSE OBJECTIVES: I. Understand genesis and diversity of Both Linux and Unix System utilities. II. Demonstrate shell scripts in Bourne shell Environment III. Understand the basics of Kernel support for process and user level process. IV. Demonstrate File Systems, Signal generation and handling. V. Understand Inter Process Communication (IPC) and distinguish different concurrent mechanisms. VI. Demonstrate hands-on experience to implement multitasking with TCP/UDP socket system calls VI. COURSE OUTCOMES: 1. Identify and use Linux utilities to create and manage simple file processing operations, 2. Develop shell scripts to perform more complex tasks. 3. Illustrate file processing operations such as standard I/O and formatted I/O. 4. Generalize Signal generation and handling signals. 5. Develop client server Inter Process Communication (IPC) Mechanisms. 6. Illustrate multithreading concepts to reduce the wastage of CPU time. 7. Demonstrate various concurrent technologies using System V Shared Memory and Semaphores 8. Design and implement IPCs using unnamed and named Pipes. 9. Demonstrate various client server applications using TCP or UDP protocols. 10. Illustrate client server applications with appropriate security. 11. Design and implement system-level applications for open-source operating systems. 12. Design custom based network applications using the Sockets Interface in heterogeneous platforms 2 P a g e

VII. HOW PROGRAM OUTCOMES ARE ASSESSED: Program Outcomes Level Proficienc y assessed PO1 Engineering knowledge: Apply the knowledge of mathematics, Assignments science, engineering fundamentals, and an engineering specialization H, Tutorials to the solution of complex engineering problems. PO2 Problem analysis: Identify, formulate, review research literature, and analyze complex engineering problems reaching substantiated conclusions using first principles of mathematics, natural sciences, and H Assignments engineering sciences. PO3 Design/development of solutions: Design solutions for complex engineering problems and design system components or processes that meet the specified needs with appropriate consideration for the public S Mini health and safety, and the cultural, societal, and environmental Projects considerations. PO4 Conduct investigations of complex problems: Use research-based knowledge and research methods including design of experiments, analysis and interpretation of data, and synthesis of the information to S Projects provide valid conclusions. PO5 Modern tool usage: Create, select, and apply appropriate techniques, resources, and modern engineering and IT tools including prediction S Mini and modeling to complex engineering activities with an understanding Projects of the limitations. PO6 The engineer and society: Apply reasoning informed by the contextual knowledge to assess societal, health, safety, legal and cultural issues and the consequent responsibilities relevant to the S -- professional engineering practice. PO7 Environment and sustainability: Understand the impact of the professional engineering solutions in societal and environmental contexts, and demonstrate the knowledge of, and need for sustainable N -- development. PO8 Ethics: Apply ethical principles and commit to professional ethics and responsibilities and norms of the engineering practice. N -- PO9 Individual and team work: Function effectively as an individual, and as a member or leader in diverse teams, and in multidisciplinary N -- settings. PO10 Communication: Communicate effectively on complex engineering activities with the engineering community and with society at large, such as, being able to comprehend and write effective reports and H Mini design documentation, make effective presentations, and give and Projects receive clear instructions. PO11 Project management and finance: Demonstrate knowledge and understanding of the engineering and management principles and apply these to one s own work, as a member and leader in a team, to S Projects manage projects and in multidisciplinary environments. PO12 Life-long learning: Recognize the need for, and have the preparation and ability to engage in independent and life-long learning in the S Projects broadest context of technological change. N - None S - Supportive H - Highly Related 3 P a g e

VIII. HOW PROGRAM SPECIFIC OUTCOMES ARE ASSESSED: PSO1 PSO2 PSO3 Program Specific Outcomes Professional Skills: The ability to research, understand and implement computer programs in the areas related to algorithms, system software, multimedia, web design, big data analytics, and networking for efficient analysis and design of computer-based systems of varying complexity. Problem-solving Skills: The ability to apply standard practices and strategies in software project development using open-ended programming environments to deliver a quality product for business success. Successful Career and Entrepreneurship: The ability to employ modern computer languages, environments, and platforms in creating innovative career paths, to be an entrepreneur, and a zest for higher studies. Level H H S Proficien cy Lectures, Assignme nts Projects Gues t Lectur N - None S - Supportive H - Highly Related IX. SYLLABUS: 5 P a g e UNIT I: Linux Utilities: File handling utilities, Security by file permissions, Process utilities, Disk utilities, Networking commands, Filters, Text processing utilities and Backup utilities, sed scripts, operation, addresses, commands, applications, awk execution, fields and records, scripts, operation, patterns, actions, Associative Arrays,String and Mathematical functions, system commands in awk, Applications. Shell Programming with Bourne again shell(bash): Introduction, shell responsibilities, pipes and Redirection, here documents, running a shell script, the shell as a programming language, shell meta characters, file name substitution, shell variables, command substitution, shell commands, the environment, quoting, test command, control structures, arithmetic in shell, shell script examples, interrupt processing, functions, debugging shell scripts. UNIT II: Files and Directories: File Concept, File System Structure, File metadata- Inodes, kernel support for files, System calls, Kernel support for files, System calls for File I/O Operations- open, creat, read, write, close, lseek, dup2file, filestatus information- stat family, File and record locking-fcntl function, File permissionschmod,fchmod, file ownership-chown, lchown, fchown, links- softlinks and hardlinks-symlink, Link,Unlink Directories: Creating, removing and changing directories- mkdir, rmdir, chdir, obtaining current working directory-getcwd, Directory contents, Scanning Directories- Opendir, readdir, closedir, rewinddir functions UNIT III: Process: Process concept, Layout of a C program image in main memory, Process environment list, environment variables, getenv, setenv, Kernel support for process, process identification. process control - process creation, replacing a process image, waiting for a process, process termination, zombie process, orphan process, System call interface for Process management- fork, vfork, exit, wait, waitpid, exec family, Process groups, Sessions and controlling Terminal, diff b/n threads and process Signals: Introduction to signals, Signal generation and handling, Kernel support for signals, Signal function, unreliable signals, reliable signals, kill, raise, alarm, pause, abort, sleep functions.

UNIT IV: Inter process Communication: Introduction to IPC, IPC between processes on a single computer system, IPC between processes on different systems. Pipes- creation, IPC between related processes using unnamed pipes, FIFOs-creation, IPC between unrelated processes using FIFOs (Named pipes), difference between unnamed and named pipes, pope n and pclose library functions. Message Queues: Kernel support for messages, APIs for message queues, client/server example. Semaphores: Kernel support for semaphores, APIs for semaphores. file locking with semaphores. UNIT V: Shared Memory: Kernel support for shared memory, APIs for shared memory, shared memory example. Sockets Introduction to Berkeley Sockets, IPC over a network, Client-Server model, Socket address structures (Unix domain and internet domain), Socket system calls for connection oriented protocol and connectionless protocol, example-client/server programs-single Server-Client connection, Multiple simultaneous Clients, Socket options-stockpot and fcntl system calls, Comparison of IPC mechanisms. Text Books: 1. T.Chan, UNIX System Programming using C++, PHI. 2. Sumitabha Das, UNIX Concepts and Applications, 4e, TMH, 2006. 3. N.Matthew, R.Stones, Wrox, Beginning Linux Programming, 4e, Wiley India Edition. References: 1. Robert Love, Linux System Programming, O Reilly. 2. W.R.Stevens, UNIX Network Programming, PHI. 3. Graham Glass, King Ables, UNIX for programmers and users, 3e, Pearson Education, 2003. 4. W.R.Stevens, Advanced Programming in the Unix environment, 2e, PHI, Pearson Education. 5. A.Hoover, System Programming with C and UNIX, Pearson. 6. Kumar Saurabh, Unix Programming, 1e, Wiley India pvt Ltd. 7. B.A.Forouzan and R.F.Gilberg, UNIX and Shell programming, Cengage Learning. X. COURSE PLAN: 6 P a g e At the end of the course, the students are able to achieve the following course learning outcomes: Lecture Topics to be covered Course Learning Outcomes Reference No. 1-2 A brief history of Linux, architecture of Linux, features of Linux Understand history of Linux and its features T2: 1.1, 2.1-2.2 3-4 Linux utilities-file handling utilities, Use system level scripts to create T2: 4.7-4.8, Security by file permissions and manage simple file 5.3-5.4 processing operations. 5-6 Process utilities, disk utilities, Illustrate manipulating of T2: 3.10,15.6, Networking commands, Filters information. 17.5-17.6 7-8 Text processing utilities, Backup Understand restoring and T2: 12.3-12.9 utilities retrieving text. 15.9-15.10 9 sed scripts, operation, addresses, Understand two data buffers: the T2: 13.4 commands, applications active pattern space. 10-11 awk execution, fields and records, Demonstrate pattern scanning scripts, operation, patterns, actions, and processing in problem T2: 18.1-

7 P a g e Lecture Topics to be covered Course Learning Outcomes Reference No. Functions, using system commands in solving. 18.12 awk. 12-13 Working with the Bourne again Understand basic shell scripting. shell(bash): introduction, shell T2: 8.5 responsibilities, pipes and input Redirection, output redirection 14 Documents, running a shell script Understand shell script T2: 14.14 execution. 15 The shell as a programming language, Classify use special characters. shell meta characters, file name T2: 8.9 substitution Shell command substitution, shell Illustrate forwarding the 16-17 commands, environment, quoting, test command output into another T2: 8.4, 8.10 command, control structures context 18-19 Arithmetic in shell, shell script Develop solutions to complex T2: 14.5- examples, interrupt processing, tasks. 14.17 functions, debugging shell scripts. 20 Files: File Concept, file system Demonstrate the use of the R4: 4.1-4.14 structure, Inodes, file attributes, file formatting specifiers of io. types, library functions 21-22 The standard I/O (fopen, fclose, Demonstrate standard stream fflush, fseek, fgetc, getc, getchar, and buffer based input and output R4: 5.1-5.9 fputc, putc, putchar, fgets, gets etc.) system calls. 23 Formatted I/O, stream errors, kernel Demonstrate layout of what's R4: 5.10-5.11 support for files being printed. 24-25 File descriptors,low level file access Demonstrate modification and R4: 3.1-3.12, open,create,read,write,close,lseek,stat editing. 4.2 family,umask,dup,dup2 26-27 fcntl, file and record locking Demonstrate security concepts R4: 3.13 in files. 28 File and directory management- Discuss scanning and linking R4: 4.20-4.22, Directory file APIs, symbolic links methods. 4.15-4.17 and hard links. 29-31 Process kernel support for process, Understand internal procedures process attributes, process hierarchy, and states of IPC R4: 8.1-8.9 process states, process composition, process creation and termination 32-33 Zombie process, orphan process. Illustrate daemons and varieties. R4: 8.6 34 Signals Introduction to signals, Classify processes to respond to Signal generation and handling, Kernel asynchronous events. R4: 10.1-10.3 support for signals, Signal function. 35-36 Unreliable signals, reliable signals, Understand and to handle R4: 10.4- kill, raise, alarm, Pause, abort, and exceptional situations. 10.19 sleep functions. 37-38 Interprocess Communication: Demonstrate inter related Introduction to IPC, IPC between process communication processes on a single computer system, R4: 14.1-14.4 IPC between processes on different systems, pipes.

Lecture Topics to be covered Course Learning Outcomes Reference No. 39 FIFOs and examples. Demonstrate named pipes. R4: 14.5 40 Introduction to three types of IPC Discuss types of restricting and (Linux)-message queues, semaphores accessing different resources. R4: 14.6 and shared memory. 41-43 Message Queues- Kernel support for Demonstrate dividing up work messages, Linux APIs for messages, among to balance work over R4: 14.7 Client/server example. multiple processes. 44 Semaphores- Kernel support for Demonstrate user variables and semaphores semaphore operations, provided R4: 14.8 at the kernel level. 45-46 File locking with semaphores. Linux Solve security hurdles using R4: 14.8 APIs for semaphores programming interface of Linux 47 Shared Memory- Kernel support for Demonstrate common memory R4: 14.9 shared memory portion which other processes 48-49 Linux APIs for shared memory, Illustrate common memory R4: 14.9 semaphore and shared memory sharing interfacing example. 50-51 Multithreaded Programming Demonstrate parallelism in Differences between threads and Linux based system calls. T1: 13.1-13.2 processes, thread structure and uses, threads and lightweight Processes. 52 POSIX Thread APIs, Creating Threads Demonstrate concurrency in T1: 13.4 thread attributes Linux APIs. 53-54 Thread synchronization with Demonstrate multiple semaphores processes to a common resource in Linux based parallel 55-57 Thread synchronization with mutexes, Demonstrate multiple threads example programs access the same resource for read and write. T1: 13.5 T1: 13.5 58 Sockets: introduction to sockets Understand end to end network R2: 15.1 communication 59-60 Socket system calls for connection Understand tcp based system R2: 15.5 oriented protocol calls 61-62 Connectionless protocol Understand udp protocol system R2: 15.5 calls 63-64 Example-client/server programs Demonstrate connection oriented, connectionless R2: 15.5 communications in two and three 8 P a g e

XI. MAPPING COURSE OBJECTIVES LEADING TO THE ACHIEVEMENT OF PROGRAM OUTCOMES AND PROGRAM SPECIFIC OUTCOMES: Course Program Outcomes Program Specific Outcomes Objectives PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3 I H H S S H S II S H S H S S S III H H S S H H H S IV S S S S H V H S S S S S VI S H S H H H H VII S H S H H S H H S S - Supportive H - Highly Related XII. MAPPING COURSE OUTCOMES LEADING TO THE ACHIEVEMENT OF PROGRAM OUTCOMES AND PROGRAM SPECIFIC OUTCOMES: Course Program Outcomes Program Specific Outcomes Outcomes PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3 1 H S H S S H 2 H S S S S S S 3 H H H S 4 S S H H H H S 5 S S S H 6 S H S H H H S 7 H H H H 8 S H H H S S 9 H S S S H S H 10 H S H S H H S 11 H S S H H S 12 H H S S S S H H S - Supportive H - Highly Related Prepared by : Dr. R.ObulaKonda Reddy, Professor HOD, COMPUTER SCIENCE AND ENGINEERING 8 P a g e