ChorusOS 5.0 Application Developer's Guide

How This Guide Is Organized

This guide is divided into three parts and sixteen chapters, as follows:

Part 1 - Basic Application Development

This part of the guide demonstrates how to get started developing applications for ChorusOS systems.

Chapter 1, ChorusOS Development Environment describes the development environment for ChorusOS application programming. It provides the basic information and mental picture required to approach the ChorusOS development environment and tools in an effective manner.

Chapter 2, Getting Started introduces the ChorusOS development environment through the creation of a basic application designed to run on ChorusOS systems.

Chapter 3, ChorusOS Actors and Processes defines the concepts of actors and processes as they relate to ChorusOS systems.

Chapter 4, Building Makefiles and Configuring the System Image covers the configuration tools used to define what a ChorusOS system image contains and demonstrates how to include an application in a ChorusOS system image such that the application executes when the system boots.

Part 2 - ChorusOS APIs

This part of the guide describes how to build applications that use both ChorusOS microkernel and POSIX APIs, and demonstrates how to use these APIs through code examples.

Chapter 5, Introduction to ChorusOS Applications introduces the steps involved in developing applications that run on ChorusOS systems. It includes the APIs available to ChorusOS applications and the libraries available within these APIs.

Chapter 6, Building Applications for ChorusOS Systems demonstrates the use of imake macros to build different types of example ChorusOS applications written in the C and C++ languages.

Chapter 7, ChorusOS Threads deals with threads, which are the basic unit of execution on ChorusOS systems.

Chapter 8, Native Memory Management deals with the ChorusOS application programming interfaces for memory management.

Chapter 9, Scheduling and Synchronization discusses the use of the ChorusOS application programming interfaces for synchronizing threads. It also demonstrates how mutexes and semaphores are used in the ChorusOS operating system.

Chapter 10, Local Access Points deals with the concepts of local access points that are native to ChorusOS systems. It also demonstrates the use of application programming interfaces for handling LAPs.

Chapter 11, Native Messaging and Interprocess Communications deals with the concepts of interprocess communications that are native to ChorusOS systems.

Chapter 12, Time Management deals with the time management services available on ChorusOS systems and demonstrates the use of the ChorusOS APIs for managing CPU and real time.

Chapter 13, Exceptions demonstrates the use of the ChorusOS native APIs for handling thread exceptions, aborts, faults, traps, and timeouts.

Chapter 14, Analyzing System Failure : Black Boxes, Watchdog Timers, and Logging demonstrates the use of the ChorusOS APIs for diagnosing and recovering from application or system failure.

Chapter 15, Recovering From Application Failure: Hot Restart deals with the actor restart and persistent memory services available on ChorusOS systems and demonstrates the use of the ChorusOS APIs for increasing the availability of application actors.

Part 3 - Advanced Topics

This part of the guide deals with advanced topics concerning ChorusOS systems. It includes a list of the differences between similar application programming interfaces available on ChorusOS systems and the Solaris operating environment.

Chapter 16, Compatibility With POSIX Standards discusses compatibility of ChorusOS tools, devices, APIs, and protocols with those described in the POSIX standards.

Chapter 17, Performance Profiling explains how to analyze the performance of a ChorusOS system and its applications by generating a performance profile report.