ChorusOS 5.0 Target Family Guide (Intel Platform Edition)

ChorusOS 5.0 Target Family Guide (Intel Platform Edition)

This guide describes how to run the ChorusOSTM 5.0 product for the Intel x86/Pentium processor family.

Preface

How This Guide is Organized

ChorusOS 5.0 Intel x86/Pentium specific information is provided in the following major sections:

Related Books

See the ChorusOS 5.0 Installation Guide for a description of the installation process of the ChorusOS 5.0 product on a host workstation running the SolarisTM operating environment. This document also describes how to set up a boot server running the Solaris operating environment.

See the ChorusOS 5.0 Features and Architecture Overview for a detailed description of the ChorusOS 5.0 features.

Typographical Conventions

The following table describes the typographic changes used in this book.

Table 1-1 Typographical Conventions

Typeface or Symbol 

Meaning 

Example 

AaBbCc123

 The names of commands, files, and directories; on-screen computer output

Edit your .login file.

Use ls -a to list all files.

machine_name% you have mail.

AaBbCc123

 What you type, contrasted with on-screen computer outputmachine_name% su Password:

AaBbCc123

 Command-line placeholder: replace with a real name or value

To delete a file, type rm filename.

AaBbCc123

Book titles, new words or terms, or words to be emphasized 

Read Chapter 6 in User's Guide.

These are called class options.

You must be root to do this.

Shell Prompts

The following table shows the default system prompt and superuser prompt for the C shell, Bourne shell, and Korn shell.

Table 1-2 Shell Prompts

Shell 

Prompt 

 C shell promptmachine_name%
 C shell superuser promptmachine_name#
 Bourne shell and Korn shell prompt$
 Bourne shell and Korn shell superuser prompt#

Ordering Sun Documents

Fatbrain.com, an Internet professional bookstore, stocks selected product documentation from Sun Microsystems, Inc.

For a list of documents and how to order them, visit the Sun Documentation Center on Fatbrain.com at http://www1.fatbrain.com/documentation/sun.

Accessing Sun Documentation Online

The docs.sun.comSM Web site enables you to access Sun technical documentation online. You can browse the docs.sun.com archive or search for a specific book title or subject. The URL is http://www.oracle.com/technetwork/indexes/documentation/index.html.

Obtaining Technical Support

Contact your account manager in order to identify your authorized Sun support provider for ChorusOS support information.

For general information on Sun Support Access Offerings, visit: http://www.sun.com/developers/support or contact the Sun Developer Connection Program office near you.

Development Environment

The ChorusOS 5.0 product provides a host-target development environment. Applications are developed on a workstation (the host), and then downloaded and executed on a specific board (the target).

A cross development system is needed to build the applications that execute on the target board (see Section "Utilities").

SolarisTM (SPARCTM Platform Edition) Reference Host Environment

This section contains information on the requirements for the host system.

Prerequisites for the Solaris host reference configuration are the following:

Cross Compiler

This development environment component is bundled with the ChorusOS 5.0 for Intel x86/Pentium product:

The Chorus Cross Development System is based on the GNU Compiler gcc 2.97 and binutils 2.10.

Graphical Debugger

The ChorusOS 5.0 Cross Development System includes the GNU GDB debugger for ChorusOS with a graphical user interface Insight. Using this debugger you are able to debug ChorusOS applications and systems.

ChorusOS 5.0 Supported Features

The following table shows the ChorusOS kernel and operating system optional features that are available for the Intel x86/Pentium processor family. The availability status of a feature can be one of:

Y

The feature is supported, and is configurable using the configurator(1CC) command, or with the ews GUI configuration tool.

Please refer to the note at the end of the table for information about specific conditions, or restrictions, for a given supported feature.

Some of the features (such as MSDOSFS, FLASH, FS_MAPPER, for example) require specific low-level drivers. These features operate only on platforms which provide these drivers.

N

The feature is not available.


Note -

Features not explicitly mentioned in this table are not supported.


 Feature Description Feature Name Availability
 Actor management 
   User-mode extension support USER_MODE Y

 

 Compressed file management GZ_FILE Y
  Device driver actor management DRV_MERGE Y
 Scheduling 
  POSIX round-robin scheduling class ROUND_ROBIN Y
 Memory management 

 

 Virtual (user and supervisor) address space VIRTUAL_ADDRESS_SPACE Y

 

 On-demand paging ON_DEMAND_PAGING Y
 Hot restart and persistent memory 
  Hot restart HOT_RESTART Y
 Inter-thread synchronization 

 

 Semaphores SEM Y

 

 Event flag sets EVENT Y

 

 Mutual exclusion lock supporting thread priority inversion avoidance RTMUTEX Y

 

 Monitors MONITOR Y

 

 Real-time extension of POSIX signals POSIX_REALTIME_SIGNALS Y
 Time management 

 

 Periodic timers TIMER Y

 

 Thread and actor virtual timer VTIMER Y

 

 Date and time of day DATE Y

 

 Real-time clock RTC Y

 

 Watchdog timer WDT Y
 Inter-process communication 

 

 Location-transparent inter-process communication IPC Y

 

Remote (inter-site) IPC support IPC_REMOTE Y

 

 Mailbox-based communications mechanism MIPC Y

 

 POSIX 1003.1-compliant message queues POSIX_MQ Y

 

 POSIX 1003.1-compliant shared memory objects POSIX_SHM Y
 LAP 

 

Local name server for LAP binding LAPBIND Y

 

LAP validity-check option LAPSAFE Y
 Tools support 

 

 Message logging LOG Y
  Profiling and benchmark support PERF Y
  System Monitoring MON Y
  System debugging DEBUG_SYSTEM Y
  Blackbox BLACKBOX Y
  System dump SYSTEM_DUMP Y
  Core dump CORE_DUMP Y
  Software interrupts SOFTINTR Y
 C_INIT 
  Basic command interpreter on target LOCAL_CONSOLE Y
  Remote shell RSH Y
 File systems 

 

 Named pipes FIFOFS Y

 

 MS-DOS file system MSDOSFS Y

 

NFS client NFS_CLIENT Y

 

NFS server NFS_SERVER Y

 

ISO file system ISOFS Y

 

UFS file system UFS Y
  Swap support FS_MAPPER Y

 

/dev/mem, /dev/kmem DEV_MEM Y
  CDROM support DEV_CDROM N
  IDE support DEV_DISK Y
  NVRAM support DEV_NVRAM Y

 

Support for RAM disk RAM_DISK Y
 Support for FLASH media [Logical-to-Physical block mapping for flash file system support.]  FLASH N
  Support for FLASH or raw memory device. RAWFLASH N
  Pseudo Tty VTTY Y

 

Driver for SCSI disk SCSI_DISK Y
 Networking 

 

 POSIX 1003.1g-compliant sockets POSIX_SOCKETS Y

 

 Point-to-point protocols PPP Y

 

 IPv6 support IPv6 Y

 

 Local sockets and pipes AF_LOCAL Y

 

 Network packet filter BPF Y
 Support for IPC IOM_IPC Y
 Support for OSI IOM_OSI Y
 Instrumentation 

 

 Microkernel statistics MKSTAT Y

 

 Operating system gauges OS_GAUGES Y

 

 Application level system events SOLARIS_SYSEVENT Y


Note -

The Floating Point Unit is automatically supported on target boards in the Intel target family.


Libraries

The ChorusOS operating system provides the elementary libraries indicated in the following list:

ChorusOS embedded library [The libebd.a, libcx.a, libm.a and libc.a libraries have been made thread-safe in order to support multithreaded actors.]

libebd.a

The ``embedded'' C library [Included in libebd.a.]

libc.a

ChorusOS extended library

libcx.a

C++ library 

libstdc++.a

X11 related client libraries (not thread safe) 

libX11.a, libXaw.a, libXext.a,

libXmu.a, libXt.a

The encryption/decryption library 

libcrypt.a

The Doug Lea malloc library 

libleamalloc.a

The Solaris--like name /value pair companion library 

libnvpair.a

The network services library (symbolic link to libresolv.a)

libnsl.a

The network services library 

libresolv.a

The interface library for PAM (pluggable authentication module) 

libpam.a

The POSIX pthread library 

libpthreads.a

The Solaris-like sysevent library 

libsysevent.a

The hot restart controller library 

libhrCtrl.a

The SunRPC library 

librpc.a

The Blackbox static library 

libblackbox.a

The LDAP client library 

libldap.a

The mathematical library 

libm.a

The ftp services library 

libftpd.a

The secure hash algorithms for Netscape library 

libmd.a

The ChorusOS Naming Service (NS) library 

libns.a

The Telnet services library 

libtelnetd.a

The Yellow pages services (xdr_ypXXX) library

libyp.a

This library includes the functions openpty() and creat().

libutil.a

This library includes the function ilogb() which returns the binary exponent of a non-zero double value.

libmsun.a

The microkernel ``visu'' library [This library is provided for the sake of backwards compatibility only. It is not documented or supported. Its use is strongly discouraged.]

visu.a

Utilities

Target Utilities

The following utilities may be run on the target ChorusOS operating system:

Host Utilities

The following utilities may be run on the host machine:

Reference Hardware

ChorusOS 5.0 targets are described in this section from three different points of view:

Reference Processors and BSPs:

This subsection describes the processors on which the ChorusOS 5.0 product can run, as well as the details of the BSPs included in the delivery.

Reference Target Platforms:

This section describes all the target platforms that can be used as references in the context of Sun support contracts.

Validated Reference Targets:

This section describes the precise platforms used to run the Sun QA tests; this may be useful, in case of bugs, as a guide to help in identifying issues which are hardware related.

Reference Processors and BSPs

The ChorusOS 5.0 system for Intel x86/Pentium supports the following processors:

The ChorusOS 5.0 system for Intel x86/Pentium supports the following reference BSPs:

i386at Reference BSP

Systems

The i386at reference BSP supports standard PC-AT boards.

Devices

The i386at reference BSP supports the following on board devices:

Device Id 

ChorusOS Driver 

/pci (PCI bridge) 

sun:x86-generic-(bus,pci) 

/pci/pci-isa (ISA bridge) 

sun:pci-generic-(bus,isa) 

/pci/pci-isa/i8254 (TIMER) 

sun:bus-i8254-timer 

/pci/pci-isa/mc146818 (RTC, TIMER) 

sun:bus-mc146818-(rtc,timer) 

/pci/pci-isa/ns16550-1 (UART) 

sun:bus-ns16550-uart 

/pci/pci-isa/ns16550-2 (UART) 

sun:bus-ns16550-uart 

/pci/piix-ata 

sun:pci-piix-ata 

/pci/pci-isa/fdd (floppy) 

not supported 

/pci/pci-isa/kbd (keyboard) 

not supported 

/pci/pci-isa/lpt (parallel) 

not supported 

/pci/pci-isa/mouse (mouse) 

not supported 

The i386at reference BSP supports the following expansion devices:

Device Id 

ChorusOS Driver 

Reference Device 

/pci/epic100 (ETHER) 

sun:pci-epic100-ether 

 SMC EtherPowerII 10/100 TP

/pci/dec21140 (ETHER) 

sun:pci-dec21x4x-ether 

 ZNYX ZX345 Fast Ethernet

/pci/ne2000 (ETHER) 

sun:bus-ne2000-ether 

 Kingston KNE2000TLC Novell NE2000 plus

/pci/ncr53c825 (SCSI HBA) 

sun:pci-ncr53c8xx-scsi_hba 

sun:scsi_hba-generic-scsi 

 Symbios Logic SYM8750SP

/pci/ncr53c825/disk@t,l (SCSI disks) [where t is the SCSI TARGET number, and l is the LUN number]

sun:scsi-disk-BSD 

 

/pci/ncr53c825/xxx (SCSI other) 

not supported 

 

/pci/pci-isa/smc1660 (ETHER) 

sun:isa-smc1660-ether 

 SMC EtherCard Elite Ultra 16 bits

 

 

SMC EtherCard EZ 

/pci/pci-isa/el3 (ETHER) 

sun:bus-el3-ether 

 3Com EtherlinkIII 3C509B

/pci/pci-isa/ne2000 (ETHER) 

sun:bus-ne2000-ether 

 

/flash (FLASH memory) 

not supported 

 

CPN5360 Reference BSP

Systems

The CPN5360 reference BSP supports standard PC-AT boards.

Devices

The CPN5360 reference BSP supports the following on board devices:

Device Id 

ChorusOS Driver 

/pci (PCI bridge) 

sun:x86-bios-(bus,pci,mngt) 

/pci/pci-isa (ISA bridge) 

sun:pci-bios-(bus,isa) 

/pci/i8259 

sun:pci-i8259-pic 

/pci/pci-isa/i8254 (TIMER) 

sun:bus-i8254-timer 

/pci/pci-isa/mc146818 (RTC, TIMER) 

sun:bus-mc146818-(rtc,timer) 

/pci/pci-isa/ns16550-2 (UART) 

sun:bus-ns16550-uart 

/pci/pci-isa/fpga 

sun:bus-fpga-(wdtimer,flashCtl,hsc) 

/pci/pci-isa/intel28F320 

not supported 

/pci/piix-ata 

sun:pci-piix-ata 

/pci/e100-1 

sun:pci-e100-(ether,mngt) 

/pci/e100-2 

sun:pci-e100-(ether,mngt) 

/pci/dec21554 

sun:pci-dec2155x-(bus,pci) 

/pci/dec21554/pciswap 

sun:pci-generic-pciswap 

The CPN5360 reference BSP supports the following expansion devices:

Device Id 

ChorusOS Driver 

Reference Device 

/pci/piix-ata/x,y (atadisk) [where x is the is the port number (primary/secondary) and y is the device number on the given port]

sun:ata-atadisk-disk 

IDE disk 

/pci/dec21554/dec2115x 

sun:pci-dec2115x-(bus,pci,mngt) 

 

/pci/dec21x4x 

sun:pci-dec21x4x-(ether,mngt) 

Concurrent Technologies PMC dec21143 (5 volt) 

Reference Target Platforms

This section describes all the target platforms which can be used as references in the context of Sun support contracts.

PC Compatible

Type:

Generic Computer

Processors:

i486/Pentiums/Celeron (33-400 Mhz)

Main memory:

16-256 MB

L2 cache:

256-512 KB

Bus bridges:

Processor to PCI, PCI to ISA

Devices:

Asynchronous serial ports (38.4 Kbaud), 10/100BaseT Ethernet (PCI: SMC EtherPowerII, compatible NE2000, Intel EtherExpress 100, ZNYX ZX345; ISA: SMC EtherCard Elite Ultra 16bits/EZ, compatible NE2000, 3Com EtherLinkIII), IDE disk, Ultra-Wide SCSI (PCI: Symbios logic SYM8750SP), Real-time clock, Timers

Firmware:

PC BIOS

CPN5360

Type:

Motorola CompactPCI board

Processors:

i686

Main memory:

128 MB

L2 cache:

256-512 KB

Bus bridges:

Processor to PCI, PCI to ISA, PCI to CompactPCI

Devices:

Asynchronous serial ports (115.2 Kbaud), 10/100BaseT Ethernet (PCI: Intel EtherExpress 100 onboard x2, Intel EtherExpress 100, PMC Dec 21x4x ), IDE disk, Ultra-Wide SCSI (PCI: Symbios logic SYM8750SP), Real-time clock, Timers, Watchdog timers, PCI-CompactPCI bridge (2155x)

Firmware:

PC BIOS

Validated Reference Targets

This section describes the precise platforms used to run the Sun QA tests: