SlideShare a Scribd company logo
1 of 32
Operating System
Concepts
Lecture 1
Course Administration
• Exams and Assessment
– Basically 2 exams method Mid & Final
• 10 Sessional1
• 15 Sessional2
• 50 Final
• 25 Assignment/Quizes
– Eliminating one Exam suggests that there is a clear
room for more practical work (so you must start
getting worried about it !!!)
6 December 2021
Course Requirements
• Assignments/Quizes
– Written assignments (Small Tasks) (details in
coming lectures)
– Idea is to initiate research oriented writing not
“cut-copy-paste”
– Attendance, Presentations, Quiz & Class
Discussion & Participation (as a regular activity)
– Sessional’s loot sale
– Formal Presentations in groups
6 December 2021
How to get good marks?
• Requirements
– Overall Class Attitude
– Things to Avoid (Referencing, Cut-Copy-Paste
Culture, Carelessness, leg-pulling)
– Things to do (Innovation, Confidence, Work
Attitude)
– Sense of Maturity and continuous learning
6 December 2021
Examination
• I personally believe in “thorough studies” so usually no
choices given in the exam
• Every thing discussed, during the class or given as reading
material, could be part of the exams
• Questions will be formulated in a way to examine both
bookish as well as conceptual thinking
• Other details will be given close to Sessional
• I will try to follow my simple rule that is
– “ I’ll be very friendly in the lectures and very strict in
the exam hall (believe me no chance of misconduct…)”
6 December 2021
Text & References
• Focus will be on topics rather Chapters of any
text
• Many Text/books are available in market
– Operating System by H.M. Deitel
– Operating System concepts by Silberschatz
6 December 2021
6 December 2021
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
Computer System
1. Hardware
2. Operating system
3. Applications programs
4. Users
6 December 2021
Layered View of a Computer
System
6 December 2021
Purpose of a Computer System
• Computer systems consist of software and
hardware that are combined to provide a
tool to solve specific problems in an
efficient manner
• Execute programs
6 December 2021
6 December 2021
Computer System Hardware
Keyboard Mouse
Printer
RAM/ROM
HD
Mem
Bus
System Bus
Monitor
CD
Processor
Floating Point
Unit
Integer
Unit
Cache
Control
Unit
6 December 2021
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
Operating System Concepts
• Single-user systems
• Batch systems
• Multiprogrammed systems
• Time-sharing systems
• Real-time systems
• Interrupts, traps, and software interrupts
(UNIX signals)
• Hardware protection
6 December 2021
Operating System Structures
• 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
6 December 2021
Introduction to UNIX/Linux
• Directory structure
• Browsing directory structure
• Useful commands
6 December 2021
Processes
• 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.)
6 December 2021
Processes (continued)
• Sample code for UNIX/Linux process
management
• Cooperating processes
• Interprocess communication (IPC)
• IPC in UNIX/Linux (pipe, FIFO, socket,
message queue, etc.)
6 December 2021
Processes (continued)
• 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.)
6 December 2021
Threads
• Thread concept (thread, states,
attributes, etc.)
• User- and kernel-level threads
• POSIX threads (the pthread
library)
• Sample code
6 December 2021
CPU Scheduling
• Basic concepts
• Scheduling criteria
• Scheduling triggers
• Scheduling algorithms
• UNIX System V scheduling algorithm
• Optimal scheduling
• Algorithm evaluation
6 December 2021
Process Synchronization
• 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
6 December 2021
Process Synchronization …
• Classic problems of synchronization
• Deadlocks and starvation
• Critical regions
• Monitors
• Synchronization tools used in Solaris,
Linux, and Windows
• Deadlocks and starvation
• Pthread library functions
6 December 2021
Deadlocks
• Basic concept
• Deadlock characterization
• Deadlock handling (prevention, avoidance,
detection and recovery)
• Banker’s algorithm
6 December 2021
Memory Management
• Basic concepts
• Various techniques for memory
management
• Logical to physical address translation
• Swapping
• Contiguous memory allocation:
• External fragmentation
• Paging
• Hardware support for paging
• Internal fragmentation
6 December 2021
Memory Management …
• 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
6 December 2021
Virtual Memory
• 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, …)
6 December 2021
File System Interface
• 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.)
6 December 2021
File System Implementation
• 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)
6 December 2021
Mass Storage Structure and
Scheduling
• Disk structure and scheduling
• Disk management (formatting,
boot block, bad blocks, etc.)
• Course Recap
6 December 2021
6 December 2021
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
Operating System Goals
• Execute user programs and make solving
user problems easier.
• Make the computer system convenient to
use.
• Use the computer hardware in an efficient
manner.
6 December 2021
Available operating systems in the
market
• Popular modern operating system includes, Android
• BSD (Berkeley Software Distribution)
• iOS
• Linux
• MAC OS X
• Microsoft Windows
• Window phone
• IBM z/OS
• Symbian etc.
• All these except Windows and z/OS, share roots in UNIX
6 December 2021
© Copyright Virtual University of
Pakistan

