Roadmap to Sun Developer Documentation
By John Stearns, February 2005, updated November 2006
Abstract:
This article provides a roadmap to information sources for Sun products for developers, with links that readers can use to bookmark the sources.
Contents:
A wealth of information is available to developers working
with Sun software products. This article, which is an expanded
version of the new manual Introduction
to the Solaris Development Environment, serves as a general
roadmap to the developer documentation for these products, that is,
manuals, specifications, and documentation web pages, as well as other
sources of information for developers.
Note that the links provided here connect to the current versions
of the collections and manuals as of the publishing of this article.
You should always check that you are accessing the version of the
manual that is appropriate for the release of the Sun product you are
using.
The documentation for developers working with the Solaris Operating System (OS) is broken down into the following topics:
- Building Applications
- Programming to Specific Sun Hardware and Configurations
- Network Programming in the Solaris OS
- Programming With Solaris OS Interfaces and Frameworks
- Documentation for Solaris System Administrators and End Users
The Solaris 10 Software Developer Collection is accessed through docs.sun.com and appears as shown in the following figure.
Figure 1: Docs.sun.com: Solaris 10 OS

Building Applications
The Solaris OS provides various facilities for packaging,
compiling, debugging, and tuning applications.
Packaging Applications for the Solaris OS
All software programs must be incorporated into a package to be
installed in the Solaris OS. The Application
Packaging Developer's Guide provides step-by-step
instructions and relevant background information for designing,
building, and verifying packages. A chapter with case studies
provides several package creation examples in a variety of
situations. This document also includes descriptions of advanced
techniques that you might find helpful during the package creation
process.
Packages that are not part of the Solaris OS
(unbundled packages) can use the class mechanism to customize
server/client installations.
Relocatable packages can be designed to accommodate the
desires of the administrator.
A complex product can be delivered as a set of composite
packages that automatically resolve package dependencies.
A package designer can customize the upgrading and patching
process.
Patched packages can be delivered in the same way as
unpatched packages. Archives for backing out the software can also
be included in the product.
Using the Runtime Linker and Link Editor
The Solaris OS provides a link editor and runtime linker. The
Linker and
Libraries Guide covers the link editor ld(1),
the runtime linker ld.so.1(1),
the ELF object file format, and shared objects, which are sometimes
referred to as shared libraries.
The manual is intended for a range of programmers who are
interested in the Solaris linkers, from the curious beginner to the
advanced user. Beginners learn the principal operations of the link
editor and runtime linker. Intermediate programmers learn to create
and use efficient custom libraries. Advanced programmers, such as
language-tools developers, learn how to interpret and generate object
files. A chapter on application binary interfaces describes how to
manage the evolution of an interface that is provided by a dynamic
object. Other chapters cover thread-local storage and mapfile
directives.
Using Sun Studio Software
Sun Studio software, a Sun product separate from
the Solaris OS, provides modules for creating, editing, building,
debugging, and analyzing the performance of a C, C++, or Fortran
application. Java Native Interface (JNI) development is also
supported. Many Sun Studio tools have both a GUI and command-line
equivalent. Those tools with GUIs provide online help. For the
command-line versions, use the associated man pages. See the Compilers and Tools -- Documentation page on The Source for Developers web site for documentation of the tools and other useful information.
Sun Studio software encompasses the following tools:
- Integrated development environment (IDE) -- Provides access to the Sun Studio tools. In addition to C, C++, and Fortran tools, the IDE includes a
set of basic support modules for the Java programming language that can be enabled for JNI development.
- Sun Studio C compiler -- Includes a C
compiler, incremental link editor, and
lint program.
- Sun Studio C++ compiler -- Includes a
full-featured C++ compiler and interval arithmetic library.
- Sun Studio Fortran compiler -- Includes
full-featured environment and libraries for both
f95 and
f77.
- dbx Debugger -- An interactive,
source-level, command-line debugging tool.
- Sun Studio
dmake make
tool -- A command-line tool for building targets in
distributed, parallel, or serial mode.
- Math libraries -- A floating-point
environment that is supported by software and hardware on SPARC
and x86 platforms that run the Solaris OS.
- OpenMP API -- Directives and pragmas
for converting legacy Sun parallelization directives to OpenMP,
which is a portable, parallel programming model for shared memory
multiprocessor architectures.
- Performance Analyzer -- A GUI and
command-line tool for collecting and analyzing performance data.
- Sun Performance Library -- A library of
Sun-specific extensions and features for using optimized, high-speed
mathematical subroutines for solving linear algebra and other
numerically intensive problems.
Kernel-Level Debugging
The Modular Debugger mdb is an extensible, general-purpose debugging tool for the Solaris OS. The Solaris
Modular Debugger Guide describes how to use the mdb(1)
command to debug complex software systems. The guide emphasizes the
facilities that are available for debugging the Solaris kernel and
associated device drivers and modules. The guide includes a complete
reference for the mdb language syntax, debugger features,
and the mdb module programming API.
The Solaris Modular Debugger Guide also features
information on kmdb, the kernel-level analogue to mdb.
Solaris Dynamic Tracing (DTrace)
DTrace is a comprehensive dynamic tracing framework for the
Solaris OS. DTrace provides a powerful infrastructure
to enable administrators, developers, and service personnel to
concisely answer arbitrary questions about the behavior of the
operating system and user programs. The Solaris
Dynamic Tracing Guide describes how to use DTrace to
observe, debug, and tune system behavior. This book also includes a
complete reference for bundled DTrace observability tools and the D
programming language provided with DTrace.
For an introduction to DTrace, see the DTrace User's Guide. If you need a quick reference to DTrace functions, see the article DTrace Quick Reference Guide on the Solaris Developer Center.
Using the Java Programming Language to Write Programs for the Solaris OS
The JDK for
Solaris Developer's Guide is intended for application
developers who use the Java 2 Platform, Standard Edition 5, on the
Solaris OS. Java software is optimized to deliver
superior performance to server-side and client-side Java technology-based applications in an enterprise environment.
Supplying Online Help for Java Technology-Based Applications
The JavaHelp
System User's Guide offers information for developers
providing online help for Java technology-based applications. The JavaHelp
system is a URL-based facility that points to topics contained
in files and also provides context-sensitive help. The help files are
displayed in the help viewer one file at a time. The manual covers
both authoring and packaging.
Using the ToolTalk Service
The ToolTalk User's Guide explains how the ToolTalk service enables independent applications to communicate with each other without having direct knowledge of each other.
Programming to Specific Sun Hardware and Configurations
The following manuals apply to programming for specific Sun
hardware and configurations.
x86 Hardware Known To Be Compatible With the Solaris OS
The Hardware
Compatibility List (HCL) identifies x86 hardware that is
compatible with the Solaris OS. Separate lists identify systems and
controllers that are certified for Solaris 8, Solaris 9, and Solaris
10 versions of the operating system. The HCL is available in a
comma-separated value (CSV) format for advanced users who want to
search or sort the list using a spreadsheet or database.
Testing x86 Hardware for Solaris Compatibility
The Hardware
Certification Test Suite (HCTS) includes system certification
tests, controller certification tests, utilities, and a browser-based
user interface. HCTS tests certify systems, motherboards, and various
network, storage, and serial I/O controllers to work with the Solaris
OS. HCTS collects log files, determines test pass or
fail results, and generates a final test report. Hardware that passes
either Level 1 or Level 2 Certification is eligible to be included in
the Hardware Compatibility List as Test Suite Certified.
Developing in the x86 Assembly Language
The Solaris OS provides an assembly language for the x86 platform.
The x86
Assembly Language Reference Manual describes the assembler
that generates code for the 32-bit x86 processor architecture and
translates source files that are in assembly language format into
object files in linking format. This book describes the syntax of the x86 assembly language for the Solaris OS. The guide also maps the x86 assembly language instruction mnemonics to the native x86 instruction set.
Developing in the Assembly Language for SPARC Technology
The Solaris OS provides an assembly language for the SPARC
platform. The SPARC
Assembly Language Reference Manual describes the assembler
that runs on the SPARC architecture and translates source files that
are in assembly language format into object files in linking format.
The description includes the assembler syntax, the executable and
linking format, and the relationship between hardware instructions of
the SPARC architecture and the assembly language instruction set. The
book contains a description of the SPARC-V9 instruction set.
Appendixes list the pseudo-operations that the assembler on a SPARC platform
supports, with examples of their use. Other appendixes describe the
available assembler command-line options and an example of the
correspondence between the assembly code and the C code.
Developing 64-bit Applications for the Solaris OS
The Solaris OS provides a 64-bit computing environment along
with backward compatibility for 32-bit applications. The
Solaris
64-bit Developer's Guide, written primarily for
the application developer, supplies guidance on choosing whether
to use the 32-bit or 64-bit Solaris application
programming environment. The manual explains the similarities and
differences between the 32-bit and 64-bit application environments
and explains how to write code that is portable between the two
environments. This book also describes some of the tools provided by
the operating system for developing 64-bit applications.
Writing for a Cluster Environment
The Solaris OS can be configured into a cluster environment to
improve availability. The Sun
Cluster Data Services Developer's Guide for Solaris OS describes the data service API in Sun Cluster software. Developers can use this
API to turn a standard user application such as a web browser or
database into a highly available data service that can run in the Sun
Cluster software environment.
Network Programming in the Solaris OS
The following documentation provides information on topics related
to network programming: making remote procedure calls, programming a
system management agent, and developing web-based enterprise
management applications.
Making Remote Procedure Calls
The Solaris OS provides ONC+ distributed services for
making remote procedure calls (RPC). The ONC+
Developer’s Guide describes the ONC+ distributed
services that were developed at Sun Microsystems. ONC+ technologies
consist of a family of technologies, services, and tools:
Remote procedure calls (RPC).
Transport-independent remote procedure call (TI-RPC) was
developed to make RPC applications transport independent.
External data representation (XDR) is an
architecture-independent specification for representing data.
Network Information Services Plus (NIS+) is the enterprise
naming service in the Solaris environment. This service provides a
scalable and secure information base.
The guide contains information on the rpcgen tool and the
portmap utility, as well as code examples on the use
of RPC.
Writing a System Management Agent for the Solaris OS
The System Management Agent (SMA) is an agent for receiving and
transmitting SNMP messages through the transports TCP, UDP, and UNIX
Domain Sockets. The SMA agent is based on the open source Net-SNMP
agent. The Solaris
System Management Agent Developer’s Guide provides
information for developers who want to create Management Information
Base (MIB) modules to extend the functionality of the agent. The
manual also provides information on the creation of SMA modules and
the interfaces that MIB modules use. An appendix provides information
for developers who want to migrate an SEA subagent from the Solstice
Enterprise Agents software for use in a System
Management Agent.
Developing Web-Based Enterprise Management Applications
The Solaris
WBEM Developer's Guide describes the components of
the Solaris Web-Based Enterprise Management (WBEM) Software
Development Kit (SDK) and explains how to use these components to
develop WBEM-based applications. The book describes the following
subjects:
The Common Information Model (CIM) Object Manager
The WBEM Query Language (WQL)
Creating JavaBeans components using the Managed
Object Format (MOF) compiler
WBEM security mechanisms
Programming With Solaris OS Interfaces and Frameworks
The Solaris OS provides numerous interfaces and frameworks that
enable developers to create software that takes advantage of the features and services in the operating system.
Multithreaded Programming in the Solaris OS
The Solaris OS provides the ability to develop applications with
separate, parallel threads to improve application performance. The
Multithreaded
Programming Guide covers the APIs for POSIX and Solaris threads, programming with synchronization objects, and compiling
multithreaded programs This guide is for developers who want to use
multithreading to separate a process into independent execution
threads, improving application performance and structure. Appendixes
contain examples of code for both POSIX and Solaris threads.
Programming Interfaces
The Programming
Interfaces Guide describes programming interfaces that are
specific to the Solaris environment. This book has information on the
following subjects:
- Memory and CPU management
- Process scheduling
- Input and output interfaces
- Interprocess communication and sockets
- Transport Layer Interface (TLI) and the X/Open Transport
Interface (XTI)
- Transport selection
- The Solaris application binary interface
The Solaris OS includes two utilities that enable application
developers to verify an application's compliance with the Solaris
Application Binary Interface (ABI). Compliance with the Solaris ABI
ensures that your software code will be portable across releases of
the Solaris OS. The Solaris ABI defines the interfaces that are
available for the use of application developers.
The appcert utility statically examines the Solaris
library interfaces used by ELF binaries for instances of private
interface usage. The apptrace tool uses the link-auditing
capability of the runtime linker to dynamically trace Solaris
library routine calls as the application runs.
Developing Custom Dynamic Host Configuration Protocol Applications
The Solaris OS provides dynamic host configuration protocol (DHCP)
services as well as a framework for developing custom DHCP
applications. The Solaris
DHCP Service Developer’s Guide provides information
for developers who want to use a data storage facility that is not
currently supported by the DHCP service in the Solaris OS. The manual gives an
overview of the data access framework used by DHCP in the Solaris OS and
general guidelines for developers. The book describes the service
provider layer API and provides sample code templates.
Developing Security Applications and Services in the Solaris OS
The Solaris
Security for Developers Guide is for developers of
applications that consume security services as well as developers of
applications that provide security services for the Solaris OS.
Programming interfaces are documented for the following services:
PAM, SASL, GSS-API, the Solaris cryptographic framework, and process
privileges. The book provides working examples that demonstrate the security
services in the Solaris OS.
Developing Device Drivers
The Solaris OS provides a family of interfaces for facilitating
the development of robust, portable device drivers. The Writing
Device Drivers manual provides information on developing drivers
for character-oriented devices, block-oriented devices, USB devices,
and SCSI target and HBA devices for the Solaris OS. This book
discusses how to develop multithreaded reentrant device drivers for
all architectures that conform to the DDI/DKI (Device Driver
Interface/Driver-Kernel Interface) for the Solaris OS.
Additional topics include:
- Porting drivers for the Solaris OS to a 64-bit environment
- Cluster-aware drivers
- Driver autoconfiguration
- Programmed I/O
- Direct Memory Access (DMA)
- Power management
- Device context management
- Compilation, installation, and testing of drivers
- Debugging drivers
Appendixes provide information on hardware issues, kernel
functions available to device drivers, and guidelines on device
drivers for 64-bit environments.
A separate book, the Device
Driver Tutorial, provides an overview to device driver
development, several basic driver examples, and a list of tips for
developing drivers in the Solaris OS.
Writing System Resource Management Applications
The Solaris
10 Resource Manager Developer’s Guide describes how
to write applications that partition and manage system resources such
as processor sets and scheduling class. This book references the
programming APIs provided to partition, schedule, and set bounds on
the consumption of system resources and to make the configuration of
resources persistent. This book offers programming examples and a
discussion of programming issues to consider when writing an
application.
Developing Software for International Audiences
The Solaris OS provides an internationalization architecture to
assist in the development, the deployment, and the management of
applications and language services from around the world. A single
multilingual product provides support for 39 different languages and
162 locales. In addition, support is available for the complex text
layout that is required for Thai and Hindi scripts. Bidirectional
text capability is also supported for languages such as Arabic and
Hebrew. The International
Language Environments Guide describes how to use the
current Solaris release to build global software products that
support a variety of languages and cultural conventions.
Documentation for Solaris System Administrators and End Users
Although the documentation described in this section is intended
for system administrators and other end users, you may find it useful
to learn about the behavior of Sun products from the end user's
perspective.
The Solaris System Administration Guide is arranged into the
following volumes:
System
Administration Guide: Basic Administration -- User
accounts and groups, server and client support, shutting down and
booting a system, managing services, and managing software (packages
and patches)
System
Administration Guide: Advanced Administration -- Printing
services, terminals and modems, system resources (disk quotas,
accounting, and crontabs), system processes, and troubleshooting
Solaris software problems
System
Administration Guide: Devices and File Systems --
Removable media, disks and devices, file systems, and backing up and
restoring data
System
Administration Guide: IP Services -- TCP/IP network
administration, IPv4 and IPv6 address administration, DHCP, IPsec,
IKE, Solaris IP filter, Mobile IP, IP network multipathing (IPMP),
and IPQoS
System
Administration Guide: Naming and Directory Services (DNS, NIS, and
LDAP) -- DNS, NIS, and LDAP naming and directory services,
including transitioning from NIS to LDAP and transitioning from NIS+
to LDAP
System
Administration Guide: Naming and Directory Services (NIS+)
-- NIS+ naming and directory services
System
Administration Guide: Network Services -- Web cache
servers, time-related services, network file systems (NFS and
Autofs), mail, SLP, and PPP
System
Administration Guide: Security Services -- Auditing,
device management, file security, BART, Kerberos services, PAM,
Solaris cryptographic framework, privileges, RBAC, SASL, and Solaris
Secure Shell
System
Administration Guide: Solaris Containers—Resource Management
and Solaris Zones -- Resource management topics projects
and tasks, extended accounting, resource controls, fair share
scheduler (FSS), physical memory control using the resource capping
daemon (rcapd), and dynamic resource pools; virtualization using
Solaris Zones software partitioning technology
Some other volumes and collections for system administrators are
as follows:
Solaris
Smartcard Administration Guide -- The Solaris Smart Card Framework enables a
user to log in securely to the desktop environment for the Solaris 8, Solaris 9, or Solaris 10 releases. A smart card is a plastic card that allows you
to access a system by inserting a programmable card into a card
reader. This guide shows how to configure systems and smart cards
for this form of authentication. The guide also explains how to use
a smart card after the Solaris Smart Card Framework has been configured.
Solaris
System Management Agent Administration Guide -- This guide
explains how to install, configure and work with the System
Management Agent (SMA). The System Management Agent is the Sun
Microsystems implementation of the open source Net-SNMP agent, which
is used to query, monitor, and manage devices connected to IP
networks.
Solaris
Tunable Parameters Reference Manual -- This reference
manual provides reference information on the tunable parameters for
the Solaris OS kernel and network, for systems based on both SPARC and x86
processors.
Solaris
Volume Manager Administration Guide -- The volume manager
guide explains how to manage disk storage, including creating,
modifying, and using RAID-0 (concatenation and stripe) volumes,
RAID-1 (mirror) volumes, RAID-5 volumes, and soft partitions.
Solaris
10 Release and Installation Collection -- This collection contains release notes and installation guides for various methods of installing the Solaris
OS.
Solaris
10 on Sun Hardware Book Collection -- This collection
contains information on Solaris 10 hardware platforms and
the SunVTS validation test suite. The SunVTS validation test suite
is a diagnostic tool designed to test Sun hardware. These tests
verify the connectivity and functionality of most hardware
controllers and devices for SPARC and x86 architectures. SunVTS software also
provides an infrastructure for programmers to develop their own
tests and run them using the SunVTS interface.
As in all UNIX systems, the Solaris OS provides
detailed information about system internals through man pages. If you
are unfamiliar with the man page concept, see the man page for the
man(1)
command itself or type man man on the
command line. The Solaris OS provides more than 13,000 man pages. All
man page collections are broken up into sections, which vary slightly
from vendor to vendor or even release to release. Large sections are
sometimes divided into volumes.
Viewing man pages on the Sun Product Documentation site at http://docs.sun.com offers several advantages over
viewing man pages from the command line. Each section or volume is
presented as a book with an index, preface, and an alphabetized list
of items with links and short descriptions. For example, the
following partial list comes from the Section 2 System Calls web page.
Figure 2: Docs.sun.com: System Calls

In some sections, an introductory page provides an overview of the
section. The man pages for the Solaris 10 OS are organized into
sections and volumes as follows:
man
pages section 1: User Commands -- Contains all
non-administration commands on the system. The Intro(1)
man page provides information on man page command syntax for users,
guidelines for developers who are designing new man pages, and an
explanation of the subdivisions within Section 1.
man
pages section 1M: System Administration Commands --
Contains commands for system maintenance and other administrative
purposes. The Intro(1M)
man page repeats the man page command syntax for users from the User
Commands volume.
man
pages section 2: System Calls section -- Contains
prototypes and descriptions for the various system calls that can be
made in the Solaris OS. This section focuses on calls
that directly invoke UNIX system primitives. The Intro(2)
man page provides a list of all possible error returns from system
calls as well as a glossary of system call terminology.
Section 3 provides information on library calls and is
divided into the following volumes:
man
pages section 4: File Formats section -- Describes
file formats. The C structure declarations for the file formats are
provided where applicable.
man
pages section 5: Standards, Environments, and Macros
section -- Contains miscellaneous information. The Intro(5)
man page describes the topics in this section.
man
pages section 6: Demos section -- Contains games and
demos.
man
pages section 7: Device and Network Interfaces section --
Contains various device and network interfaces available on the
system. The Intro(7)
man page explains how the section is organized.
Section 9 provides information on the device drivers and is
organized into the following volumes:
Two good resources with pointers to current documentation for Java technology are the Java Technology Documentation web page and the Development Tools web page. These web pages refer to the following technologies:
J2SE
Platform -- Java 2 Platform, Standard Edition (J2SE) provides
a complete environment for application development on desktops and
servers. It also serves as the foundation for the Java 2 Platform,
Enterprise Edition (J2EE) and Java technology-based web services. There are two
principal products in the J2SE platform family: Java
Runtime Environment (JRE) and J2SE
Development Kit (JDK). The JRE provides the Java APIs, Java
virtual machine, and other components necessary to run applets and
applications written in the Java programming language. It is also
the foundation for J2EE technology for enterprise software development and deployment. The JRE does not contain tools and utilities such as
compilers or debuggers for developing applets and applications.
J2EE
Platform -- The Java 2 Platform, Enterprise Edition (J2EE)
defines the standard for developing multitier enterprise
applications. The J2EE platform simplifies enterprise applications
by basing them on standardized, modular components, by providing a
complete set of services to those components, and by automatically
handling many details of application behavior, thus reducing
programming complexity.
Java
Technology and Web Services -- Web services are web-based enterprise
applications that use open, XML-based standards and transport
protocols to exchange data with calling clients. The J2EE platform
provides the APIs and tools you need to create and deploy
interoperable web services and clients. The Java
Web Services Tutorial is a guide for programmers who are
developing and deploying web services and web applications on the
Sun Java System Application Server Platform Edition 8 Update 1
(version 8.0.0_01).
J2ME Platform -- The Java 2 Platform, Micro Edition (J2ME)
provides a robust, flexible environment for applications running on
consumer devices, such as mobile phones, PDAs, and TV set-top boxes,
as well as a broad range of embedded devices. Like its counterparts
for the enterprise (J2EE), desktop (J2SE), and smart card (Java Card)
environments, J2ME includes Java virtual machines and a set of
standard Java APIs defined through the Java Community Process by
expert groups whose members include leading device manufacturers,
software vendors, and service providers.
Java
Card Platform -- Java Card technology provides a secure environment
for applications that run on smart cards and other devices with very
limited memory and processing capabilities. Multiple applications
can be deployed on a single card, and new applications can be added
to a card even after it has been issued to the end user.
Applications written in the Java programming language can be
executed securely on cards from different vendors.
XML
-- Extensible Markup Language (XML) is a cross-platform, extensible,
and text-based standard for representing data. It is also a key
technology in the development of web services. The following
architectures and APIs are provided for developing XML-based
applications:
- Java Architecture for XML Binding (JAXB)
- Java API for XML Processing (JAXP)
- Java API for XML Registries (JAXR)
- Java API for XML-based RPC (JAX-RPC)
- SOAP with Attachments API for Java (SAAJ)
API
Specifications -- API specifications for the Java platform
and related products and libraries are freely available to the community of Java technology users.
Java
Performance Documentation -- A large body of information is available for tuning performance of Java technology throughout the stack.
Java Technology-Based Development Tools --
Sun offers three powerful, integrated development environments for developing and deploying Java applications that are fully compliant with Java technology standards:
- The open source NetBeans
IDE is a tool for developing and deploying components and applications based on J2SE, J2ME, and J2EE technology. NetBeans is a code-centric IDE, that
is, it is designed for developers who prefer to focus on the
edit/compile/debug cycle.
- Sun
Java Studio Creator IDE, a visual design tool based on the NetBeans
platform, enables the rapid development of Java applications for the web. The Java Studio Creator environment uses:
- A visual design center
- Standard components based on JavaServer Faces technology
- Rowset technology found in Java DataBase Connectivity DataBase (JDBC) software for working with relational databases
- A simplified event coding model to increase developer productivity
- Sun Java Studio Enterprise 7 software allows
for model-driven development based on the NetBeans platform and
supports complete application development for the J2EE platform in addition to Java
applications for the desktop and web tier programming. Features include visual UML Java class diagramming, reverse engineering of Java (and J2EE) classes, real-time communication and collaboration on coding projects, and execution profiling of
deployed J2EE applications. In addition, the Sun Java Enterprise
System is packaged with Sun Java Studio Enterprise 7 software so that
developers can leverage the powerful functionality provided in this system. To learn more, check out the numerous resources, including:
The Sun Java Enterprise System is a software infrastructure
that provides the services needed to support enterprise-strength
applications distributed across a network or Internet environment,
specifically:
Portal services. Portal
services enable mobile employees, telecommuters, knowledge workers,
business partners, suppliers, and customers to use the Internet to
securely access their personalized corporate portal from anywhere
outside the corporate network. These services provide anytime,
anywhere access capabilities to user communities, delivering
integration, aggregation, personalization, security, mobile access,
and search.
Communications and collaboration services. These services enable the secure interchange of information among diverse user communities. Specific
capabilities include messaging, realtime collaboration, and
calendar scheduling in the context of the user's business
environment.
Network identity and security services. The services improve security and protection of key corporate information assets by ensuring that
appropriate access control policies are enforced across all
communities, applications, and services on a global basis. These
services work with a repository for storing and managing identity
profiles, access privileges, and application and network resource
information.
Web and application services. Based on J2EE technology, these services enable IT
organizations to develop, deploy, and manage applications for a
broad range of servers, clients, and devices.
Availability services. These services deliver a unique approach to
application service-level management. Availability services provide
the patented "Always-On" technology for application and
web services, delivering near-continuous availability and
scalability.
The documentation collection for Sun
Java System Application Server software contains information
about all elements in the Sun Java Enterprise System. The
collection includes the Sun
Java Enterprise System 2004Q2 Documentation Roadmap, which can
give you an idea of the available documents. For information that is
of specific interest to developers, see the current versions of the
following manuals:
Information on writing server plug-ins (that is, libraries of
functions registered with the server to perform key parts of
specific directory service operations) is found in these books:
The Java System Application Server API lets you extend server capabilities for needs not met in the currently available releases of the product.
Sun's LDAP SDKs help developers build cross-platform, standard directory client applications. If you create LDAP client applications in C on multiple platforms, read the Sun Java System Directory Server Resource Kit 5.2 LDAP SDK for C Programming Guide. If you create LDAP client applications in the Java programming language, but want an API more specific to LDAP than the Java Naming and Directory Interface API, see the Directory SDK 4.0 for Java Programmer's Guide and Directory SDK 4.1 for Java API Specification.
Sun Java
System Calendar Server Developer's Guide lets you customize
calendar server functionality in five areas: access control,
authentication, calendar lookup, data format translation, and user
attribute access.
Sun Java
System Identity Server Developer's Guide and Sun
Java System Identity Server Developer's Reference provide
information for implementing an integrated identity management and
web access platform using Sun Java System servers and software. For
individual APIs, see Sun
Java System Identity Server Java API Reference.
Sun Java
System Message Queue 3.5 SP1 C Client Developer's Guide and Sun
Java System Message Queue 3.5 SP1 Java Client Developer's Guide provide information for exchanging messages using a Message Queue
messaging system in the C and Java programming language versions, respectively.
Sun Java
System Messaging Server Developer's Reference provides
information on the Sun Java System Messaging Server MTA (mail
transport agent) software development kit, a low-level interface for
enqueueing, dequeueing, and other miscellaneous routines for operating
on the MTA.
Sun Java
System Messenger Express Customization Guide helps you rewrite
the static portion of the pages served by the Sun Java System
Messenger Express HTTP daemon to produce a fully customized web mail
service.
Sun
Java System Communications Express Customization Guide shows you
how to customize the Calendar, Address Book and Mail client modules
in Communications Express.
Sun Java
System Portal Server Developer's Guide, Sun
Java System Portal Server Mobile Access Developer's Guide, and
Sun Java System
Portal Server Mobile Access Developer's Reference provide
information for creating voice-enabled applications from telephones
and for customizing the Portal Server, Portal Desktop, and other
associated software.
Sun Java
System Application Server Enterprise Edition Developer's Guide
and Sun Java
System Application Server Platform Edition Developer's Guide
provide information for creating, assembling, and deploying J2EE
applications using Sun Java System Application Server Enterprise and Platform Editions, respectively.
If you develop applications in the Basic programming language, see
the StarOffice
7 Office Suite - Basic Programmer's Guide.
Developers who write applications for the Sun Java Desktop System
(JDS) should refer to the Java
Desktop System Configuration Manager Developer Guide to enable
the applications to be managed by the JDS Configuration Manager.
Developers working on components for the N1 Grid Service
Provisioning System product can use the N1
Grid Service Provisioning System 5.0 Plug-in Development Guide to
design plug-ins and the N1
Grid Service Provisioning System 5.0 Plan and Component Developer's
Guide to learn about managing applications.
In addition to Sun documentation, you can learn about Sun products
from the following sources:
- Sun Developer Services -- Sun Developer Services are provided by Sun to help developers specifically with programming advice and product support issues.
- Sun Forums -- The Solaris forums provide the means for you to post questions and other topics to the Solaris and other Sun product/technology communities.
- SunSolve online support documents -- SunSolve maintains a knowledge base of short articles that provide solutions for specific issues concerning Sun hardware and software products. See the Support Documents and Knowledge Base web pages at the SunSolve web site. SunSolve also provides patch information, special bulletins, a FAQ for Forte for Java tools, and articles on StarOffice software.
- Sun instructor-led and online courses -- Courses on the Solaris OS, as well as other technologies offered by Sun Microsystems, are listed in the course catalog.
- Sun Developer Network articles -- Where the Sun documentation provides the fundamentals about technologies, articles on the Sun Developer Network complement documentation by providing information on special techniques and aspects of technologies of a more specialized nature. The Sun Developer Network provides detailed technical articles.
- BigAdmin web site -- The BigAdmin portal is a valuable resource for the administrator community and offers a lot of good information to developers as well, considering the importance of knowing how to maintain one's system. The web site provides articles, a list of Solaris OS-compatible hardware, and a library of scripts, among other resources.
- Other books -- You can also find good information for developing on Sun products from books published by Sun Microsystems Press.
- Solaris OS product literature -- For product literature on the Solaris OS including data sheets, tours, case studies, and white papers, see the Solaris
Operating System web site.
- Java product literature -- For product literature on the Java language and associated products, refer to the Java technology web page.
John Stearns is an SDN information architect at Sun Microsystems, Inc.