OPERATING SYSTEMS & SHELL PROGRAMMING

Paper Code: 
CDBA 416
Credits: 
3
Periods/week: 
3
Max. Marks: 
100.00
Objective: 

The course will enable the students to

  1. Understand basic concepts of Operating systems. followed by study of Linux.
  2. Work with basic commands of Linux

     Course Outcomes (COs).

Course Outcome (at course level)

 

Learning and teaching strategies

Assessment Strategies

On completion of this course, the students will:

CO191. Explain the fundamental concepts and working Process of Operating System.

CO192. Explain the architecture of Linux operating system and the reason for open source.

CO193. Execute the basic commands of Linux to manage files and file system

CO194. Demonstrate the concepts of redirection, pipes and filters in Linux.

CO195. Write, debug and execute simple shell  scripts.

Approach in teaching: Interactive       Lectures, Discussion,     Tutorials, Reading    assignments, Demonstration, Learning activities for the  students:               Self learning           assignments, Effective                  questions, Simulation,       Seminar presentation,       Giving tasks.

Class test, Semester end      examinations, Quiz,             Solving problems                 in tutorials, Assignments, Presentation, Individual and group projects .

 

  • Introduction to Operating Systems, history, functions and types of operating system.
  • Process Management: Basic Concepts of process and Process Scheduling, Operation on Processes.
  • Memory Management: Basic Concepts of Logical versus Physical Address space, Swapping, Contiguous allocation (fragmentation), Paging, Segmentation.
  • Linux GUI, Logging in, Desktop Customization.
  • General Purpose Utilities in Linux (date, cal, who, tty, uname, passwd, bc, script, echo, logging out).
  • Linux File System: file types, file inode, Home directory and Current directory
  • Navigating file system- pwd, cd, mkdir, rmdir,ls.
  • Handling ordinary files-cat, cp, mv, wc, rm, cmp.
  • Basic file attributes- file permissions, changing permissions.
  • Redirection & Pipes
  • Simple filters- head, tail, cut, paste, sort, uniq, tr.
  • Regular expression-Grep utility, Shell command line, redirection, pipeline, split output, tee.
  • Working with Linux Process: Process, Shell process, Process spawning - parent and child process, Process attributes - pid, ppid, Init Process, User process & System process,  ps with options.
  • The Linux Environment: Environment variable vs Local variables, set command,     env command,     SHELL, HOME, PATH, LOGNAME, PS1, PS2, history, ! and ~
  •    Types of Text editors, using vi editor, prompt character, correcting typing errors.
  • Basics of System Administration
  • grep & sed command
  • Basic shell programming Interactive scripts, shell variables,  assigning values to variables, Positional parameters, command line arguments, Arithmetic in shell script,  Decision taking-if else, nested if, file tests, string tests, case control structure. Loop control structure-while and for.

 

ESSENTIAL READINGS: 
  • Silbersachatz and P.Galvin, “Operating System Concepts 9th Edition- New Delhi: Wiley India- 2011.
  • Sumitabha Das, “UNIX Concepts and Applications”, Tata McGraw Hill.
REFERENCES: 

SUGGESTED READINGS:

  1. Mark G. Sobell, “A Practical Guide To Linux Commands, Editors and Shell Programming” Pearson Education.
  2. Madnick E., Donovan J., “Operating Systems”, Tata McGraw Hill, 2001
  3. B. W. Kernighan & R. Pike, “The UNIX Programming Environment”, PHI.
     

E RESOURCES:

JOURNALS:

  • Journal of Operating Systems Development & Trends, ISSN: 2454-9355
  • International Journal of Reconfigurable Computing, hindawi Journals. ISSN: 1687-7195 (Print)

 

Academic Year: