Professional Documents
Culture Documents
1 Introduction to Solaris
1.1
The Solaris operating system was developed by Sun Microsystems in 1992. The SunOS
version 4, based on BSD, was succeeded by a new version called Solaris 2, which was based
on UNIX System V. Internally, the new version was still called SunOS version 5.0 but it was
marketed as Solaris 2, and the previous SunOS v.4.1 was renamed as Solaris 1.The first
Solaris 10 version (SunOS 5.10) was released in January 2005 . There were occasional
updates, with the latest stable release being Solaris 10 8/07 (as of October 2007).
The development of the Solaris OS focused on the following key areas 1
Reliability development in fault and error detection, isolation and recovery, and
service management combined with a strictly enforced rigorous set of standards for
integrating new code into Solaris OS.
Observability Kernel features combined with user software to monitor and analyze the
behavior and performance of applications and the Solaris kernel.
1.2
Introduction to Solaris 10
This chapter discusses the features of the latest release of the Solaris operating system 2.
Predictive self-healing Solaris 10 combines the Solaris Fault Manager and the Solaris
Service Manager , which is able to act when a hardware or software fault occurs. There
are facilities for event detection and isolation. Once a fault has been detected, a
dynamic deactivation of the affected components can be done.
Solaris Zones Allows for the creation and management of virtual computers coexisting within a single instance of the Solaris kernel. Each zone has its own
environment, processes and users that are independent of each other. A zone can also
be made to run a specific application, providing a virtual environment specifically
customized for that application.
Dynamic Resource Pools Allows users to assign particular processor or processor time
shares to a particular user. For example, a user can define a resource pool that is
allocated 70 percent of the CPU time of two processors, which can be assigned to a
particular process.
1 Richard McDougall and Jim Mauro. Solaris Internals. Sun Microsystems 2007
2 ibid.
Operating Systems
J.E.D.I.
Physical Memory Control users can limit how much physical memory a process can
use.
Dynamic Tracing Facility Allows for users to probe the behavior of applications and the
kernel as they run without having to modify any code.
x64 architecture support increased support for the new Intel 64-bit processors,
allowing Solaris 10 to support both 32-bit and 64-bit Intel processors.
1.3
The Solaris Kernel is divided into modules that provide the following functionalities:
System call interface provides an interface for user level programs to access kernel
functions.
Memory management the memory system not only handles physical memory
allocation to processes, but also handles virtual memory stored in the hard disk as well
as allocation of memory to kernel processes.
Hardware address translation layer This layer provides a mapping of the memory
address space to different devices, not just physical memory. For instance, a memory
address could, instead of pointing to physical memory, point to virtual memory which is
stored in the hard disk. Also, devices could be mapped to memory addresses.
Retrieving a value from the said address is actually a request for input from that device.
The hardware translation layer abstracts the memory management layer from this
complexity.
Operating Systems
J.E.D.I.
File system management handles I/O to files. Solaris 10 can use a variety of different
file systems at the same time.
I/O bus and nexus drivers direct access to devices is handled by this module. For
each device attached to the system, Solaris loads a device driver which takes care of
the nuances of each device. The result is a seamless view of I/O for the rest of the
kernel.
Kernel services (clocks, timers, etc) this module provides the regularly used kernel
functionalities such as clock interrupts and synchronization libraries.
Sources:
McDougall and Mauro. Solaris Internals. Sun Microsystems. 2007.
Operating Systems