Chapter 3: Operating Systems

Slides:



Advertisements
Similar presentations
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3: Operating Systems Computer Science: An Overview Tenth Edition.
Advertisements

1. 2 The Evolution of Operating Systems : §The single processing machines of 1940’s and 1950’s were not very flexible or efficient. §The processing is.
Chapter 11 Operating Systems
1 Operating Systems Ch An Overview. Architecture of Computer Hardware and Systems Software Irv Englander, John Wiley, Bare Bones Computer.
Operating system Part three Introduction to computer, 2nd semester, 2010/2011 Mr.Nael Aburas Faculty of Information.
Chapter 3 Operating Systems. 2 Chapter 3 Operating Systems 3.1 The Evolution of Operating Systems 3.2 Operating System Architecture 3.3 Coordinating the.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3: Operating Systems Computer Science: An Overview Tenth Edition.
Part two. 3.2 operating system architecture  Software have two categories  Application software  System software  Application software: consists of.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3: Operating Systems Computer Science: An Overview Tenth Edition.
Introduction to Operating Systems
Operating system Part two Introduction to computer, 2nd semester, 2010/2011 Mr.Nael Aburas Faculty of Information.
Chapter 3 Operating Systems Introduction to CS 1 st Semester, 2015 Sanghyun Park.
Chapter 2 Operating System Overview Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
Operating System A program that controls the execution of application programs An interface between applications and hardware 1.
Part II: Software In part II, we focus on topics associated with software. In particular, we will investigate the discovery, representation, and communication.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3: Operating Systems Computer Science: An Overview Eleventh Edition.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3: Operating Systems Computer Science: An Overview Tenth Edition.
INVITATION TO COMPUTER SCIENCE, JAVA VERSION, THIRD EDITION Chapter 6: An Introduction to System Software and Virtual Machines.
Computers Operating System Essentials. Operating Systems PROGRAM HARDWARE OPERATING SYSTEM.
Lecture 8: 9/19/2002CS149D Fall CS149D Elements of Computer Science Ayman Abdel-Hamid Department of Computer Science Old Dominion University Lecture.
1 Sec (3.2) Operating System Architecture OS. 2 Software dividing into two categories: 1. Application software 2. System Software  Operating System 
Chapter 3 Operating Systems © 2007 Pearson Addison-Wesley. All rights reserved.
Operating Systems © 2007 Pearson Addison-Wesley. All rights reserved.
Chapter 3: Operating Systems
Chapter 2 Operating System Overview Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
We will focus on operating system concepts What does it do? How is it implemented? Apply to Windows, Linux, Unix, Solaris, Mac OS X. Will discuss differences.
Assoc. Prof. Dr. Ahmet Turan ÖZCERİT.  What Operating Systems Do  Computer-System Organization  Computer-System Architecture  Operating-System Structure.
Chapter 3 Operating Systems. © 2005 Pearson Addison-Wesley. All rights reserved 3-2 Chapter 3 Operating Systems 3.1 The Evolution of Operating Systems.
CS4315A. Berrached:CMS:UHD1 Introduction to Operating Systems Chapter 1.
Operating Systems Salihu Ibrahim Dasuki (PhD) CSC102 INTRODUCTION TO COMPUTER SCIENCE.
CT101: Computing Systems Introduction to Operating Systems.
1 OPERATING SYSTEMS. 2 CONTENTS 1.What is an Operating System? 2.OS Functions 3.OS Services 4.Structure of OS 5.Evolution of OS.
Introduction to Operating Systems Concepts
Introduction to Operating Systems
Processes and threads.
Operating System Review
Process Management Process Concept Why only the global variables?
OPERATING SYSTEMS CS3502 Fall 2017
Chapter 2: System Structures
An Introduction to Operating Systems
Introduction to Operating System (OS)
IS310 Hardware & Network Infrastructure Ronny L
Chapter 3: Operating Systems
Operating System Review
Shell & Kernel Concepts in Operating System
Operating System Architecture OS
Operating Systems.
OS Architecture.
Operating Systems.
Process Description and Control
Introduction to Operating Systems
Chapter 3 Operating Systems
Chapter 3: Operating Systems
Chapter 3: Operating Systems
Operating System Introduction.
CS149D Elements of Computer Science
Introduction to Operating Systems
The Main Features of Operating Systems
Chapter 3: Operating Systems
Chapter 3: Operating Systems Computer Science: An Overview
Chapter 3: Operating Systems
Software - Operating Systems
Chapter 3: Operating Systems
Chapter 2 Operating System Overview
Operating System Overview
Chapter 3: Process Management
Necessary Background for OS
Presentation transcript:

Chapter 3: Operating Systems Computer Science: An Overview Twelfth Edition

Chapter 3: Operating Systems The History of Operating Systems Operating System Architecture Coordinating the Machine’s Activities Handling Competition Among Processes Security

Functions of Operating Systems Oversee operation of computer Store and retrieve files Schedule programs for execution Coordinate the execution of programs Resource management

Queue FIFO: First in First Out LIFO : Last in First Out

Evolution of Shared Computing Batch processing Interactive processing Requires real-time processing Time-sharing/Multitasking Implemented by Multiprogramming Multiprocessor machines Load balancing

Medical devices, vehicle electronics, home appliances, cell phones, or other hand-held computers. The computer systems found in these devices are known as embedded systems.

Batch processing

Interactive processing

Types of Software Application software System software Performs specific tasks for users System software Provides infrastructure for application software Consists of operating system and utility software utility software consists of software units that extend (or perhaps customize) the capabilities of the operating system.

Software classification

Kernel The kernel is a computer program that is the core of a computer's operating system, with complete control over everything in the system. It is the first program loaded on start-up. It handles the rest of start-up as well as input/output requests from software, translating them into data-processing instructions for the central processing unit. It handles memory and peripherals like keyboards, monitors, printers, speakers.

Operating System Components User Interface: Communicates with users Text based (Shell) Graphical user interface (GUI) Kernel: Performs basic required functions File manager Device drivers Memory manager (virtual memory) Scheduler and dispatcher

The user interface acts as an intermediary between users and the operating system kernel

File Manager Directory (or Folder): A user-created bundle of files and other directories (subdirectories) Directory Path: A sequence of directories within directories

Memory Manager Allocates space in main memory May create the illusion that the machine has more memory than it actually does (virtual memory) by playing a “shell game” in which blocks of data (pages) are shifted back and forth between main memory and mass storage

Virtual memory Paging: The memory manager may create the illusion of additional memory space by rotating programs and data back and forth between main memory and mass storage.

Getting it Started (Bootstrapping) Boot loader: Program in ROM (example of firmware) Run by the CPU when power is turned on Transfers operating system from mass storage to main memory Executes jump to operating system

The booting process

Processes Process: The activity of executing a program Process State: Current status of the activity Program counter General purpose registers Related portion of main memory

Process Administration Scheduler: Adds new processes to the process table and removes completed processes from the process table Dispatcher: Controls the allocation of time slices to the processes in the process table The end of a time slice is signaled by an interrupt.

Time-sharing between process A and B

Process State As a process executes, it changes state new: The process is being created running: Instructions are being executed waiting: The process is waiting for some event to occur (such as an I/O completion or reception of a signal)‏ ready: The process is waiting to be assigned to a processor terminated: The process has finished execution

HERE….

Process Control Block (PCB)‏ Information associated with each process Process state Program counter CPU registers CPU scheduling information Memory-management information Accounting information I/O status information

Preemption, Interrupt Time slices to execute processes

Thread: a thread of execution is the smallest sequence of programmed instructions that can be managed independently by a scheduler, which is typically a part of the operating system

Handling Competition for Resources Semaphore: A “control flag” Critical Region: A group of instructions that should be executed by only one process at a time Mutual exclusion: Requirement for proper implementation of a critical region

Deadlock Processes block each other from continuing Conditions required for deadlock 1. Competition for non-sharable resources 2. Resources requested on a partial basis 3. An allocated resource can not be forcibly retrieved One process may have access to the computer’s printer but be waiting for access to the computer’s CD player, while another process has access to the CD player but is waiting for the printer.

A deadlock resulting from competition for nonshareable railroad intersections

Killing a process Holding data for output at a later but more convenient time is called spooling. Like in a printer. a file manager may allocate file access according to the needs of the processes, allowing several processes to have read access but allowing only one to have write access.

777 permissions of Linux for file access 0 – no permission 1 – execute 2 – write 3 – write and execute 4 – read 5 – read and execute 6 – read and write 7 – read, write, and execute

Multi-Core Operating Systems Traditional time-sharing/multitasking systems give the illusion of executing many processes at once by switching rapidly between time slices faster than a human can perceive. Modern systems continue to multitask in this way, but in addition, the latest multi-core CPUs are genuinely capable of running two, four, or many more processes simultaneously.

Security Attacks from outside Problems Insecure passwords Sniffing software (recording your activities) Counter measures Auditing software (record and analyze)

Security (continued) Attacks from within Problem: Unruly processes Counter measures: Control process activities via privileged modes and privileged instructions Accessing to the memory of other processes.

Trojan Horses a Trojan horse is a malicious program that is disguised as legitimate software. Like the gift horse left outside the gates of Troy by the Greeks, Trojan Horses appear to be useful or interesting to an unsuspecting user, but are actually harmful