Download What is an Operating System?

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Burroughs MCP wikipedia , lookup

Plan 9 from Bell Labs wikipedia , lookup

Process management (computing) wikipedia , lookup

RSTS/E wikipedia , lookup

Mobile operating system wikipedia , lookup

Unix security wikipedia , lookup

Copland (operating system) wikipedia , lookup

Spring (operating system) wikipedia , lookup

VS/9 wikipedia , lookup

Paging wikipedia , lookup

CP/M wikipedia , lookup

Security-focused operating system wikipedia , lookup

Distributed operating system wikipedia , lookup

Transcript
Welcome!
Operating System Concepts
6th Edition
Abraham Silberschatz
Peter Baer Galvin
Greg Gagne
[email protected]
Operating System Concepts
1.1
Chapter one
Operating System
Course Overview
1. Overview of computer system and OS
2. Concept, principle,method, algorithm,
technology about how OS manages system
resources and provides services for users.
3. Case study: linux, Windows 2000, Free
BSD, Solaris, etc.
4. Practice of linux:
source code analyzing
programming
Operating System Concepts
1.2
Chapter one
 References:
1.操作系统内核与设计原理(Operating System Internals
and Design Principles), William Stalling, 第四版,电子
工业出版社,2002
2. 边干边学:Linux内核学习指导,浙江大学出版社
3. Linux Kernel Internals,2nd Edition
4.操作系统学习指导与考试指导,在杭高校教师合编,浙江
大学出版社,2004
Operating System Concepts
1.3
Chapter one
Evaluation
 Assignments (in English)
 Mid-term Exam (in English, if required)
 Final Exam: (all in English)
Operating System Concepts
1.4
Chapter one
Assignments
 The assignments will be:
 Exercises on theory covered in class
 Better if in English
Labs
Familiar with the linux OS environment
Reading and analyzing of linux source codes,
including important data structure,etc.
 Exercises on programming in linux environment,
including system calls, etc.
Prerequisites
 C Programming skills
 Course on Computer
Organization
Operating System Concepts
1.5
Chapter one
OS Concept Course content (if time permits...)
 Introduction
 Operating system overview.
 Process.
 Threads.
 Concurrency: mutual exclusion and synchronization.
 Concurrency: deadlock and starvation.
 Processor scheduling.
 Memory management.
 Virtual memory.
 I/O management and disk scheduling.
 File management.
Operating System Concepts
1.6
Chapter one
Chapter 1: Introduction
 What is an Operating System?
 Mainframe Systems
 Desktop Systems
 Multiprocessor Systems
 Distributed Systems
 Clustered Systems
 Real -Time Systems
 Embedded Systems
 Computing Environments
Operating System Concepts
1.7
Chapter one
What is an Operating System?
 A program that acts as an intermediary between a
user of a computer and the computer hardware.
 Operating system goals:
Execute user programs and make solving
user problems easier.(e.g. multi-threaded
server)
Make the computer system convenient to
use.(e.g. GUI)
 Use the computer hardware in an efficient manner.
Operating System Concepts
1.8
Chapter one
Computer System Components
1. Hardware – provides basic computing
resources (CPU, memory, I/O devices).
2. Operating system – controls and coordinates
the use of the hardware among the various
application programs for the various users.
3. Applications programs – define the ways in
which the system resources are used to solve
the computing problems of the users
(compilers, database systems, video games,
business programs).
4. Users (people, machines, other computers).
Operating System Concepts
1.9
Chapter one
Abstract View of System Components
Operating System Concepts
1.10
Chapter one
Operating System Definitions
 Resource allocator – manages and allocates
resources.
 Control program – controls the execution of
user programs and operations of I/O devices .
 Kernel – the one program running at all times
(all else being application programs).
Operating System Concepts
1.11
Chapter one
Mainframe Systems
 Reduce setup time by batching similar jobs
 Automatic job sequencing – automatically
transfers control from one job to another. First
rudimentary operating system. (Simple Batch
System:简单批处理系统)
 Resident monitor(常驻内存的监控程序)
 initial control in monitor
 control transfers to job
 when job completes control transfers back to
monitor
Operating System Concepts
1.12
Chapter one
Memory Layout for a Simple Batch System
Operating System Concepts
1.13
Chapter one
Multiprogrammed Batch Systems
(多道程序批处理系统)
Several jobs are kept in main memory at the same time,
and the CPU is multiplexed among them.
Operating System Concepts
1.14
Chapter one
OS Features Needed for Multiprogramming
 I/O routine supplied by the system.
 Memory management – the system must
