Operating System Concepts

Anuncio
Operating System
Concepts
Tei-Wei Kuo
[email protected]
Dept. of Computer Science and
Information Engineering
National Taiwan University
Syllabus
ƒ 授課教授: 郭大維 @ Room 315.資工系. NTU.TW
ƒ 助教: 陳雅淑 ([email protected])
張原豪 ([email protected] )
ƒ 上課時間: Wednesday 14:20-17:20
ƒ 教室:資 103
ƒ 教科書:
Silberschatz, Galvin, and Gagne, “Operating
System Principles,” 7th Edition, John Wiley
& Sons, Inc..
ƒ 成績評量:(subject to changes.):
期中考(40%), 期末考(40%), 作業(20%)
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Projects – Nachos 4.0
ƒ Not Another Completely Heuristic Operating
System
ƒ Written by Tom Anderson and his students at
UC Berkeley
http://www.cs.washington.edu/homes/tom/nachos/
ƒ It simulates an MIPS architecture on host
systems
(Unix/Linux/Windows/MacOS X)
ƒ User programs need a cross-compiler (target
MIPS)
ƒ Nachos appears as a single threaded process to
the host operating system.
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Contents
1. Introduction
2. System Structures
3. Process Concept
4. Threaded Programming
5. Process Scheduling
6. Synchronization
7. Deadlocks
8. Memory-Management Strategies
9. Virtual-Memory Management
10. File System
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Chapter 1. Introduction
Introduction
ƒ What is an Operating System?
ƒ A basis for application programs
ƒ An intermediary between users and
hardware
ƒ Amazing variety
ƒ Mainframe, personal computer (PC),
handheld computer, embedded
computer without any user view
Convenient vs Efficient
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Computer System Components
User
User
.................
User
Application Programs
Operating System
Hardware
compilers,
word processors,
spreadsheets,
browsers, etc.
CPU, I/O devices,
memory, etc.
ƒ OS – a government/environment provider
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
User View
ƒ The user view of the computer varies by
the interface being used!
ƒ Examples:
ƒ Personal Computer Æ Ease of use
ƒ Mainframe or minicomputer Æ
maximization of resource utilization
ƒ Efficiency and fair share
ƒ Workstations Æ compromise between
individual usability & resource utilization
ƒ Handheld computer Æ individual usability
ƒ Embedded computer without user view Æ
run without user intervention
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
System View
ƒ A Resource Allocator
ƒ CPU time, Memory Space, File
Storage, I/O Devices, Shared Code,
Data Structures, and more
ƒ A Control Program
ƒ Control execution of user programs
ƒ Prevent errors and misuse
ƒ OS definitions – US Dept.of Justice
against Microsoft in 1998
ƒ The stuff shipped by vendors as an OS
ƒ Run at all time
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
System Goals
ƒ Two Conflicting Goals:
ƒ Convenient for the user!
ƒ Efficient operation of the computer
system!
ƒ We should
ƒ recognize the influences of operating
systems and computer architecture on
each other
ƒ and learn why and how OS’s are by
tracing their evolution and predicting what
they will become!
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
UNIX Architecture
useruser
user
user user user
user
User
interface
System call
interface
Shells, compilers, X, application programs, etc.
CPU scheduling, signal handling,
virtual memory, paging, swapping,
file system, disk drivers, caching/buffering, etc.
Kernel interface
to the hardware
terminal controller, terminals,
physical memory, device controller,
devices such as disks, memory, etc.
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
UNIX
Computer-System Structure
ƒ Objective: General knowledge of the
structure of a computer system.
tape
drivers
printer
CPU
printer
controller
memory
controller
memory
tape-drive
controller
disk
controller
disks
ƒ Device controllers: synchronize and manage access to devices.
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Booting
ƒ Bootstrap program:
ƒ Initialize all aspects of the system,
e.g., CPU registers, device
controllers, memory, etc.
ƒ Load and run the OS
ƒ Operating system: run init to initialize
system processes, e.g., various
daemons, login processes, after the
kernel has been bootstrapped.
(/etc/rc* & init or /sbin/rc* & init)
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Interrupt
ƒ Hardware interrupt, e.g. services
requests of I/O devices
ƒ Software interrupt, e.g. signals,
invalid memory access, division by
zero, system calls, etc – (trap)
process execution
interrupt
handler
return
ƒ Procedures: generic handler or
interrupt vector (MS-DOS,UNIX)
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Interrupt Handling Procedure
interrupted process
system stack
interrupted
address,
registers
......
fixed address
per interrupt
type
handler
ƒ Saving of the address of the interrupted
instruction: fixed locations or stacks
ƒ Interrupt disabling or enabling issues: lost
interrupt?!
prioritized interrupts Æ masking
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Interrupt Handling Procedure
ƒ Interrupt Handling
Î Save interrupt information
Î OS determine the interrupt type (by polling)
Î Call the corresponding handlers
Î Return to the interrupted job by the restoring
important information (e.g., saved return addr. Æ
program counter) Interrupt
-------
Vector
indexed by
a unique
device
number
0
1
n
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
-------------
Interrupt Handlers
(Interrupt Service
Routines)
Storage Structure
registers
CPU
cache
HW-Managed
Primary Storage
• volatile storage
memory
SW-Managed
Secondary Storage
• nonvolatile storage
ƒ Access time: a
cycle
ƒ Access time:
several cycles
ƒ Access time: many
cycles
Magnetic Disks
Tertiary Storage
• removable media
CD-ROMs/DVDs
* Differences:
Size, Cost,
Speed, Volatility
Jukeboxes
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Memory
ƒ
ƒ
R1
R2
ƒ
R3
.
.
.
Device
Controller
Memory
ƒ
Processor can have direct access!
Intermediate storage for data in the
registers of device controllers
Memory-Mapped I/O (PC & Mac)
(1) Frequently used devices
(2) Devices must be fast, such as video
controller, or special I/O instructions
is used to move data between
memory & device controller
registers
Programmed I/O – polling
ƒ
or interrupt-driven handling
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Magnetic disks
r/w
head
spindle
sector
track
ƒ Transfer Rate
ƒ RandomAccess Time
arm
assembly
cylinder
disk
arm
platter
ƒ Seek time
in x ms
ƒ Rotational
latency in y
ms
ƒ 60~200
times/sec
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Magnetic Disks
ƒ Disks
ƒ Fixed-head disks:
ƒ More r/w heads v.s. fast track switching
ƒ Moving-head disks (hard disk)
ƒ Primary concerns:
ƒ Cost, Size, Speed
ƒ Computer Æ host controller Æ disk controller
Æ disk drives (cache ÅÆ disks)
ƒ Floppy disk
ƒ slow rotation, low capacity, low density, but
less expensive
ƒ Tapes: backup or data transfer bet machines
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Storage Hierarchy
register
High hitting rate
Speed
• instruction & data cache
Cache
• combined cache
Main Memory
Volatile Storage
Faster than magnetic
disk – nonvolatile?!
Alias: RAM Disks
Electronic Disk
Cost
Magnetic Disk
Optical Disk
Sequential
Access
Magnetic Tape
XX GB/350F
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
I/O Structure
ƒ Device controllers are responsible of moving
data between the peripheral devices and their
local buffer storages.
tape
drivers
printer
CPU
printer
controller
registers buffers
memory
controller
tape-drive
controller
DMA
registers
buffers
memory
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
disk
I/O Structure
ƒ
I/O operation
a. CPU sets up specific controller registers
within the controller.
b. Read: devices Æ controller buffers Æ
memory
Write: memory Æ controller buffers Æ
devices
c. Notify the completion of the operation by
triggering an interrupt
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
DMA
ƒ
Goal: Release CPU from handling excessive
interrupts!
ƒ
E.g. 9600-baud terminal
2-microsecond service / 1000 microseconds
High-speed device:
2-microsecond service / 4 microseconds
ƒ
Procedure
ƒ
ƒ
ƒ
ƒ
Execute the device driver to set up the
registers of the DMA controller.
DMA moves blocks of data between the
memory and its own buffers.
Transfer from its buffers to its devices.
Interrupt the CPU when the job is done.
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Single-Processor Systems
ƒ Characteristics: One Main CPU
ƒ Special-Purpose Processors, e.g.,
Disk-Controller Microprocessors.
ƒ Examples:
ƒ Personal Computers (Since 1970’s),
Mainframes.
ƒ Operating Systems
ƒ Batching Æ Multiprogramming Æ
Time-Sharing
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Parallel Systems
ƒ Tightly coupled: have more than one
processor in close communication sharing
computer bus, clock, and sometimes
memory and peripheral devices
ƒ Loosely coupled: otherwise
ƒ Advantages
ƒ Speedup – Throughput
ƒ Lower cost – Economy of Scale
ƒ More reliable – Graceful Degradation Æ
Fail Soft (detection, diagnosis, correction)
• A Tandem or HP-NonStop fault-tolerance solution
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Parallel Systems
ƒ Symmetric multiprocessing model: each
processor runs an identical copy of the OS
ƒ Asymmetric multiprocessing model: a masterslave relationship
~ Dynamically allocate or pre-allocate tasks
~ Commonly seen in extremely large systems
~ Hardware and software make a difference?
ƒ Trend: the dropping of microporcessor cost
Î OS functions are offloaded to slave
processors (back-ends)
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Parallel Systems
ƒ The Recent Trend:
ƒ Hyperthreading Processors
ƒ Multiple Cores over a Single Chip
ƒ N Standard Processors!
ƒ Loosely-Coupled Systems
ƒ Processors do not share memory or a clock
ƒ Blade Servers
ƒ Each blade-processor board boots
independently and runs its own OS.
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Clustered Systems
ƒ Definition: Clustered computers which
share storage and are closely linked via
LAN networking.
ƒ Advantages: high availability, performance
improvement, etc.
ƒ Types
ƒ Asymmetric/symmetric clustering
ƒ Parallel clustering – multiple hosts that
access the same data on the shared
storage.
ƒ Distributed Lock Manager (DLM)
ƒ Oracle
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Operating-System Structure
ƒ Simple batch systems
ƒ Resident monitor – Automatically transfer
control from one job to the next
ƒ Spooling (Simultaneous Peripheral
Operation On-Line)
ƒ Replace sequential-access devices with
random-access device
disks
card reader
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
disks
CPU
printer
Operating-System Structure
ƒ Multiprogramming increases CPU
utilization by organizing jobs so
that the CPU always has one to
execute – Early 1960
ƒ Job scheduling and CPU
scheduling
ƒ Goal : efficient use of scare
resources
OS
job1
job2
job3
disk
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Operating-System Structure
ƒ Time sharing (or
multitasking) is a logical
extension of
multiprogramming!
ƒ Started in 1960s and
become common in 1970s.
ƒ An interactive (or hand-on)
computer system
ƒ Multics, IBM OS/360
ƒ Virtual Memory
ƒ Physical Address
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
on-line file system
virtual memory
sophisticated CPU scheduling
job synchronization
protection & security
......
and so on
disk
Operating-System Operations
ƒ An Interrupt-Driven Architecture for
Modern OS’s
ƒ Events are almost always signaled
by the occurrence of an interrupt or a
trap (or an exception).
ƒ Protection of User Programs and OS
ƒ Multiprogramming
ƒ Sharing of Hardware and Software
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Hardware Protection
ƒ Goal:
ƒ Prevent errors and misuse!
ƒ E.g., input errors of a program in a
simple batch operating system
ƒ E.g., the modifications of data and code
segments of another process or OS
ƒ Dual-Mode Operations – a mode bit
ƒ User-mode executions except those
after a trap or an interrupt occurs.
ƒ Monitor-mode (system mode, privileged
mode, supervisor mode)
ƒ Privileged instruction:machine
instructions that may cause harm
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Hardware Protection
ƒ System Calls – trap to OS for executing
privileged instructions.
ƒ Resources to protect
ƒ I/O devices, Memory, CPU
ƒ I/O Protection (I/O devices are scare
resources!)
ƒ I/O instructions are privileged.
ƒ User programs must issue I/O through
OS
ƒ User programs can never gain control
over the computer in the system mode.
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Hardware Protection
ƒ Memory Protection
kernel
job1
job2
……
……
ƒ Goal: Prevent a user program from
modifying the code or data structures
of either the OS or other users!
ƒ Instructions to modify the memory
space for a process are privileged.
Base register
Limit register
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Ù Check for every
memory address by
hardware
Hardware Protection
ƒ CPU Protection
ƒ Goal
ƒ Prevent user programs from sucking
up CPU power!
ƒ Use a timer to implement time-sharing
or to compute the current time.
ƒ Instructions that modify timers are
privileged.
ƒ Computer control is turned over to OS
for every time-slice of time!
ƒ Terms: time-sharing, context switch
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
System Components –
Process Management
ƒ Process Management
ƒ Process: An Active Entity
ƒ Physical and Logical Resources
ƒ Memory, I/O buffers, data, etc.
Program
(code)
ƒ Data Structures Representing Current
Activities:
+ Program Counter
Stack
Data Section
CPU Registers
….
And More
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
System Components –
Process Management
ƒ Services
ƒ
ƒ
ƒ
ƒ
ƒ
Process creation and deletion
Process suspension and resumption
Process synchronization
Process communication
Deadlock handling
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
System Components – MainMemory Management
ƒ Memory: a large array of words or bytes,
where each has its own address
ƒ OS must keep several programs in
memory to improve CPU utilization and
user response time
ƒ Management algorithms depend on the
hardware support
ƒ Services
ƒ Memory usage and availability
ƒ Decision of memory assignment
ƒ Memory allocation and deallocation
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
System Components – FileSystem Management
ƒ Goal:
ƒ A uniform logical view of information
storage
ƒ Each medium controlled by a device
ƒ Magnetic tapes, magnetic disks, optical
disks, etc.
ƒ OS provides a logical storage unit: File
ƒ Formats:
ƒ Free form or being formatted rigidly.
ƒ General Views:
ƒ A sequence of bits, bytes, lines, records
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
System Components – FileSystem Management
ƒ Services
ƒ File creation and deletion
ƒ Directory creation and deletion
ƒ Primitives for file and directory
manipulation
ƒ Mapping of files onto secondary
storage
ƒ File Backup
* Privileges for file access control
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
System Components –
Secondary-Storage Management
ƒ Goal:
ƒ On-line storage medium for
programs & data
ƒ Backup of main memory
ƒ Services for Disk Management
ƒ Free-space management
ƒ Storage allocation, e.g., continuous
allocation
ƒ Disk scheduling, e.g., FCFS
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
System Components –Tertiary
Storage Devices
ƒ Goals:
ƒ Backups of disk data, seldom-used data,
and long-term archival storage
ƒ Examples:
ƒ Magnetic tape drives and their tapes, CD &
DVD drives and platters.
ƒ Services – OS Supports or Applications’
Duty
ƒ Device mounting and unmounting
ƒ Exclusive allocation and freeing
ƒ Data transfers from tertiary devices to
secondary storage devices.
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
System Components – I/O
System Management
ƒ Goal:
ƒ Hide the peculiarities of specific
hardware devices from users
ƒ Components of an I/O System
ƒ A buffering, caching, and spooling
system
ƒ A general device-driver interface
ƒ Drivers
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Caching
register
High hitting rate
Speed
Cache
• instruction & data cache
• combined cache
Main Memory
Volatile Storage
Electronic Disk
Faster than magnetic
disk – nonvolatile?!
Alias: RAM Disks
Cost
Magnetic Disk
Optical Disk
Magnetic Tape
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Sequential
Access
XX GB/350F
Caching
Level
1
2
3
4
Name
Registers
Cache
Memory
Disk
Typical Size < 1KB
> 16MB
> 16GB
> 100GB
Implementat
ion Strategy
Custom memory
On-chip or offwith multiple ports, chip CMOS
CMOS
SRAM
CMOS DRAM
Magnetic Disks
Access
Time (ns)
0.25 – 0.5
0.5 – 2.5
80 – 250
5,000,000
Bandwidth
(MB/s)
20,000 –
100,000
5000 –
10,000
1000 – 5000 20 – 150
Managed by Compiler
Hardware
OS
OS
Backup by
Memory
Disk
CD/Tape
Cache
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Caching
ƒ Caching
ƒ Information is copied to a faster storage
system on a temporary basis
ƒ Assumption: Data will be used again soon.
ƒ Programmable registers, instr. cache, etc.
ƒ Cache Management
ƒ Cache Size and the Replacement Policy
ƒ Movement of Information Between
Hierarchy
ƒ Hardware Design & Controlling Operating
Systems
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Caching
ƒ Coherency and Consistency
ƒ Among several storage levels (vertical)
ƒ Multitasking vs unitasking
ƒ Among units of the same storage level ,
(horizontal), e.g. cache coherency
ƒ Multiprocessor or distributed systems
CPU
Cache
CPU
Memory
cache
Memory
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Protection and Security
ƒ Goal
ƒ Resources are only allowed to be
accessed by authorized processes.
ƒ Definitions:
ƒ Protection – any mechanism for controlling
the access of processes or users to the
resources defined by the computer system.
ƒ Security – Defense of a system from
external and internal attacks, e.g., viruses,
denial of services, etc.
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Protection and Security
ƒ Protected Resources
ƒ Files, CPU, memory space, etc.
ƒ Protection Services
ƒ Detection & controlling mechanisms
ƒ Specification mechanisms
ƒ Distinguishing of Users
ƒ User names and ID’s
ƒ Group names and GID’s
ƒ Privilege Escalating, e.g., Setuid in Unix
ƒ To gain extra permissions for an activity.
ƒ Remark: Reliability!
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Distributed Systems
ƒ Definition: Loosely-Coupled Systems –
processors do not share memory or a clock
ƒ Heterogeneous vs Homogeneous
ƒ Advantages or Reasons
ƒ Resource sharing: computation power,
peripheral devices, specialized hardware
ƒ Computation speedup: distribute the
computation among various sites – load
sharing
ƒ Reliability: redundancy Æ reliability
ƒ Communication: X-window, email
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Distributed Systems
ƒ Distributed systems depend on
networking for their functionality.
ƒ Networks vary by the protocols used.
ƒ TCP/IP, ATM, etc.
ƒ Types – distance
ƒ Local-area network (LAN)
ƒ Wide-area network (WAN)
ƒ Metropolitan-area network (MAN)
ƒ Small-area network – distance of few feet
ƒ Media – copper wires, fiber strands,
satellite wireless transmission, infrared
communication,etc.
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Real-Time Embedded Systems
ƒ Embedded Computers – Most Prevalent Form
of Computers
ƒ Have a wide variety ranged from car engines to
VCR’s.
ƒ General-purpose computers with standard OS’s,
HW devices with or without embedded OS’s
ƒ Standalone units or members of networks and
the Web
ƒ Tend to have specific tasks and almost always
run real-time operating systems.
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Real-Time Embedded Systems
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Real-Time Embedded Systems
ƒ Definition: A real-time system is a
computer system where a timely
response by the computer to external
stimuli is vital!
ƒ Hard real-time system: The system
has failed if a timing constraint, e.g.
deadline, is not met.
ƒ All delays in the system must be
bounded.
ƒ Many advanced features are absent.
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Real-Time Embedded Systems
ƒ Soft real-time system: Missing a
timing constraint is serious, but does
not necessarily result in a failure
unless it is excessive
ƒ A critical task has a higher priority.
ƒ Supported in most commercial OS.
ƒ Real-time means on-time instead of
fast
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Multimedia Systems
ƒ Multimedia Data
ƒ Audio and video files and conventional
files
ƒ Multimedia data must be delivered
according to certain time restrictions (e.g.,
30 frames per second)
ƒ Variety on Platforms
ƒ Desktop personal computers, Personal
Digital Assistant (PDA), cellular
telephones, etc.
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Handheld Systems
ƒ Handheld Systems
ƒ E.g., Personal Digital Assistant (PDA) and
cellular phones.
ƒ New Challenges – convenience vs portability
ƒ Limited Size and Weight
ƒ Small Memory Size (e.g., 512KB ~ 128MB)
ƒ No Virtual Memory
ƒ Slow Processor
ƒ Battery Power
ƒ Small display screen
ƒ Web-clipping
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Computing Environments
ƒ Evolving Environments
ƒ Transition from the period of scarce
resources to the period of ubiquitous access!
ƒ In the past, portability is achieved by
laptops!
ƒ Remote access is supported in a limited way.
Mainframes are prevalent!
ƒ Now, PC’s, PDA, and various equipments
are connected!
ƒ High speed networks are available at home
and office! Web-computing is popular
(e.g.,portals).
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Computing Environments
ƒ Client-Server Systems
ƒ Trend: The functionality of clients is
improved in the past decades.
ƒ Categories:
ƒ Compute-server systems
ƒ File-server systems
ƒ Network Operating Systems
ƒ Autonomous computers
ƒ A distributed operating system – a
single OS controlling the network.
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Computing Environments
ƒ Peer-to-Peer Systems
ƒ Characteristics: Client and server roles
depend on whether who is requesting
or providing a service.
ƒ Network connectivity is an essential
component.
ƒ Service Availability and Discovery
ƒ Registration of services: a centralized
lookup service or not
ƒ A discovery protocol
ƒ Issues:
ƒ Legal problems in exchanging files.
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Computing Environments
ƒ Web-Based Computing
ƒ Web Technology
ƒ Portals, network computers, etc.
ƒ Network connectivity
ƒ New categories of devices
ƒ Load balancers
ƒ Embedded Computing
ƒ Car engines, robots, VCR’s, home automation
ƒ Embedded OS’s often have limited features.
* All rights reserved, Tei-Wei Kuo, National Taiwan University, 2005.
Descargar