30 October 2015. Agenda for Today Introduction and purpose of the course Introduction and purpose of the course Organization of a computer system Organization.

Slides:



Advertisements
Similar presentations
Processes and Threads Chapter 3 and 4 Operating Systems: Internals and Design Principles, 6/E William Stallings Patricia Roy Manatee Community College,
Advertisements

MACHINE-INDEPENDENT VIRTUAL MEMORY MANAGEMENT FOR PAGED UNIPROCESSOR AND MULTIPROCESSOR ARCHITECTURES R. Rashid, A. Tevanian, M. Young, D. Golub, R. Baron,
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
Computer Systems/Operating Systems - Class 8
Review: Chapters 1 – Chapter 1: OS is a layer between user and hardware to make life easier for user and use hardware efficiently Control program.
CMPT 300: Final Review Chapters 8 – Memory Management: Ch. 8, 9 Address spaces Logical (virtual): generated by the CPU Physical: seen by the memory.
1 Case Study 1: UNIX and LINUX Chapter History of unix 10.2 Overview of unix 10.3 Processes in unix 10.4 Memory management in unix 10.5 Input/output.
3.5 Interprocess Communication Many operating systems provide mechanisms for interprocess communication (IPC) –Processes must communicate with one another.
CMPT 300: Operating Systems Review THIS REIVEW SHOULD NOT BE USED AS PREDICTORS OF THE ACTUAL QUESTIONS APPEARING ON THE FINAL EXAM.
Understanding Operating Systems 1 Overview Introduction Operating System Components Machine Hardware Types of Operating Systems Brief History of Operating.
CMPT 300: Final Review Chapters 8 – Memory Management: Ch. 8, 9 Address spaces Logical (virtual): generated by the CPU Physical: seen by the memory.
3.5 Interprocess Communication
Process Management. External View of the OS Hardware fork() CreateProcess() CreateThread() close() CloseHandle() sleep() semctl() signal() SetWaitableTimer()
Computer Organization and Architecture
Chapter 6 Implementing Processes, Threads, and Resources.
CS364 CH08 Operating System Support TECH Computer Science Operating System Overview Scheduling Memory Management Pentium II and PowerPC Memory Management.
Computer Organization Review and OS Introduction CS550 Operating Systems.
Operating System A program that controls the execution of application programs An interface between applications and hardware 1.
Exam Review cs550 Operating Systems. Preliminary Information Exam will focus on new content, but old content is still fair game. Exam format will be the.
Introduction to Operating System and Operating System Components
General What is an OS? What do you get when you buy an OS? What does the OS do? What are the parts of an OS? What is the kernel? What is a device.
Chapter 3 Process Description and Control Operating Systems: Internals and Design Principles, 6/E William Stallings Patricia Roy Manatee Community College,
Silberschatz and Galvin  Chapters 3 and 5 Possible questions –Tracing a given program involving fork, exec, semaphores, and share memory –Wring.
B.Ramamurthy9/19/20151 Operating Systems u Bina Ramamurthy CS421.
Chapter 3 Process Description and Control Operating Systems: Internals and Design Principles, 6/E William Stallings Patricia Roy Manatee Community College,
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
Chapter 5 Operating System Support. Outline Operating system - Objective and function - types of OS Scheduling - Long term scheduling - Medium term scheduling.
CIS250 OPERATING SYSTEMS Memory Management Since we share memory, we need to manage it Memory manager only sees the address A program counter value indicates.
Lecture 3 Process Concepts. What is a Process? A process is the dynamic execution context of an executing program. Several processes may run concurrently,
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
Chapter 1 Computer System Overview Sections 1.1 to 1.6 Instruction exe cution Interrupt Memory hierarchy Cache memory Locality: spatial and temporal Problem.
Chapter 7 Operating Systems. Define the purpose and functions of an operating system. Understand the components of an operating system. Understand the.
LINUX System : Lecture 7 Bong-Soo Sohn Lecture notes acknowledgement : The design of UNIX Operating System.
8-Sep Operating Systems Yasir Kiani. 8-Sep Agenda for Today Review of previous lecture Process scheduling concepts Process creation and termination.
OSes: 3. OS Structs 1 Operating Systems v Objectives –summarise OSes from several perspectives Certificate Program in Software Development CSE-TC and CSIM,
OPERATING SYSTEMS - I. What is an Operating System OS is a program that manages the computer hardware It provides a basis for application programs and.
Silberschatz, Galvin and Gagne  Operating System Concepts Process Concept An operating system executes a variety of programs:  Batch system.
Silberschatz, Galvin and Gagne  Operating System Concepts Operating Systems 1. Overview 2. Process Management 3. Storage Management 4. I/O Systems.
Overview of Operating Systems Introduction to Operating Systems: Module 0.
System Components ● There are three main protected modules of the System  The Hardware Abstraction Layer ● A virtual machine to configure all devices.
1 Unix Architecture. 2 Operating Systems Concepts 1. Process 2. Memory management 3. Information protection & security 4. Scheduling and resource management.
Review for Quiz-2 Applied Operating System Concepts Chap.s 1,2,6,7 - ECE3055b, Spring 2005.
1 Rutgers UniversityCS 416: Operating Systems Final exam details December 22, pm-3pm. Venue: SEC 118. Tips: Spend time reading the questions before.
CS1253- OPERATING SYSTEMS. SYLLABUS UNIT I PROCESSES AND THREADS 9 Introduction to operating systems – Review of computer organization – Operating.
2 Processor(s)Main MemoryDevices Process, Thread & Resource Manager Memory Manager Device Manager File Manager.
1/31/20161 Final Exam Dec 10. Monday. 4-7pm. Phelp 1160 Similar to midterm The exam is closed book. You can bring 2 page of notes (double sided) Nachos.
What is an Operating System? Various systems and their pros and cons –E.g. multi-tasking vs. Batch OS definitions –Resource allocator –Control program.
Operating Systems: Summary INF1060: Introduction to Operating Systems and Data Communication.
CMPT 300: Operating Systems Course Summary THIS SUMMARY SHOULD NOT BE USED AS PREDICTORS OF THE ACTUAL QUESTIONS APPEARING ON THE FINAL EXAM.
Threads, SMP, and Microkernels Chapter 4. Processes and Threads Operating systems use processes for two purposes - Resource allocation and resource ownership.
CSCI/CMPE 4334 Operating Systems Review: Exam 1 1.
Processes and Threads Chapter 3 and 4 Operating Systems: Internals and Design Principles, 6/E William Stallings Patricia Roy Manatee Community College,
Chapters 3 and 5 Possible questions
Operating System (OS) QUESTIONS AND ANSWERS
Andy Wang COP 5611 Advanced Operating Systems
Chapter 9: Virtual Memory
Operating Systems: A Modern Perspective, Chapter 6
Section 10: Last section! Final review.
Chapter 9: Virtual-Memory Management
Operating Systems Lecture 6.
Andy Wang Operating Systems COP 4610 / CGS 5675
Mid Term review CSC345.
Operating Systems Lecture 1.
Andy Wang Operating Systems COP 4610 / CGS 5675
Major Topics in Operating Systems
LINUX System : Lecture 7 Lecture notes acknowledgement : The design of UNIX Operating System.
Implementing Processes, Threads, and Resources
Chapter 2 Operating System Overview
BANKER’S ALGORITHM Prepared by, Prof
Andy Wang Operating Systems COP 4610 / CGS 5675
Presentation transcript:

30 October 2015

Agenda for Today Introduction and purpose of the course Introduction and purpose of the course Organization of a computer system Organization of a computer system Purpose of a computer system—setting the stage for OS concepts and principles Purpose of a computer system—setting the stage for OS concepts and principles Outline of topics to be discussed in the course Outline of topics to be discussed in the course What is an operating system? What is an operating system? Recap of the lecture Recap of the lecture 30 October 2015

1.Hardware 2.Operating system 3.Applications programs 4.Users 30 October 2015

 Computer systems consist of software and hardware that are combined to provide a tool to solve specific problems in an efficient manner  Execute programs 30 October 2015

Computer System Hardware 30 October 2015

Course Outline Operating system concepts Operating system concepts Operating system structures Operating system structures Introduction to UNIX/Linux user interface Introduction to UNIX/Linux user interface Processes and threads—scheduling, concurrency, synchronization, etc. Processes and threads—scheduling, concurrency, synchronization, etc. Deadlocks Deadlocks Memory management Memory management Virtual memory Virtual memory File system File system Secondary storage management Secondary storage management 30 October 2015

 Single-user systems  Batch systems  Multiprogrammed systems  Time-sharing systems  Real-time systems  Interrupts, traps, and software interrupts (UNIX signals)  Hardware protection 30 October 2015

 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 30 October 2015

 Directory structure  Browsing directory structure  Useful commands 30 October 2015

 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.) 30 October 2015

 Sample code for UNIX/Linux process management  Cooperating processes  Interprocess communication (IPC)  IPC in UNIX/Linux (pipe, FIFO, socket, message queue, etc.) 30 October 2015

 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,,, etc.) 30 October 2015

 Thread concept (thread, states, attributes, etc.)  User- and kernel-level threads  POSIX threads (the pthread library)  Sample code 30 October 2015

 Basic concepts  Scheduling criteria  Scheduling triggers  Scheduling algorithms  UNIX System V scheduling algorithm  Optimal scheduling  Algorithm evaluation 30 October 2015

 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 30 October 2015

 Classic problems of synchronization  Deadlocks and starvation  Critical regions  Monitors  Synchronization tools used in Solaris, Linux, and Windows  Deadlocks and starvation  Pthread library functions 30 October 2015

 Basic concept  Deadlock characterization  Deadlock handling (prevention, avoidance, detection and recovery)  Banker’s algorithm 30 October 2015

 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 30 October 2015

 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 30 October 2015

 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, …) 30 October 2015

 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.) 30 October 2015

 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) 30 October 2015

 Disk structure and scheduling  Disk management (formatting, boot block, bad blocks, etc.)  Course Recap 30 October 2015

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 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 A program that allocates and deallocates computer system resources in an efficient, fair, and secure manner—a resource manager 30 October 2015

 Execute user programs and make solving user problems easier.  Make the computer system convenient to use.  Use the computer hardware in an efficient manner. 30 October 2015