Distributed Computing Environment (DCE)
Advanced Operating Systems (8320)
What is DCE?
The DCE is a software that supplies a framework and
toolkit for developing client/server applications. The
framework includes a Remote Procedure Call (RPC)
mechanism, a naming (directory) service, a time
service, an authentication service, an authorization
service and a Distributed File System.
DCE runs on all major computing platforms and is
designed to support distributed applications in
heterogeneous hardware and software environments.
DCE is a key technology in three of today's most
important areas of computing: security, the World Wide
Web, and distributed objects.
Largest management unit in DCE is cell.
The highest privileges within a cell are assigned to a role called cell
Major components of DCE within every cell are:
• The security server that is responsible for authentication
• The Cell Directory Server (CDS) that is the repository of resources and Access Control
• The Distributed Time Server that provides an accurate clock for proper functioning of the
The DCE infrastructure supports the
construction and integration of client/server
applications while attempting to hide the
inherent complexity of the distributed
processing from the user [Schill 93].
The OSF DCE is intended to form a
comprehensive software platform on which
distributed applications can be built, executed,
Fundamental distributed services provide tools for software developers to create the
end-user services needed for distributed computing. They include
• Remote Procedure Call, which provides portability, network independence, and secure distributed
• Directory services, which provides a single naming model to allow programmers and maintainers to
identify and access distributed resources more easily.
• Time service, which provides a mechanism to monitor and track clocks in a distributed environment and
accurate time stamps to reduce the load on system administrator.
• Security service, which provides the network with authentication, authorization, and user account
management services to maintain the integrity, privacy, and authenticity of the distributed system.
• Thread service, which provides a simple, portable, programming model for building concurrent
Data-sharing services provide end users with capabilities built upon the fundamental
distributed services. These services require no programming on the part of the end user
and facilitate better use of information. They include
• Distributed file system, which interoperates with the network file system to provide a high-performance,
scalable, and secure file access system.
• Diskless support, which allows low-cost workstations to use disks on servers, possibly reducing the
need/cost for local disks, and provides performance enhancements to reduce network overhead.
Concurrency control, group management, etc
Distributed File Service
Basic System Services
Time, name, process services, etc
RPC and Group Communication
Processes and Threads
Kernel with transport service
Open Grid Services Architecture
Based upon Web Services (ports that are service endpoints)
Web Services Description Language: XML language used to describe Web Service
Universal Description Discovery and Integration: Mechanism needed to discover Web
APIs that can be accessed over a network, such as the Internet, and executed on a remote
system hosting the requested services.
Interoperability between implementations
Extensibility not standardized
United Devices Grid MP
Web Services Based
Grid MP system consists of a set of servers providing grid services
Grid MP resources run a lightweight Agent
Multi-Tiered (P2P) or Client/Server
• Resource Discovery-Unreliable resources
• Replication-Same job executing on multiple machines
Fine Grained Cycle Sharing
Based on Web Services
Uses Resource Description Framework (RDF): An evolutionary stage of the World
WideWeb in which automated software can store, exchange, and use machine-
readable information distributed throughout the web
Distributed Operating Systems & Algorithms, Randy Chow and Theodore Johnson, Addison Wesley,
Distributed Systems principles and paradigms by Andrew S. Tanenbaum, Maarten van Steen, 2002
Kim, K.H., "APIs for Real-Time Distributed Object Programming", IEEE Computer, June 2000, pp.72-80.
Resource Availability Prediction in Fine-Grained Cycle Sharing, Xiaojuan Ren, Seyong Lee, Rudolf
Eigenmann, Saurabh Bagchi, Systems. HPDC'06, Paris, France. June, 2006
Developing the Distributed-Computing OS, Vaughan-Nichols, S.J.; Computer Volume 35, Issue 9, Sept.
2002 Page(s):19 - 21
Kim, J. Thuraisingham, B. Object and Component-Oriented Real-Time Distributed Computing, 2007.