(CDE) 2.1

Data Sheet

The Open Group

CDE Image

The Common Desktop Environment (CDE) Release 2.1

The Common Desktop Environment (CDE) is an integrated graphical user interface for open systems desktop computing. It delivers a single, standard graphical interface for the management of data and files (the graphical desktop) and applications. This unified desktop for open systems helps get the work done rather than get in the way. CDE's primary benefits -- deriving from ease-of-use, consistency, configurability, portability, distributed design, and protection of investment in today's applications -- make open systems desktop computers as easy to use as PCs, but with the added power of local and network resources available at the click of a mouse. CDE maintains compatibility with thousands of existing UNIX system-based applications.

The CDE Front Panel

New in CDE 2.1
  • Thread-safe libraries
  • 64-bit system support
  • An X-based printing solution to implement a standard way of printing from any application
  • An enhanced, SGML-based online documentation browser including the complete documentation set
  • Use of the same SGML format (DocBook) for authoring help and documentation
  • Internationalization enhancements for vertical text, "on-the-spont" input, and user-defined characters for Asian languages
  • Ease-of-programming features including traits and a uniform transfer model
  • Integration with the "pluggable authentication modules" technology (PAM) providing the capability for a single sign-on for CDE users
  • CDE & Motif 2.0 style guide convergence
CDE Delivers the Desktop and Manageability

CDE was designed with end users, software developers, and system administrators in mind. It gives end users a consistent, customizable, network-aware graphical user interface across workstations and PCs. CDE gives software developers a single set of graphical user interface (GUI) and desktop programming interfaces for all platforms that support the X Window System,TM simplifying the task of creating and distributing cross-platform applications. In addition, CDE gives system administrators a degree of control over the enterprise desktop computing environment that has been lost in the move from centralized to client-server or distributed computing.

CDE includes session management, window and workspace management, graphical file and object management, transparent data interchange across platforms and applications, multi-user collaboration, desktop productivity tools, a context-sensitive help system, an on-line documentation browser, network services, an application builder, industry-standard graphical user interface toolkits, and configuration and management utilities.

CDE incorporates the industry-standard Motif 2.1 application programming interface (API) and provides additional APIs for key desktop services, such as interapplication communication and group scheduling, across platforms. CDE also provides an integrated, multimedia email facility.

Most of the world's major open systems vendors have implemented CDE. The Open Group brand for CDE indicates products which conform to the CDE specifications. CDE enables you to consider the benefits of workstations from multiple vendors for use in networked distributed environments.

The CDE Front Panel
Figure 1. Users can manage most aspects of their CDE work environment, including multiple "workspaces," through objects on the CDE "FrontPanel" pictured above.

End-User Benefits

CDE provides an easy-to-use, visually attractive and inviting environment that is consistent with PC behavior. It brings the power of distributed systems to the end user's desk, yet masks the complexity of such environments. Using an object-oriented approach, CDE supports easy access to applications and data regardless of where they reside on the network, or on what open system platform.

The Common Desktop Environment is intended to

CDE also

Software Developer Benefits

CDE provides software developers with a consistent set of industry-standard APIs, including the X Window System, OSF/Motif, direct manipulation (drag-and-drop) protocols, and common services for on-line help and on-line documentation utilizing the same SGML format, application integration, and internationalization. By providing APIs that are common across multiple open systems hardware and software platforms, CDE allows developers to make efficient use of the time and money allocated for porting and testing.

The Common Desktop Environment is intended to

System Administrator Benefits

CDE provides system administrators with a common method of installing and integrating applications on various platforms in a distributed, multi-user environment. It also provides a method for remote configuration and maintenance of an individual user's or a group of users' CDE environment. The Icon Editor, Action Creation Utility, and Application Gather and Integrate routines all simplify and automate the task of integrating applications onto specific platforms and into the network. Administrators also can define specific hosts to perform certain tasks without writing a script. Database applications, for example, can be directed to the database machines, and analytics to the mainframes, by setting up configuration files that are propagated automatically to all users.

The Common Desktop Environment is intended to

Documentation Browser - Book List
Figure 2. CDE's SGML-based on-line documentation browser, DTInfo, includes full-text search and retrieval across sets of on-line books.

CDE 2.1 New Features Overview

Thread-safe libraries. All essential libraries in CDE 2.1 now are thread-safe. Multi-threaded applications can use CDE without the programmer having to explicitly control "locking" of a library's routines or data or having to limit the use of a library API to a single thread.

64-bit system support enables CDE 2.1 to take full advantage of the large memory addressing and processing capacity of these systems.

An X-based printing solution solves the problem of developers having to code printing routines themselves. Developers now have a standard way of printing from any application or utility. In CDE 2.1, the X Server receives the normal X network protocol from the source and, with the help of a new X extension for print management, can generate output for a printer rather than for a screen display. CDE Printing Sample
Figure 5. CDE applications have integrated printing support. In the documentation browser, pictured here, screen display and printed output can be independently controlled.
The on-line documentation browser includes full-text search capabilities across sets of on-line books. The browser is based on the Standard Generalized Markup Language (SGML) and supports the DocBook document type definition (DTD) format. Support for other DTDs can be added. The DocBook DTD includes hypertext links, inline graphics, and automatic numbering. The documentation browser supports localized versions of on-line documentation. Localizations in CDE 2.1 documentation and help messages include French, German, Italian, Japanese, and Spanish. Documentation Browser - Text
Figure 3. The browser displays documentation pages using the DocBook document type definition. Displayed text includes hyperlinks, in-line graphics, and other features.
Internationalization enhancements enable the use of CDE applications by more users worldwide in their native languages. New to CDE 2.1 are various means to support Asian languages including
  • Selection of the character input method at session start-up
  • Vertical writing - display and editing
  • "On-the-spot" input to convert the romanized version of an Asian language in place within the document being created, rather than in a separate input window as is currently typical
  • User-defined characters for character codes not part of a "standard" set
Internationalized Window
Figure 4. CDE now supports vertical writing and includes other enhancements enabling more users worldwide to interact with their computers in their native languages.

Ease-of-programming features

A merged CDE and Motif style guide covers all CDE and Motif 2.1 features including

CDE Core Components

The CDE core components include

CDE Conceptual Overview
Figure 6. CDE conceptual overview.

Login Manager

The login manager provides a graphical logon screen and manages user access to the system. Its PAM technology permits organizations to use different authentication mechanisms on different machines without having to modify applications or login commands. Different authentication mechanisms (operating system or network) are encapsulated as dynamically loaded shared software modules. These modules can be installed by system administrators independently of applications, and executed by applications depending on the system configuration. The PAM technology provides a mechanism for giving CDE users a "single sign-on" for all the applications they may use -- whether those applications are local or out on the network. The login manager authenticates the user then executes a script that manages the remainder of CDE startup. The user's work environment is set up and control of the screen passes to the session manager.

Session Manager

The ability to take a snapshot of a user's work environment and restart the same environment from the snapshot is referred to as session management. The session manager takes these snapshots and keeps the full state of a session/environment including

CDE 2.1 supports the X11 Release 6 session management protocol. The Inter-Client Communications and Conventions Manual (ICCCM) session management protocol in CDE Release 1.X is still supported to ensure backward compatibility for older applications. CDE session management gives each application the opportunity to internally save its state so that session management encompasses the internal state of all applications running in the session.

The CDE session manager performs two major types of management. The default type is a current session -- an automatic snapshot taken when the user exits CDE. The snapshot is saved under the user's home directory and restarted when the user next logs in. The other type is a home session -- a fixed snapshot taken on demand. This allows a session to be set up and used upon login regardless of the session state when the user logs out. Home sessions can be set up for individual displays or all displays. This allows configuration of a unique home session for each different X device or workstation.

The session manager also starts the window manager and the interapplication messaging system.

Window Manager

The CDE window manager is the control mechanism for the visual user interface, or desktop, of a session. Applications are displayed on the desktop and their windows are managed by the window manager.

The major interactive component of the desktop is the FrontPanel. A user can manage all aspects of a session (except the initial login) through objects on the FrontPanel. The FrontPanel provides access to

The CDE window manager provides for the use of multiple workspaces, one at a time, during a user's session. A workspace is simply a set of applications that can be seen on the screen -- either running in an open window or iconified. Each workspace is self-contained and has no geometric relationship to other workspaces. The workspace manager provides a group of buttons, one per workspace, on the FrontPanel. When the user changes workspaces (by clicking on a workspace manager button), the window manager shows only the applications that are specified to be visible in the chosen workspace.

The graphical controls on the FrontPanel and in the slide-up menus can be configured to launch applications with a button click, or to launch applications when an object has been dragged to a control. The drag-and-drop functionality allows an intuitive visual means of data management and application control. The drag-and-drop facility is designed to support this function even if the file/object resides on other workstations in the network.

An encapsulated X client is a running application, for example, a clock or load meter, displayed in a portion of the FrontPanel.

Users have the flexibility to reconfigure the FrontPanel to suit their preferences, rather than having to work in a predefined manner. A user can interactively add or delete workspaces, can add or remove controls from subpanels, and can add or remove entire subpanels.

Messaging System

The CDE messaging system is an API to inter-process communication designed to permit cooperating applications to communicate easily. It facilitates seamless interaction between applications. The CDE messaging system is based on the ToolTalkTM message server.

The messaging system runs as a background process which passes messages from one application to another. Each client "registers" itself with the message process and can then receive messages.

The message system handles communications between different applications. For example, when dragging a file from the File Manager to the Mailer, the message system is used to communicate which file should be mailed and where to find the file in a file system. Obviously the messaging system is not automatic. Each application must be registered with the messaging system to receive messages, and any application sending or receiving messages must be built with the messaging system libraries.

Desktop Tool Set

CDE 2.1 includes a set of applications that enable users to become productive immediately.

Mail Icon
  • Mail Tool. Used to compose, view, and manage electronic mail through a GUI. Allows the inclusion of attachments and communications with other applications through the messaging system.
Calendar Icon
  • Group Calendar Manager. Used to manage, schedule, and view appointments, and create calendars. The calendar communicates with the mail tool via the CDE messaging system.
Editor Icon
  • Editor. A text editor with common functionality including data transfer with other applications via the clipboard, drag and drop, and primary and quick transfer.
  • Terminal Emulator. An xterm-like terminal emulator that supports ANSI X3.64-1979 and ISO 6429:1992(E) emulation.
  • Calculator. A standard calculator with scientific, financial, and logical modes.
File Icon
  • File Manager. An interface into a file system that includes graphical representation of all data objects, drag-and-drop functionality between objects and between cooperating client applications, and a general file-type association database.
Printer Icon
  • Print Manager. A graphical print job manager for the scheduling and management of print jobs on any available printer.
Browser Icon
  • On-line Documentation Browser. A context-sensitive graphical help and documentation search and retrieval system based on Standard Generalized Markup Language (SGML).
Style Icon
  • Style Manager. A graphical interface that allows a user to interactively set their preferences, such as colors, backdrops, and fonts, for a session.

Application Development Tools

CDE includes two components for application development. The first is a shell command language interpreter that has built-ins for most X, Xm, Xt, and CDE functions. The interpreter is based on ksh93, and should provide anyone familiar with shell scripts the ability to develop X, Motif, and CDE applications.

To support interactive user interface development, developers can use the Motif Application Builder, a GUI front end for building Motif applications that generates C source code. The source code is compiled and linked with the X11 and Motif libraries to produce the executable binary.

Application Integration

CDE provides a number of tools to ease integration. The overall model of the CDE session is intended to allow a straightforward integration for virtually all types of applications. Motif and raw X (X, Xt, Xaw) applications require little integration.

The task of integrating in-house and third party applications into a desktop, often the most difficult aspect of a desktop installation, is simplified by CDE. The power and advantage of CDE functionality can be realized in most cases without recompiling applications.

For example, OpenLookTM applications can be integrated through the use of scripts that perform front-end execution of the application and scripts that perform pre- and post-session processing.

After the initial task of integrating applications so that they fit within session management, further integration can be done to increase their overall common look-and-feel with the rest of the desktop and to take advantage of the full range of CDE functionality. Tools that ease this aspect of integration include an Icon Editor used to create color and monochrome icons. Images can be copied from the desktop into an icon, or they can be drawn freehand.

The Action Creation Utility is used to create action entries in the action database. Actions allow applications to be launched using desktop icons. They ease administration by removing an application's specific details from the user interface.

The Application Gather and Application Integrate routines are used to control and format the Application Manager. They simplify installations so that applications can be accessible from virtually anywhere on the network.


CDE is more than an easy-to-use, user-friendly desktop interface. It is an environment -- made up of user tools, network tools, deskset applications, and development tools -- that is recognized as a standard by major open systems vendors and their customers.

CDE is an important step forward in the use of open systems for general-purpose desktop computing. CDE harnesses raw computing power and network savvy in one elegant, visually stunning, easy-to-use and simple-to-administer package. It is network, workgroup, and enterprise aware. It is configurable, customizable, consistent, and manageable. As such, it is the graphical user environment of choice for networked, multi-vendor, enterprise-wide computing.

CDE Origins

Introduced in 1995, CDE was jointly developed and licensed for use by Hewlett-Packard, IBM, Novell and SunSoft. Under the auspices of The Open Group Pre-structured Technology (PST) process for collaborative technology development, the original CDE founders, in conjunction with Hitachi, Fujitsu, Digital Equipment Corporation, and SCO (after purchasing the UNIX division of Novell), continued to support the evolution of CDE. This collaborative effort has provided for the maintenance of CDE and the development of its subsequent releases.

CDE Reference Material

The Common Desktop Technical library is the CDE documentation set for users, system administrators, and application developers.

This documentation is provided as part of the CDE source code. Published volumes and other media providing sets of documentation are part of The Open Group's Common Documentation initiative.

Details of pricing and availability can be found in our publications list.

Preliminary Documentation

This list is subject to change. Please consult our publications list for the definitive list.

  • CDE 2.1 - User's Guide (including CDE Glossary)
  • CDE 2.1 - Advanced User's & System Administrator's Guide
  • CDE 2.1 - Programmer's Overview
  • CDE 2.1 - Programmer's Guide
  • Help Systems Author's & Programmers Guide
  • CDE 2.1 - Tooltalk Messaging Overview
  • CDE 2.1 - Desktop Kornshell User's Guide
  • CDE 2.1 - Application Builder User's Guide
  • CDE 2.1 - Dtinfo User's Guide
  • CDE/MOTIF 2.1 - Style Guide
  • MOTIF 2.1 - User's Guide (including Glossary)
  • MOTIF 2.1 - Programmer's Guide
  • MOTIF 2.1 - Programmer's Reference V1
  • MOTIF 2.1 - Programmer's Reference V2
  • MOTIF 2.1 - Widget Writer's Guide

© 1995-2018
     Sales Enquiries      Site Index