What’s New in Solaris Express 10/04 (Build 69, Beta7)

I promised to write about each new release of Solaris Express. It has been quite some time since we had a release, but the latest, Beta7, should be released on Friday, October 29. You can visit the revamped Solaris 10 website to get the freshest bits around!

As always, please remember to Read the Release Notes before installing. It contains workarounds for some of the bugs we’ve already identified and
squashed for the the next beta build.

So: If you thought we did a lot in build 63, you ain’t seen nothin’. Build 69 includes some sweeping changes, in the form of the new Service Management Facility, the Java Desktop System and piles of other improvements.

Service Management Facility

The Service Management Facility is the second portion of the Predictive
functionality delivered in Solaris 10. smf(5) arrives in
Beta 7, bringing significant enhancments to the system service
adminstrative model, automated service restart, parallelized system boot,
and many other features.
To help you to navigate the changes and enhancements:

  • Start Here! Shortly, the
    BigAdmin Self-Healing Site
    will be updated with content related to SMF. Once you’ve downloaded the
    bits, it should be your first stop.

  • The smf(5) manpage provides an overview.
  • Exploration of services is handled by svcs(1). The -x option provides
    an “explanation” for services not running, and -p shows the
    relationship between services and processes.

  • svcadm(1M) allows simple manipulation of services, such as enable and

  • inetadm(1M) provides inetd-service manipulation tools.
  • "boot -m verbose" allows you to customize boot console output to
    be more verbose than the default, quiet output.

  • The System Administration Guide and manual pages have been updated to
    reflect the changes made by SMF. Other sources of information include:


    Java Desktop System Release 3 replaces Gnome 2.0. This includes

    • The Gnome 2.6 desktop
    • Evolution 1.4.6, an email and calendaring solution (/usr/bin/evolution)
    • Mozilla 1.7 (/usr/sfw/bin/mozilla)
    • Lots more.
  • On Solaris x86 systems, the X.Org Foundation X-Windows Server has been
    integrated. It is now the default X server
    , and is available in /usr/X11.
    Note: There are a couple of open issues with Xorg– so please be aware that if
    Xorg doesn’t autoconfigure (which is common on laptops at the moment),
    you’ll need to run ‘Xorg -configure’ and maybe tweak the resultant xorg.conf
    file. Hopefully someone will ‘blog in depth on this, and I can provide a link.

Debugging and Observability

  • New plockstat(1m) utility gathers and displays user-level locking
    , including reader/writer locks, mutexes, etc. If you have
    ever tried to understand the behavior of a multithreaded application on
    any OS platform, you will surely appreciate this feature. It’s also
    a showcase for what is possible with DTrace. The plockstat command
    is really just a veneer atop the plockstat DTrace provider (see below).

  • Several new enhancements to DTrace
    • New jstack() action makes it easy to remember how to obtain
      Java VM stack traces.

    • New system() action; for example:
      /execname == "mydaemon"/
      system("gcore -g %d", pid);
      system("prun %d", pid);

      (Note: use stop and prun with caution!)
      Adam has written a more comprehensive ‘blog entry about the system

    • New plockstat and USDT tracing providers.
  • psrset(1M) and pbind(1M) have been enhanced to allow per-LWP queries and

x86 Platform

  • Solaris x86 CPU identification code has been reimplemented. Solaris
    now boots on a wider range of CPUs, including those from
    Transmeta and
    The results of the feature detection are available via isainfo -x.

    Horrifying workarounds
    are no longer needed.

  • An automatic processor-specific libc mechanism has also been implemented;
    this allows Sun to deliver optimized versions of libc for specific
    processor capabilities; the appropriate libc is installed at boot time.

  • The system call layer has also been revised to use the faster SYSENTER
    instruction on platforms where it is available.

  • memcpy() is faster, especially on large copies.
  • ieee1394 (Firewire) support for x86 (see also “storage support”, below).
  • Intel ICH3/ICH4/ICH5 audio core is now supported. Alan DuBoff has a summary.
  • aac driver now supports the
    Adaptec SCSI RAID 2200S.

  • USB 1.0/1.1 (uhci) support has been improved.
  • RealTek 8139
    10/100 NICs are now supported via the new ‘rtls’ driver.

  • poweroff(1M) and init 5 support for many more systems, including many
    laptops. Hooray!

Security Features

  • sshd now interacts with the PASSREQ setting in /etc/default/login.
    See sshd_config(4) for details.

  • pam_ldap has been revised. See the What’s New guide for details.

Storage Support

  • Mass storage support for ieee1394 (firewire) devices is available
    on both SPARC and x86; the OS treats the device as a removable media device. The
    support is similar to the treatment of USB mass-storage devices.

  • USB mass storage support has been improved, with better support for
    memory sticks, USB floppies, media formatting, and more.

  • SVM has been enhanced to provide cluster volume management
    functionality. It is enabled in conjunction with the SunCluster

  • SVM mirror resyncs are now checkpointed: systems that are shutdown
    while resyncs are in progress will resume resyncs from the last


  • Network booting now uses TCP as NFS transport. Also, WANboot performance
    is much improved.

  • IP forwarding is now off by default, even on systems with multiple
    interfaces. See routeadm(1M) for details on how to enable IP
    forwarding if desired.

  • An IPP Internet Printing Protocol listener is available on port 631.


  • SRS NetConnect
    is now available in the “Additional Software” section of the installer.