ChorusOS 5.0 Transition Guide

Part I Upgrading to Version 5.0 of the ChorusOS Operating System

This section provides an overview of the major enhancements that have been added in version 5.0 of the ChorusOS operating system. Please note that this is not a complete list of the changes made, but an "at-a-glance" view of the major changes affecting developers, system administrators and other users of the system.

Chapter 1 Overview of Major Enhancements in ChorusOS 5.0

This chapter describes the major enhancements to the ChorusOS operating system. Please note that this is not a complete list of all changes to the operating system. The features listed in this chapter are described in more detail in the relevant section of this book and in other books within the ChorusOS documentation set.

Changes to the Documentation Set

The structure of the ChorusOS documentation set has been reorganized to reflect specific user populations. The new documentation set includes the following collections:

For a complete list of the new guides and information on how the documentation set is structured, refer to About ChorusOS 5.0 Documentation.

API Reorganization and POSIX Compliance

The APIs in version 5.0 of the ChorusOS operating system have been reorganized to support three kinds of applications:

POSIX processes

Most of the applications running on ChorusOS systems will be POSIX processes. These applications have access to the pure POSIX APIs, a few POSIX-like extended APIs and a small number of restricted microkernel system calls.

ChorusOS actors

These applications are run on top of the microkernel and restricted to the microkernel API. ChorusOS actors include drivers, subsystem events and protocol stacks.

ChorusOS 4.x Legacy applications

These applications are supported purely for backward compatibility and use the same APIs they used in previous versions of the ChorusOS system. While these applications are supported in ChorusOS 5.0, you are encouraged to move such applications to the POSIX level, using the standard POSIX APIs.

For more information on the reorganization of the APIs, refer to "Introduction to ChorusOS Applications" in the ChorusOS 5.0 Application Developer's Guide and to the API(5FEA) man page.

Enhancements to System Features

A brief description of the enhancements to the system features follows:

Instr. Framework

Provides a number of services to enable upper management layers to access and manage the instrumentation information exposed by the ChorusOS system. This information essentially consists of a number of counters and gauges with watermarks and thresholds. The Instrumentation Framework provides an interface to retrieve such information and also to set the thresholds and watermarks dynamically. See "Administration" in the ChorusOS 5.0 Features, Architecture and Performance Overview for more information.

System Instr.

Provides instrumentation to inform applications of the current use of the various resources managed by the system. Also allows you to monitor over- or under-utilization of resources. See "System Instrumentation" for more information.

Shared Libraries

Provides support for shared libraries which can be dynamically linked but are not duplicated in physical memory. See "Support for Shared Libraries" for more information.

Software Black Box

Provides a repository for the collection and storage of event information leading up to a particular problem or circumstance. See "Black Box" for more information.

System Events

Allows the ChorusOS operating system to notify applications of the occurrence of a specified event. This feature provides a generic programming interface for event generation and delivery. See "System Events" for more information.

System Logging

Provides a general message logging facility that can be used by the microkernel and by applications. See "System Logging" for more information.

Watchdog Timer

Provides a set of system calls that allows applications to monitor their sanity. See "Application Watchdog" for more information.

Enhancements to Platform Features

A brief description of the enhancements to the platform features follows:

Boot Framework

The ChorusOS boot framework has been enhanced so that it can use the DHCP protocol to retrieve the system image and boot it on the local node, provided there is a correctly configured DHCP server on the network.

The boot framework provides a fail-safe oriented boot logic, hard coded in the bootMonitor actor. See "Boot Storage Device" for more information.

Compact PCI Hot Swap Support

The ChorusOS Board Support Package (BSP) hot swap feature allows you to remove and insert a board safely, without requiring you to shut the operating system down. BSP hot swap provides an infrastructure that facilitates the starting and stopping of the driver corresponding to a board that is inserted or removed. For more information on this feature, refer to "BSP Hot Swap" in the ChorusOS 5.0 Features, Architecture and Performance Overview.

Device Driver Manager Proxy

The Device Driver Manager proxy is a logical component that acts as a proxy between the various drivers that must be managed (through DDI/DKI calls) and a client in supervisor mode. The client is typically the C_OS and relays commands to and from the Management framework.

The purpose of the Device Driver Manager proxy is to hide the use of the DDI/DKI specificities to the upper layers and to isolate implementation-specific aspects (such as the use of DKI-threads).

This proxy exports a Management API, so that a supervisor application can perform management operations without any knowledge in the DKI/DDIs.

High Resolution Timer

The High Resolution Timer provides access to a fine-grained counter source for applications. This API is available in both a user and microkernel execution context on top of the ChorusOS operating system. See "Administration" in the ChorusOS 5.0 Features, Architecture and Performance Overview

IDE/ATA DDI

A new architecture has been implemented to provide support for IDE disks and CompactFlash devices. The new architecture includes new Disk and ATA DDIs. For more information, see "IDE/ATA DDI".

NVRAM DDI

The NVRAM device driver provides a basic interface that abstracts the access methods to the underlying NVRAM hardware. The driver implements routines allowing the device driver client to read from or write to the NVRAM space.

