OPERATING SYSTEMS

Paper Code: 
MIT 121
Credits: 
4
Periods/week: 
4
Max. Marks: 
100.00
Objective: 

This course is focused on the study of basic concepts of Operating systems followed by study of Linux, its user interface & system administration concepts.

12.00
Unit I: 

Introduction to Operating Systems: Introduction, history, functions and types of operating system. Processes: Concept, Definition, Process Control, Interacting Processes. Scheduling: Scheduling Policies, Job and Process Scheduling.

12.00
Unit II: 

Deadlocks: Definition, Modeling the Resource Status, Handling Deadlocks, Deadlock Detection and Resolution, Deadlock Avoidance: Resource Ranking. Memory Management: Contiguous Memory Allocation, Non-Contiguous Memory Allocation, Virtual Memory Using Paging and Segmentation.

12.00
Unit III: 

Open Source Technology: Introduction, Overview of UNIX and LINUX Architectures, Hardware requirements for Linux. Various Linux Distributions, Contributions of Open Source Foundation. Linux Internals: Introduction, process management, systems calls. Linux File system: Logging in, getting familiar with Linux desktop, shell interface, understanding Linux shell, using shell, types of Text editors, using vi editor, prompt character, correcting typing errors, simple shell commands-date, cal, who, tty, uname, passwd, bc, script, echo, logging out, Environment variables, wild card characters.

12.00
Unit IV: 

LINUX File System: boot block, super block, inode table, file types, absolute and relative path, listing files and directories commands, Navigating file system- pwd, cd, mkdir, rmdir,ls, pr. Handling ordinary files-cat, cp, mv, wc, rm, comm., amp, diff, Basic file attributes- file permissions, changing permissions. Filters- head, tail, cut, paste, sort, uniq, tr, Regular expression-Grep utility, Shell command line, redirection, pipeline, split output, tee.         

12.00
Unit V: 

Process- process scheduling-(at, batch), nohup command. Communication and System Administration: Communication tools under Linux- write, msg, finger, talk, elm, pine, mailx. Connecting to remote machines-ftp, telnet, Adding and removing users, starting up and shutting down the system, locating files- find, backups, copying tapes-dd, copy input-output- cpio, tar, disk management-formatting, mounting, unmounting, using raw disk, monitoring system usage, ensuring system security.

ESSENTIAL READINGS: 
  1. D M Dhamdhere, “System Programming and Operating Systems”, Tata McGraw Hill, Second Edition.
  2. A. Silbersachatz and P.Galvin, “Operating System Concepts”, Addison-Wesley, 5th Ed., 2001
  3. Mark G. Sobell, “A Practical Guide To Linux Commands, Editors and Shell Programming” Pearson Education.
  4. Sandip Bhattacharya, Mark Mamone, Kapil Sharma, Deepak Thomas, Simon Whiting, Shishir Gundavaram, “Beginning Red Hat Linux 9”, Wrox Press.
  5. Sumitabha Das, “UNIX Concepts and Applications”, Tata McGraw Hill.
  6. Website: www.linux.org
REFERENCES: 
  1. Neil Mathew, Richard Stones, “Beginning Linux Programming”, Wrox Press.
  2. Beginning Red Hat Linux 5.0, Wrox Publications.
  3. Madnick E., Donovan J., “Operating Systems”, Tata McGraw Hill, 2001
  4. B. W. Kernighan & R. Pike, “The UNIX Programming Environment”, PHI.
  5. Mark G. Sobell, “A Practical Guide to LINUX Commands, Editors, and Shell Programming, Perason Education.
  6. Yashwant Kanetkar, “Unix shell programming”, BPB Publications.
Academic Year: