About this course

What you'll learn

OS Introduction

What is an Operating System?

Operating System Definitions

Parallel /multiprocessor/tightly coupled systems

User interface

Objectives of PMS

What is in PCB?

CPU Scheduling

Topics covered

Basic concepts

What is a scheduler

CPU Scheduling

Dispatcher

CPU Scheduler

Scheduling Mechanism

Deadline Scheduling

Inter-process communication

What is FMS?

Need of FMS

File Concept

File Structure

What is FS?

Need of FS

File system organization

Allocation Methods

Contiguous Allocation

Contiguous Allocation of Disk Space

Management

Background

Memory Management Requirements

Memory-Management Unit(MMU)

Logical Organization

Physical Organization

Contiguous Allocation

Fragmentation

Fixed Partitioning

Dynamic Partitioning

Paging

Simple Paging

Address Translation Scheme Logical-to-Physical Address Translation in Paging

Simple Segmentation

Evaluation of Simple Segmentation

Implementation

Address translation in segmentation

History of UNIX

Why learn UNIX

Main Features of UNIX

Why UNIX is so widely used?

UNIX 0.S Structure

Application layer

The System Call Interface

The UNIX Operating System

UNIX Shells

Purpose of the Shell

File Descriptors

Comparing the shell programming with C- programming

Shell Initialization

Exporting Environment Variables

Shell Variables

Special Variables

Embedding Punctuation Mark

Embedding Variable Substitution

Escape Sequences for the echo Command

Arithmetic Substitution

Flow Control

String Comparisons

String Comparison Options for the test Command

Numerical Comparison Operators for the test Command

Operators for Creating Compound Expressions

Loops

Functions

File subsystem

Features of unix file system

Files and directories

Unix file system structure

File attributes

File System Model

Block addressing Scheme

Direct blocks

Single indirect blocks

Screen shot of mount command

DISK I/O : Buffering mechanism

Structure of the buffer pool

Operations on the Buffer

Kernel data structures for files

File descriptor table

File related operations

Creating links for files

Algorithm to redirect standard input

FILE LOCKING

Definition of struct flock. Refer

Pseudo code óWrite Lock

Program and process

Executable program

Process states & transitions

Context of a process

Wait and waitpid

Implementation

The concept of paging

Demand paging

Data structures for Demand paging

Signals

Signal concepts

Signal identification

Conditions that generate signals

Interrupts and signals

Unnamed Pipes

Half duplex one way communication

Two way communication

Differences b/w pipes and files

Fifos - Creating a FIFO

Blocking Actions on a FIFO

Socket

Connection oriented socket calls (TCP)

Connectionless socket calls (UDP)

Byte ordering functions

Connect

Concurrent Server

What are Pthreads?

Why Pthreads?

The Pthreads API

Terminating Thread Execution

Passing Arguments to Threads

Condition Variables

Variables

Predefined Variables

Automatic variables

Consider the following makefile:

GNU Make command options