Logical Domains
Logical Domains (LDoms or LDOM) is a technology from Sun Microsystems which offers a virtualized computing environment abstracted from all physical devices.Each domain is a full virtual machine with a reconfigurable subset of hardware resources. Operating systems running inside Logical Domains can be started, stopped and rebooted independently.
Supported hardware
The SPARC Hypervisor runs in the Hyper-Privileged execution mode, which was introduced in the sun4v architecture. The two sun4v processors released as of August 2007 are the UltraSPARC T1 and UltraSPARC T2, and thus only systems based on those processors support Logical Domains. These include the UltraSPARC T1-based:
* Sun SPARC Enterprise T1000 and T2000 servers
* Sun Fire T1000 and T2000 servers
* Netra T2000 Server
* Netra CP3060 Blade
* Sun Blade T6300 Server Module
And the UltraSPARC T2-based:
* Sun SPARC Enterprise T5120 and T5220 servers
* Sun Blade T6320 Server Module
Logical Domains exploits the "Chip Multi Threading" (CMT) nature of the UltraSPARC T1 and T2 processors. A single chip contains up to 8 CPU cores, and each core has either 4 hardware threads (for the T1) or 8 hardware threads (for the T2) that act as virtual CPUs. All CPU cores execute instructions concurrently, and each core switches between threads—typically when a thread stalls on a cache miss or goes idle—within a single clock cycle. This lets the processor gain throughput that is lost during cache misses in conventional CPU designs.
Each processor can support as many as one domain per hardware thread—up to 32 domains for the T1 and 64 domains for the T2. Alternatively, a given domain can have multiple CPU threads for additional capacity within a single OS instance.
Logical Domain roles
All logical domains are the same except for the roles that you specify for them. There are multiple roles that logical domains can perform such as:
* Control domain
* Service domain
* I/O domain
* Guest domain
The Control domain, as its name implies, controls the logical domain environment. It is used to configure machine resources and guest domains, and provides services necessary for domain operation, such as virtual console service. The control domain also normally acts as a service domain.
Service domains present virtual services, such as virtual disk drives and network switches, to other domains. In most cases, guest domains perform I/O via bridged access through services domains, which are directly connected to the physical devices. Service domains can provide virtual LANs and SANs as well as bridge through to physical devices. Disk images can reside on complete physical disks, slices (partitions of a disk), or even on files contained on a UFS or ZFS filesystem. Current processors can have two services domains in order to provide resiliency against failures.
I/O domain has direct ownership of and direct access to physical I/O devices, such as a network card in a PCI controller. Shares the devices to other domains in the form of virtual devices. You can have a maximum of two I/O domains for the current UltraSPARC T1 (Niagara) servers, one of which also must be the control domain.
Guest domains run an operating system instance without performing any of the above roles, but leverage the services provided by the above in order to run applications.
Control and service functions can be combined within domains, however it is recommended that user applications not run within control or service domains in order to protect domain stability and performance.
Supported guest operating systems
* Solaris 10 11/06 or later
* Ubuntu Linux Server Edition
* FreeBSD (under development)
* Wind River Platform for Network Equipment, Linux Edition (announced availability: second half of 2007)



