SlideShare a Scribd company logo
3 February 2020
Agenda for Today
 Introduction and purpose of the course
 Organization of a computer system
 Purpose of a computer system—setting
the stage for OS concepts and principles
 Outline of topics to be discussed in the
course
 What is an operating system?
 Recap of the lecture
3 February 2020
1. Hardware
2. Operating system
3. Applications programs
4. Users
3 February 2020
3 February 2020
 Computer systems consist of
software and hardware that
are combined to provide a tool
to solve specific problems in
an efficient manner
 Execute programs
3 February 2020
Computer System Hardware
Keyboard Mouse
PrinterRAM/ROM
HD
Mem
Bus
System Bus
Monitor
CD
Processor
Floating Point
Unit
Integer
Unit
Cache
Control
Unit
3 February 2020
Course Outline
 Operating system concepts
 Operating system structures
 Introduction to UNIX/Linux user interface
 Processes and threads—scheduling,
concurrency, synchronization, etc.
 Deadlocks
 Memory management
 Virtual memory
 File system
 Secondary storage management
3 February 2020
 Single-user systems
 Batch systems
 Multiprogrammed systems
 Time-sharing systems
 Real-time systems
 Interrupts, traps, and software interrupts
(UNIX signals)
 Hardware protection
3 February 2020
 Operating system services
 System calls
 Semantics of system call execution
 Operating system structures (monolithic,
microkernel-based, layered, virtual machines,
DOS-Windows, UNIX)
 System design and implementation
3 February 2020
Directory structure
Browsing directory structure
Useful commands
3 February 2020
 Process concept (process, states, attributes,
etc.)
 Process scheduling (scheduler)
 Context switching (dispatcher)
 Operations on processes (creation,
termination, signaling, suspend, foreground,
background, etc.)
 Process management in UNIX (fork, wait,
exec, exit, etc.)
3 February 2020
 Sample code for UNIX/Linux process
management
 Cooperating processes
 Interprocess communication (IPC)
 IPC in UNIX/Linux (pipe, FIFO, socket,
message queue, etc.)
3 February 2020
 Communication between UNIX/Linux
processes (pipe, mkfifo, read, write, close,
etc.)
 Sample code
 UNIX/Linux processes (process images,
control structures, etc. explained with sample
code)
 Managing UNIX/Linux processes (ps, top, fg,
bg, <Ctrl-Z>, <Ctrl-C>, etc.)
3 February 2020
Thread concept (thread, states,
attributes, etc.)
User- and kernel-level threads
POSIX threads (the pthread
library)
Sample code
3 February 2020
 Basic concepts
 Scheduling criteria
 Scheduling triggers
 Scheduling algorithms
 UNIX System V scheduling algorithm
 Optimal scheduling
 Algorithm evaluation
3 February 2020
 Basic concept
 The Critical Section Problem
 Solutions for the Critical Section Problem
 Software-based solutions—the Bakery
Algorithm
 Hardware-based solutions
 Semaphores
 Binary and counting semaphores
3 February 2020
 Classic problems of synchronization
 Deadlocks and starvation
 Critical regions
 Monitors
 Synchronization tools used in Solaris, Linux,
and Windows
 Deadlocks and starvation
 Pthread library functions
3 February 2020
 Basic concept
 Deadlock characterization
 Deadlock handling (prevention, avoidance,
detection and recovery)
 Banker’s algorithm
3 February 2020
 Basic concepts
 Various techniques for memory management
 Logical to physical address translation
 Swapping
 Contiguous memory allocation: MFT, MVT
 External fragmentation
 Paging
 Hardware support for paging
 Internal fragmentation
3 February 2020
 Performance of paging
 Protection and sharing
 Page table issues: Multi-level paging,
Hashed page tables, Inverted page tables
 Segmentation
 Protection and sharing
 Segmentation with paging
 Intel P4 example
3 February 2020
 Basic concept
 Demand paging
 Page fault
 Performance of demand paging
 Page replacement
 Allocation of frames
 Thrashing
 Operating-system examples
 Other considerations (I/O locking, page
size, …)
3 February 2020
 Basic concepts (file attributes, operations,
types, structure, etc.)
 Access methods (sequential, random, etc.)
 Directory structure
 UNIX/Linux directory structure (links in UNIX)
 File system mounting, sharing, and protection
 UNIX/Linux examples for sharing and
protection, and relevant commands (chmod, ln,
ln –s, etc.)
3 February 2020
 Basic concepts (overview of disk structure, file
structure, boot control block, super block,
inode, per process file descriptor table,
system-wide open-file table, etc.)
 Directory implementation
 Free space management methods
 Space Allocation Methods
 Time and space performance of allocation