allocate the memory to several jobs.
 CPU scheduling – the system must choose
among several jobs ready to run.
 Allocation of devices.
Operating System Concepts
1.15
Chapter one
Time-Sharing Systems–Interactive Computing
 The CPU is multiplexed among several jobs
that are kept in memory and on disk (the CPU is
allocated to a job only if the job is in memory).
 A job swapped in and out of memory to the disk.
 On-line communication between the user and
the system is provided; when the operating
system finishes the execution of one command,
it seeks the next “control statement” from the
user’s keyboard.
 On-line system must be available for users to
access data and code.
Operating System Concepts
1.16
Chapter one
Desktop Systems
 Personal computers – computer system




dedicated to a single user.
I/O devices – keyboards, mice, display screens,
small printers.
User convenience and responsiveness.
Can adopt technology developed for larger
operating systems, often individuals have sole
use of computer and do not need advanced
CPU utilization of protection features.
May run several different types of operating
systems (Windows, MacOS, UNIX, Linux)
Operating System Concepts
1.17
Chapter one
Parallel Systems
 Multiprocessor systems with more than one CPU
in close communication.
 Tightly coupled system – processors share
memory and a clock; communication usually
takes place through the shared memory.(紧耦合系
统)
 Advantages of parallel system:
 Increased throughput
 Economy of scale
 Increased reliability
graceful degradation(fault tolerant)
fail-soft systems
Operating System Concepts
1.18
Chapter one
Parallel Systems (Cont.)
 Symmetric multiprocessing (SMP)
 Each processor runs an identical copy of the
operating system.
 Many processes can run at once without
performance deterioration.
 Most modern operating systems support
SMP
 Asymmetric multiprocessing
 Each processor is assigned a specific task;
master processor schedules and allocates
work to slave processors.
 More common in extremely large systems
Operating System Concepts
1.19
Chapter one
Symmetric Multiprocessing Architecture
Operating System Concepts
1.20
Chapter one
Distributed Systems
 Distribute the computation among several
physical processors.
 Loosely coupled system – each processor has
its own local memory; processors communicate
with one another through various
communications lines, such as high-speed
buses or telephone lines.(松耦合系统)
 Advantages of distributed systems.
 Resources Sharing
 Computation speed up – load sharing
 Reliability
 Communications
Operating System Concepts
1.21
Chapter one
Distributed Systems (cont)
 Requires networking infrastructure.
 Local area networks (LAN) or Wide area
networks (WAN)
 May be either client-server or peer-to-peer
systems.
Operating System Concepts
1.22
Chapter one
General Structure of Client-Server
Operating System Concepts
1.23
Chapter one
Clustered Systems(群集系统)
 Clustering allows two or more systems to share
storage.
 Provides high reliability.
 Asymmetric clustering: one server runs the
application while other servers standby.
 Symmetric clustering: all N hosts are running
the application.
Operating System Concepts
1.24
Chapter one
Real-Time Systems(实时系统)
 Often used as a control device in a dedicated
application such as controlling scientific
experiments, medical imaging systems,
industrial control systems, and some display
systems. E.g. VxWorks
 Well-defined fixed-time constraints.
 System design aims at satifying as many timeconstraint processings as possible, not the
overall throughput or response time
 Real-Time systems may be either hard or soft
real-time.(硬实时系统、软实时系统)
Operating System Concepts
1.25
Chapter one
Real-Time Systems (Cont.)
 Hard real-time:
 Secondary storage limited or absent, data
stored in short term memory, or read-only
memory (ROM)
 Conflicts with time-sharing systems, not
supported by general-purpose operating
systems.
 Soft real-time
 Limited utility in industrial control or robotics
 Useful in applications (multimedia, virtual
reality) requiring advanced operating-system
features.
Operating System Concepts
1.26
Chapter one
Embedded Systems(嵌入式系统)
 Personal Digital Assistants (PDAs:个人数字助理)
 Cellular telephones(蜂窝电话)
 IP phones
 Digitized appliances
 features:
 Limited memory
 Slow processors
 Small display screens
 Real-time requirements(maybe)
Operating System Concepts
1.27
Chapter one
Migration of Operating-System Concepts and Features
Operating System Concepts
1.28
Chapter one
Computing Environments
 Traditional computing
 Web-Based Computing
 Embedded Computing
Operating System Concepts
1.29
Chapter one