More Related Content

Similar to Lec1

Who says you can't do records management in SharePoint?
Who says you can't do records management in SharePoint?Who says you can't do records management in SharePoint?
Who says you can't do records management in SharePoint?John F. Holliday
 
e-Learning Delivery System : The Challenges
e-Learning Delivery System : The Challengese-Learning Delivery System : The Challenges
e-Learning Delivery System : The ChallengesDenpong Soodphakdee
 
Operating system lec#1
Operating system lec#1Operating system lec#1
Operating system lec#1awais qarni
 
what is operating system . introduction to OS
what is operating system . introduction to OSwhat is operating system . introduction to OS
what is operating system . introduction to OSfahim shahzad
 
Apos week 1 4
Apos week 1   4Apos week 1   4
Apos week 1 4alixafar
 
Database Systems - Lecture Week 1
Database Systems - Lecture Week 1Database Systems - Lecture Week 1
Database Systems - Lecture Week 1Dios Kurniawan
 
KMSUnix and Linux.pptx
KMSUnix and Linux.pptxKMSUnix and Linux.pptx
KMSUnix and Linux.pptxGanesh Bhosale
 
Examining Mac File Structures
Examining Mac File StructuresExamining Mac File Structures
Examining Mac File Structuresprimeteacher32
 
Kendall7e ch01
Kendall7e ch01Kendall7e ch01
Kendall7e ch01sayAAhmad
 
Analisis dan Perancangan Sistem - 1 - Kendall7e ch01
Analisis dan Perancangan Sistem - 1 - Kendall7e ch01Analisis dan Perancangan Sistem - 1 - Kendall7e ch01
Analisis dan Perancangan Sistem - 1 - Kendall7e ch01Ullum Pratiwi
 
Ch11 file system implementation
Ch11   file system implementationCh11   file system implementation
Ch11 file system implementationWelly Dian Astika
 
chapter5-file system implementation.ppt
chapter5-file system implementation.pptchapter5-file system implementation.ppt
chapter5-file system implementation.pptBUSHRASHAIKH804312
 
Seminar on Parallel and Concurrent Programming
Seminar on Parallel and Concurrent ProgrammingSeminar on Parallel and Concurrent Programming
Seminar on Parallel and Concurrent ProgrammingStefan Marr
 
BP301: Q: What’s Your Second Most Valuable Asset and Nearly Doubles Every Year?
BP301: Q: What’s Your Second Most Valuable Asset and Nearly Doubles Every Year? BP301: Q: What’s Your Second Most Valuable Asset and Nearly Doubles Every Year?
BP301: Q: What’s Your Second Most Valuable Asset and Nearly Doubles Every Year? panagenda
 
Systems analysis and design
Systems analysis and designSystems analysis and design
Systems analysis and designArnel Llemit
 
Software Engineering Advice from Google's Jeff Dean for Big, Distributed Systems
Software Engineering Advice from Google's Jeff Dean for Big, Distributed SystemsSoftware Engineering Advice from Google's Jeff Dean for Big, Distributed Systems
Software Engineering Advice from Google's Jeff Dean for Big, Distributed Systemsadrianionel
 

Similar to Lec1 (20)

Who says you can't do records management in SharePoint?
Who says you can't do records management in SharePoint?Who says you can't do records management in SharePoint?
Who says you can't do records management in SharePoint?
 
e-Learning Delivery System : The Challenges
e-Learning Delivery System : The Challengese-Learning Delivery System : The Challenges
e-Learning Delivery System : The Challenges
 
Operating system lec#1
Operating system lec#1Operating system lec#1
Operating system lec#1
 
what is operating system . introduction to OS
what is operating system . introduction to OSwhat is operating system . introduction to OS
what is operating system . introduction to OS
 
Apos week 1 4
Apos week 1   4Apos week 1   4
Apos week 1 4
 
Lecture1.pptx
Lecture1.pptxLecture1.pptx
Lecture1.pptx
 
Database Systems - Lecture Week 1
Database Systems - Lecture Week 1Database Systems - Lecture Week 1
Database Systems - Lecture Week 1
 
Design systems
Design systemsDesign systems
Design systems
 
KMSUnix and Linux.pptx
KMSUnix and Linux.pptxKMSUnix and Linux.pptx
KMSUnix and Linux.pptx
 
Examining Mac File Structures
Examining Mac File StructuresExamining Mac File Structures
Examining Mac File Structures
 
Kendall7e ch01
Kendall7e ch01Kendall7e ch01
Kendall7e ch01
 
Analisis dan Perancangan Sistem - 1 - Kendall7e ch01
Analisis dan Perancangan Sistem - 1 - Kendall7e ch01Analisis dan Perancangan Sistem - 1 - Kendall7e ch01
Analisis dan Perancangan Sistem - 1 - Kendall7e ch01
 
Ch11 file system implementation
Ch11   file system implementationCh11   file system implementation
Ch11 file system implementation
 
chapter5-file system implementation.ppt
chapter5-file system implementation.pptchapter5-file system implementation.ppt
chapter5-file system implementation.ppt
 
Seminar on Parallel and Concurrent Programming
Seminar on Parallel and Concurrent ProgrammingSeminar on Parallel and Concurrent Programming
Seminar on Parallel and Concurrent Programming
 
Linux Driver and Embedded Developer with Android Course Content & Highlights
Linux Driver and Embedded Developer with Android Course Content & HighlightsLinux Driver and Embedded Developer with Android Course Content & Highlights
Linux Driver and Embedded Developer with Android Course Content & Highlights
 
BP301: Q: What’s Your Second Most Valuable Asset and Nearly Doubles Every Year?
BP301: Q: What’s Your Second Most Valuable Asset and Nearly Doubles Every Year? BP301: Q: What’s Your Second Most Valuable Asset and Nearly Doubles Every Year?
BP301: Q: What’s Your Second Most Valuable Asset and Nearly Doubles Every Year?
 
vlsi
vlsivlsi
vlsi
 
Systems analysis and design
Systems analysis and designSystems analysis and design
Systems analysis and design
 
Software Engineering Advice from Google's Jeff Dean for Big, Distributed Systems
Software Engineering Advice from Google's Jeff Dean for Big, Distributed SystemsSoftware Engineering Advice from Google's Jeff Dean for Big, Distributed Systems
Software Engineering Advice from Google's Jeff Dean for Big, Distributed Systems
 

Recently uploaded

Software Engineering - Introduction + Process Models + Requirements Engineering
Software Engineering - Introduction + Process Models + Requirements EngineeringSoftware Engineering - Introduction + Process Models + Requirements Engineering
Software Engineering - Introduction + Process Models + Requirements EngineeringPrakhyath Rai
 
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...Andrea Goulet
 
Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?Maxim Salnikov
 
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...naitiksharma1124
 
Workshop - Architecting Innovative Graph Applications- GraphSummit Milan
Workshop -  Architecting Innovative Graph Applications- GraphSummit MilanWorkshop -  Architecting Innovative Graph Applications- GraphSummit Milan
Workshop - Architecting Innovative Graph Applications- GraphSummit MilanNeo4j
 
^Clinic ^%[+27788225528*Abortion Pills For Sale In witbank
^Clinic ^%[+27788225528*Abortion Pills For Sale In witbank^Clinic ^%[+27788225528*Abortion Pills For Sale In witbank
^Clinic ^%[+27788225528*Abortion Pills For Sale In witbankkasambamuno
 
Test Automation Design Patterns_ A Comprehensive Guide.pdf
Test Automation Design Patterns_ A Comprehensive Guide.pdfTest Automation Design Patterns_ A Comprehensive Guide.pdf
Test Automation Design Patterns_ A Comprehensive Guide.pdfkalichargn70th171
 
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...Navigation in flutter – how to add stack, tab, and drawer navigators to your ...
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...Flutter Agency
 
Microsoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdfMicrosoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdfMarkus Moeller
 
Automate your OpenSIPS config tests - OpenSIPS Summit 2024
Automate your OpenSIPS config tests - OpenSIPS Summit 2024Automate your OpenSIPS config tests - OpenSIPS Summit 2024
Automate your OpenSIPS config tests - OpenSIPS Summit 2024Andreas Granig
 
Effective Strategies for Wix's Scaling challenges - GeeCon
Effective Strategies for Wix's Scaling challenges - GeeConEffective Strategies for Wix's Scaling challenges - GeeCon
Effective Strategies for Wix's Scaling challenges - GeeConNatan Silnitsky
 
A Deep Dive into Secure Product Development Frameworks.pdf
A Deep Dive into Secure Product Development Frameworks.pdfA Deep Dive into Secure Product Development Frameworks.pdf
A Deep Dive into Secure Product Development Frameworks.pdfICS
 
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCAOpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCAShane Coughlan
 
From Theory to Practice: Utilizing SpiraPlan's REST API
From Theory to Practice: Utilizing SpiraPlan's REST APIFrom Theory to Practice: Utilizing SpiraPlan's REST API
From Theory to Practice: Utilizing SpiraPlan's REST APIInflectra
 
What is a Recruitment Management Software?
What is a Recruitment Management Software?What is a Recruitment Management Software?
What is a Recruitment Management Software?NYGGS Automation Suite
 
UNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale Ibrida
UNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale IbridaUNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale Ibrida
UNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale IbridaNeo4j
 
The mythical technical debt. (Brooke, please, forgive me)
The mythical technical debt. (Brooke, please, forgive me)The mythical technical debt. (Brooke, please, forgive me)
The mythical technical debt. (Brooke, please, forgive me)Roberto Bettazzoni
 
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...Lisi Hocke
 

Recently uploaded (20)

Software Engineering - Introduction + Process Models + Requirements Engineering
Software Engineering - Introduction + Process Models + Requirements EngineeringSoftware Engineering - Introduction + Process Models + Requirements Engineering
Software Engineering - Introduction + Process Models + Requirements Engineering
 
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
 
Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?
 
Abortion Clinic In Pretoria ](+27832195400*)[ 🏥 Safe Abortion Pills in Pretor...
Abortion Clinic In Pretoria ](+27832195400*)[ 🏥 Safe Abortion Pills in Pretor...Abortion Clinic In Pretoria ](+27832195400*)[ 🏥 Safe Abortion Pills in Pretor...
Abortion Clinic In Pretoria ](+27832195400*)[ 🏥 Safe Abortion Pills in Pretor...
 
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
 
Workshop - Architecting Innovative Graph Applications- GraphSummit Milan
Workshop -  Architecting Innovative Graph Applications- GraphSummit MilanWorkshop -  Architecting Innovative Graph Applications- GraphSummit Milan
Workshop - Architecting Innovative Graph Applications- GraphSummit Milan
 
^Clinic ^%[+27788225528*Abortion Pills For Sale In witbank
^Clinic ^%[+27788225528*Abortion Pills For Sale In witbank^Clinic ^%[+27788225528*Abortion Pills For Sale In witbank
^Clinic ^%[+27788225528*Abortion Pills For Sale In witbank
 
Test Automation Design Patterns_ A Comprehensive Guide.pdf
Test Automation Design Patterns_ A Comprehensive Guide.pdfTest Automation Design Patterns_ A Comprehensive Guide.pdf
Test Automation Design Patterns_ A Comprehensive Guide.pdf
 
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...Navigation in flutter – how to add stack, tab, and drawer navigators to your ...
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...
 
Microsoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdfMicrosoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdf
 
Automate your OpenSIPS config tests - OpenSIPS Summit 2024
Automate your OpenSIPS config tests - OpenSIPS Summit 2024Automate your OpenSIPS config tests - OpenSIPS Summit 2024
Automate your OpenSIPS config tests - OpenSIPS Summit 2024
 
Effective Strategies for Wix's Scaling challenges - GeeCon
Effective Strategies for Wix's Scaling challenges - GeeConEffective Strategies for Wix's Scaling challenges - GeeCon
Effective Strategies for Wix's Scaling challenges - GeeCon
 
A Deep Dive into Secure Product Development Frameworks.pdf
A Deep Dive into Secure Product Development Frameworks.pdfA Deep Dive into Secure Product Development Frameworks.pdf
A Deep Dive into Secure Product Development Frameworks.pdf
 
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCAOpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
 
From Theory to Practice: Utilizing SpiraPlan's REST API
From Theory to Practice: Utilizing SpiraPlan's REST APIFrom Theory to Practice: Utilizing SpiraPlan's REST API
From Theory to Practice: Utilizing SpiraPlan's REST API
 
What is a Recruitment Management Software?
What is a Recruitment Management Software?What is a Recruitment Management Software?
What is a Recruitment Management Software?
 
Abortion Pill Prices Germiston ](+27832195400*)[ 🏥 Women's Abortion Clinic in...
Abortion Pill Prices Germiston ](+27832195400*)[ 🏥 Women's Abortion Clinic in...Abortion Pill Prices Germiston ](+27832195400*)[ 🏥 Women's Abortion Clinic in...
Abortion Pill Prices Germiston ](+27832195400*)[ 🏥 Women's Abortion Clinic in...
 
UNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale Ibrida
UNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale IbridaUNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale Ibrida
UNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale Ibrida
 
The mythical technical debt. (Brooke, please, forgive me)
The mythical technical debt. (Brooke, please, forgive me)The mythical technical debt. (Brooke, please, forgive me)
The mythical technical debt. (Brooke, please, forgive me)
 
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
 

Lec1

  • 2. Course Administration • Exams and Assessment – Basically 2 exams method Mid & Final • 10 Sessional1 • 15 Sessional2 • 50 Final • 25 Assignment/Quizes – Eliminating one Exam suggests that there is a clear room for more practical work (so you must start getting worried about it !!!) 6 December 2021
  • 3. Course Requirements • Assignments/Quizes – Written assignments (Small Tasks) (details in coming lectures) – Idea is to initiate research oriented writing not “cut-copy-paste” – Attendance, Presentations, Quiz & Class Discussion & Participation (as a regular activity) – Sessional’s loot sale – Formal Presentations in groups 6 December 2021
  • 4. How to get good marks? • Requirements – Overall Class Attitude – Things to Avoid (Referencing, Cut-Copy-Paste Culture, Carelessness, leg-pulling) – Things to do (Innovation, Confidence, Work Attitude) – Sense of Maturity and continuous learning 6 December 2021
  • 5. Examination • I personally believe in “thorough studies” so usually no choices given in the exam • Every thing discussed, during the class or given as reading material, could be part of the exams • Questions will be formulated in a way to examine both bookish as well as conceptual thinking • Other details will be given close to Sessional • I will try to follow my simple rule that is – “ I’ll be very friendly in the lectures and very strict in the exam hall (believe me no chance of misconduct…)” 6 December 2021
  • 6. Text & References • Focus will be on topics rather Chapters of any text • Many Text/books are available in market – Operating System by H.M. Deitel – Operating System concepts by Silberschatz 6 December 2021
  • 7. 6 December 2021 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
  • 8. Computer System 1. Hardware 2. Operating system 3. Applications programs 4. Users 6 December 2021
  • 9. Layered View of a Computer System 6 December 2021
  • 10. Purpose of a Computer System • Computer systems consist of software and hardware that are combined to provide a tool to solve specific problems in an efficient manner • Execute programs 6 December 2021
  • 11. 6 December 2021 Computer System Hardware Keyboard Mouse Printer RAM/ROM HD Mem Bus System Bus Monitor CD Processor Floating Point Unit Integer Unit Cache Control Unit
  • 12. 6 December 2021 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
  • 13. Operating System Concepts • Single-user systems • Batch systems • Multiprogrammed systems • Time-sharing systems • Real-time systems • Interrupts, traps, and software interrupts (UNIX signals) • Hardware protection 6 December 2021
  • 14. Operating System Structures • 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 6 December 2021
  • 15. Introduction to UNIX/Linux • Directory structure • Browsing directory structure • Useful commands 6 December 2021
  • 16. Processes • 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.) 6 December 2021
  • 17. Processes (continued) • Sample code for UNIX/Linux process management • Cooperating processes • Interprocess communication (IPC) • IPC in UNIX/Linux (pipe, FIFO, socket, message queue, etc.) 6 December 2021
  • 18. Processes (continued) • 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.) 6 December 2021
  • 19. Threads • Thread concept (thread, states, attributes, etc.) • User- and kernel-level threads • POSIX threads (the pthread library) • Sample code 6 December 2021
  • 20. CPU Scheduling • Basic concepts • Scheduling criteria • Scheduling triggers • Scheduling algorithms • UNIX System V scheduling algorithm • Optimal scheduling • Algorithm evaluation 6 December 2021
  • 21. Process Synchronization • 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 6 December 2021
  • 22. Process Synchronization … • Classic problems of synchronization • Deadlocks and starvation • Critical regions • Monitors • Synchronization tools used in Solaris, Linux, and Windows • Deadlocks and starvation • Pthread library functions 6 December 2021
  • 23. Deadlocks • Basic concept • Deadlock characterization • Deadlock handling (prevention, avoidance, detection and recovery) • Banker’s algorithm 6 December 2021
  • 24. Memory Management • Basic concepts • Various techniques for memory management • Logical to physical address translation • Swapping • Contiguous memory allocation: • External fragmentation • Paging • Hardware support for paging • Internal fragmentation 6 December 2021
  • 25. Memory Management … • 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 6 December 2021
  • 26. Virtual Memory • 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, …) 6 December 2021
  • 27. File System Interface • 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.) 6 December 2021
  • 28. File System Implementation • 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) 6 December 2021
  • 29. Mass Storage Structure and Scheduling • Disk structure and scheduling • Disk management (formatting, boot block, bad blocks, etc.) • Course Recap 6 December 2021
  • 30. 6 December 2021 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
  • 31. Operating System Goals • Execute user programs and make solving user problems easier. • Make the computer system convenient to use. • Use the computer hardware in an efficient manner. 6 December 2021
  • 32. Available operating systems in the market • Popular modern operating system includes, Android • BSD (Berkeley Software Distribution) • iOS • Linux • MAC OS X • Microsoft Windows • Window phone • IBM z/OS • Symbian etc. • All these except Windows and z/OS, share roots in UNIX 6 December 2021 © Copyright Virtual University of Pakistan