methods
 Brief introduction to Network File System (NFS)
3 February 2020
Disk structure and scheduling
Disk management (formatting,
boot block, bad blocks, etc.)
Course Recap
3 February 2020
What is an Operating
System?
 A program that acts as an intermediary
between a user of a computer and the
computer hardware—provides the user a
simpler (virtual) machine to work with
 A program that allocates and deallocates
computer system resources in an efficient,
fair, and secure manner—a resource
manager
3 February 2020
 Execute user programs and make solving
user problems easier.
 Make the computer system convenient to
use.
 Use the computer hardware in an efficient
manner.
3 February 2020
3 February 2020

More Related Content

DOC
Lesson plan
PPT
Chapter 3 part 2
PPT
Chapter 3 part 1
PDF
Introduction to the Kernel Chapter 2 Mrs.Sowmya Jyothi
PPTX
Arsikom #1
PDF
An Analyzing of different Techniques and Tools to Recover Data from Volatile ...
PPSX
File system security
PPT
The Storage Systems
Lesson plan
Chapter 3 part 2
Chapter 3 part 1
Introduction to the Kernel Chapter 2 Mrs.Sowmya Jyothi
Arsikom #1
An Analyzing of different Techniques and Tools to Recover Data from Volatile ...
File system security
The Storage Systems

Similar to what is operating system . introduction to OS (20)

PPTX
Lecture1.pptx
PPT
Lec1.CS604.ppt
PPT
Lecture01 introduction
ODP
Visual comparison of Unix-like systems & Virtualisation
PPTX
PPT
PDF
OPERATING SYSTEMS NOTES R18 .pdf
PPT
Hardware & softwares
PDF
User level view of os
PPT
CSE 370 - Introduction to Operating Systems
PPTX
Lecture 3,4 operating systems
PPTX
Lecture 3,4 operating systems
PPT
PPT
Section02-Structures.pptdvnfiughidfusffg
PPT
Section02-Structures.ppt
PDF
Operating System
PPTX
Operating System- Services,types.Batch files and DOS history
PPT
intro.ppt
PPT
Ch2 system structure
Lecture1.pptx
Lec1.CS604.ppt
Lecture01 introduction
Visual comparison of Unix-like systems & Virtualisation
OPERATING SYSTEMS NOTES R18 .pdf
Hardware & softwares
User level view of os
CSE 370 - Introduction to Operating Systems
Lecture 3,4 operating systems
Lecture 3,4 operating systems
Section02-Structures.pptdvnfiughidfusffg
Section02-Structures.ppt
Operating System
Operating System- Services,types.Batch files and DOS history
intro.ppt
Ch2 system structure
Ad

Recently uploaded (20)

PDF
Pre independence Education in Inndia.pdf
PPTX
Pharma ospi slides which help in ospi learning
PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PDF
TR - Agricultural Crops Production NC III.pdf
PDF
Complications of Minimal Access Surgery at WLH
PDF
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
PPTX
PPH.pptx obstetrics and gynecology in nursing
PDF
FourierSeries-QuestionsWithAnswers(Part-A).pdf
PDF
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
PDF
VCE English Exam - Section C Student Revision Booklet
PPTX
Cell Structure & Organelles in detailed.
PDF
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PDF
Business Ethics Teaching Materials for college
PPTX
Week 4 Term 3 Study Techniques revisited.pptx
PDF
Basic Mud Logging Guide for educational purpose
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
Pre independence Education in Inndia.pdf
Pharma ospi slides which help in ospi learning
human mycosis Human fungal infections are called human mycosis..pptx
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
Final Presentation General Medicine 03-08-2024.pptx
TR - Agricultural Crops Production NC III.pdf
Complications of Minimal Access Surgery at WLH
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
PPH.pptx obstetrics and gynecology in nursing
FourierSeries-QuestionsWithAnswers(Part-A).pdf
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
VCE English Exam - Section C Student Revision Booklet
Cell Structure & Organelles in detailed.
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
Business Ethics Teaching Materials for college
Week 4 Term 3 Study Techniques revisited.pptx
Basic Mud Logging Guide for educational purpose
O5-L3 Freight Transport Ops (International) V1.pdf
2.FourierTransform-ShortQuestionswithAnswers.pdf
Ad

what is operating system . introduction to OS

  • 2. Agenda for Today  Introduction and purpose of the course  Organization of a computer system  Purpose of a computer system—setting the stage for OS concepts and principles  Outline of topics to be discussed in the course  What is an operating system?  Recap of the lecture 3 February 2020
  • 3. 1. Hardware 2. Operating system 3. Applications programs 4. Users 3 February 2020
  • 5.  Computer systems consist of software and hardware that are combined to provide a tool to solve specific problems in an efficient manner  Execute programs 3 February 2020
  • 6. Computer System Hardware Keyboard Mouse PrinterRAM/ROM HD Mem Bus System Bus Monitor CD Processor Floating Point Unit Integer Unit Cache Control Unit 3 February 2020
  • 7. Course Outline  Operating system concepts  Operating system structures  Introduction to UNIX/Linux user interface  Processes and threads—scheduling, concurrency, synchronization, etc.  Deadlocks  Memory management  Virtual memory  File system  Secondary storage management 3 February 2020
  • 8.  Single-user systems  Batch systems  Multiprogrammed systems  Time-sharing systems  Real-time systems  Interrupts, traps, and software interrupts (UNIX signals)  Hardware protection 3 February 2020
  • 9.  Operating system services  System calls  Semantics of system call execution  Operating system structures (monolithic, microkernel-based, layered, virtual machines, DOS-Windows, UNIX)  System design and implementation 3 February 2020
  • 10. Directory structure Browsing directory structure Useful commands 3 February 2020
  • 11.  Process concept (process, states, attributes, etc.)  Process scheduling (scheduler)  Context switching (dispatcher)  Operations on processes (creation, termination, signaling, suspend, foreground, background, etc.)  Process management in UNIX (fork, wait, exec, exit, etc.) 3 February 2020
  • 12.  Sample code for UNIX/Linux process management  Cooperating processes  Interprocess communication (IPC)  IPC in UNIX/Linux (pipe, FIFO, socket, message queue, etc.) 3 February 2020
  • 13.  Communication between UNIX/Linux processes (pipe, mkfifo, read, write, close, etc.)  Sample code  UNIX/Linux processes (process images, control structures, etc. explained with sample code)  Managing UNIX/Linux processes (ps, top, fg, bg, <Ctrl-Z>, <Ctrl-C>, etc.) 3 February 2020
  • 14. Thread concept (thread, states, attributes, etc.) User- and kernel-level threads POSIX threads (the pthread library) Sample code 3 February 2020
  • 15.  Basic concepts  Scheduling criteria  Scheduling triggers  Scheduling algorithms  UNIX System V scheduling algorithm  Optimal scheduling  Algorithm evaluation 3 February 2020
  • 16.  Basic concept  The Critical Section Problem  Solutions for the Critical Section Problem  Software-based solutions—the Bakery Algorithm  Hardware-based solutions  Semaphores  Binary and counting semaphores 3 February 2020
  • 17.  Classic problems of synchronization  Deadlocks and starvation  Critical regions  Monitors  Synchronization tools used in Solaris, Linux, and Windows  Deadlocks and starvation  Pthread library functions 3 February 2020
  • 18.  Basic concept  Deadlock characterization  Deadlock handling (prevention, avoidance, detection and recovery)  Banker’s algorithm 3 February 2020
  • 19.  Basic concepts  Various techniques for memory management  Logical to physical address translation  Swapping  Contiguous memory allocation: MFT, MVT  External fragmentation  Paging  Hardware support for paging  Internal fragmentation 3 February 2020
  • 20.  Performance of paging  Protection and sharing  Page table issues: Multi-level paging, Hashed page tables, Inverted page tables  Segmentation  Protection and sharing  Segmentation with paging  Intel P4 example 3 February 2020
  • 21.  Basic concept  Demand paging  Page fault  Performance of demand paging  Page replacement  Allocation of frames  Thrashing  Operating-system examples  Other considerations (I/O locking, page size, …) 3 February 2020
  • 22.  Basic concepts (file attributes, operations, types, structure, etc.)  Access methods (sequential, random, etc.)  Directory structure  UNIX/Linux directory structure (links in UNIX)  File system mounting, sharing, and protection  UNIX/Linux examples for sharing and protection, and relevant commands (chmod, ln, ln –s, etc.) 3 February 2020
  • 23.  Basic concepts (overview of disk structure, file structure, boot control block, super block, inode, per process file descriptor table, system-wide open-file table, etc.)  Directory implementation  Free space management methods  Space Allocation Methods  Time and space performance of allocation methods  Brief introduction to Network File System (NFS) 3 February 2020
  • 24. Disk structure and scheduling Disk management (formatting, boot block, bad blocks, etc.) Course Recap 3 February 2020
  • 25. What is an Operating System?  A program that acts as an intermediary between a user of a computer and the computer hardware—provides the user a simpler (virtual) machine to work with  A program that allocates and deallocates computer system resources in an efficient, fair, and secure manner—a resource manager 3 February 2020
  • 26.  Execute user programs and make solving user problems easier.  Make the computer system convenient to use.  Use the computer hardware in an efficient manner. 3 February 2020