Client/Server Computing:

Download Report

Transcript Client/Server Computing:

Client/Server
Computing:
Clients, Severs, &
Operating Systems
The Martian C/S (Part 2)
PCMag: 7/1/97 NOS
PCMag: Beyond Unix
Peer-to-Peer
• Pros:
– Simple to set up
– Efficient for small groups
– Allows resource sharing
• Cons:
– Security is limited
– no mechanism for large scale
sharing
– Inefficient for large groups
– Bad for important applications
Anatomy of a Server
program
• Role is to serve multiple clients
• Waits for client-initiated
requests
• Multitasking: many requests at
once
• Priority Queue
• Background task activities
• Mission-critical application
• Scaleable
Basic Server
requirements of an OS
•
•
•
•
•
•
•
•
•
Preemptive Multi-tasking
Prioritization of tasks
Synchronization (Semaphores)
Local/Remote transparent
Thread capable
Resource protection (Sandbox1)
High performance file system
Memory managing (Sandbox2)
Extendable
Extended OS services
• Ubiquitous communications
• Flexible access to shared
resources
• Network Management
• Global dirs & Yellow Pages
• Authentication services
• Time, Database, TP monitoring
• Object Oriented Services
• Web, DNS, DHCP, etc.
Anatomy of a Client
• C/S systems are client centric
• Non-GUI clients
– ATM, barcode readers, cellphones
– daemon programs, testers, agents
• GUI clients
– human interaction
– occasional requests
– Serial in nature
• OOUI clients
– Non-serial tasks
OOUI
• GUI
– application centric
– WIMP interface
• OOUI
–
–
–
–
–
–
object centric
transparent access to applications
seamless OS extension
drag-and-drop interface
stated interface
user friendly
Client requirements of
an OS
•
•
•
•
•
RPC mechanism
File transfer
Task priorities
Interprocess communication
Threads & multitasking
Server Scalability
• Simple
• Multiprocessing
– Asymmetric(hierarchy)
– Symmetric (equality)
• Multiservers
OS comparisons: Clients
• Client centric
• DOS & Win 3.x limited
potential
• Win95 ok only (OS/2)
• 32-bit system required
OS comparisons:
Servers
• IntranetWare
– Netware File&print server
standard
• NT Server 4.0
– most new development
– integration with BackOffice
• OS/2
• Un*x
– binary compatibility
• Microkernels