PowerPC 74x0 Support

Support for the PowerPC 74x0 processor is new in version 5.0 of the ChorusOS operating system. The new board for this processor is mcpn765.

Watchdog Timer DDI

Allows you to manage the watchdog timer. See "Application Watchdog" for more information.

Enhancements to Networking Features

A brief description of the enhancements to the networking features follows:

Support for IPv6

Internet Protocol version 6 (IPv6) is the standard for next generation IP networks (particularly for 3G mobile networks).

IPv6 adds increased address space and improves Internet functionality using a simplified header format. It includes support for authentication and privacy, autoconfiguration of address assignments, and new quality-of-service capabilities. See "IPv6" for more information.

Messaging

The messaging feature has been extended to include asynchronous communication in addition to the synchronous RPC model available in earlier versions of the ChorusOS operating system. The new messaging service also supports multithreading. See "RPC Extensions" for more information.

DHCP and TFTP

The Dynamic Host Configuration Protocol (DHCP) allows the ChorusOS system to obtain network information, such as a dynamically assigned IP address, or the IP addresses of the default router and name server, from a DHCP server at boot time.

The TFTP daemon allows you to boot a ChorusOS target from the network (using bootmonitor), with the DHCP and TFTP server running on a ChorusOS machine. The tftpd daemon is a standalone daemon. The tftp command is used to transfer files in the same way as ftp.

For more information on the implementation of these protocols, refer to "Network Administration Commands and Daemons" in the ChorusOS 5.0 System Administrator's Guide.

NTP for ChorusOS

Allows you to manage precise time and network clock synchronization in a network environment. The inclusion of NTP in the ChorusOS operating system provides increased time precision. See "Network Time Protocol (NTP)" for more information.

Enhancements to Tools

A brief description of the enhancements to the tools follows:

Process Dump

The process dump feature dumps a core image of a process as an ELF format file. The core image can be taken dynamically, while the process is running, or when the process crashes. The core file generated can be used by a debugging tool to perform a post-mortem analysis of the process.

For more information, refer to the pdump(1M) man page.

System Dump

Allows black box information to be recovered in the event of a system crash. The result of the black box is saved as an ASCII file on the host. See SYSTEM_DUMP(5FEA) for more information.

New gcc Support

Version 5.0 of the ChorusOS operating system supports gcc version 2.97.

GDB Debugging Tool

The GNU GDB debugging tool for ChorusOS systems replaces the XRAY debugging tool used in previous versions. See "GDB Debugging Tool" for more information.

Insight GUI

Insight is a graphical user interface to GDB and gives you access to most of GDB's capabilities. See "Insight GUI for GDB" for more information.

Chapter 2 Changes to the ChorusOS 5.0 Installation

This chapter suggests things to consider to facilitate a smooth transition through software installation and post-installation.

This chapter includes the following sections:

What's New About Installing?

This section describes changes in the ChorusOS 5.0 operating system that affect the installation process.

JVM Test Relocation

The most obvious change to the installation process is the relocation of the JVM version test on the host system. In ChorusOS 4.0, the first step in the installation process was the extraction of all the required files. The system tested for the correct JVM version only after the extraction had occurred. In ChorusOS 5.0, the version of JVM is tested prior to the extraction of the files. This avoids the unnecessary extraction of files when the incorrect JVM version is installed.

The extract.sh -only Option

The -only option added to the extract.sh script allows you to specify that the installation procedure stops with the unzipping of the required system files. When you use the -only option with extract.sh, you need to run the installer script to continue the installation. In this case, the JVM version test is done when you run installer.

In addition, the following extract.sh options are supported:

Compatibility with JDK 1.2/1.3

The ChorusOS 5.0 installer is compatible with JDK versions 1.2 and 1.3.

Uninstaller

The new uninstaller offers a complete graphical tool for uninstalling the ChorusOS operating system. A separate uninstaller is available for the operating system and for the documentation, enabling you to uninstall these elements independently of each other.

For more information on the graphical uninstaller, see "Uninstalling on the Host" in the ChorusOS 5.0 Installation Guide.

CD Installer

The distribution of the ChorusOS operating system on CD_ROM, incorporates a new CD installer. With this new installer, the product is not launched using the extract.sh script. Instead, you are able simply to double-click on an installer script.

For a complete description on using the CD installer, see "Installing Sun Embedded Workshop" in the ChorusOS 5.0 Installation Guide.

Before you install ChorusOS 5.0

Installing a new version of the ChorusOS operating system will not overwrite an existing version. Therefore, it is not necessary to back up any files or directories relating to the previous version before installing the new version. It is also unnecessary to uninstall the existing version, since the installation directory depends on the release number and will be different to the existing installation directory.

The correct version of JVM must be installed on the host before you install the ChorusOS operating system.

For complete instructions on installing version 5.0 of the ChorusOS operating system, refer to the ChorusOS 5.0 Installation Guide.

New Default Files and Directories

Certain default files and directories have been changed in in version 5.0 of the ChorusOS operating system. For a complete list of the default files and directories, refer to "Directory Conventions".