What I do at Sun
Whenever I'm asked by family & friends to describe what I do at Sun, unless I'm talking to other engineers, my description of my job & current project usually leaves my audience with that glazed look in their eyes. My hope is that with this blog, I can describe my work, and the immense satisfaction I get out of it, in a way that's approachable to all interested. So I'll start here with a high-level, not too technical description of what I do, then dive into more technical details in future posts.
I lead a small team of developers working on software that configures and manages a set of computer systems. But instead of each of these "systems" being a separate physical computer, they're all running on the same machine! This is possible partly through a technique called virtualization, which allows one computer to run multiple operating system (OS) images simultaneously. Each OS thinks it's running on its own physical computer system, with CPU(s), memory, disk, console terminal, and network connection(s). This illusion of a complete computer system is sometimes called a "virtual machine". We call it a "Logical Domain" (LDom for short). The OS image running in an LDom is termed a "guest" OS. To someone logging in to a LDom, it is indistinguishable from logging in to a separate machine running the same OS.
We actually accomplish this through a combination of partitioning and virtualization. Since the computers our project utilizes contain lots of CPUs and memory, we can split these up among the running guest OS's. This is the partitioning piece. But in the case of, say, network connections, there are generally not enough to go around for each guest to have its own. So we utilize virtualization to allow a small number of limited physical resources to appear as a larger number of virtual resources, allowing each guest to think it has its own private resource (e.g. network connection), when in reality, it's sharing that resource with other guests.
The management software our team develops is just one component of the overall "Logical Domains" (LDoms) technology. Correspondingly, our small team is part of a larger team implementing all the other necessary components to produce the LDoms software "stack".
News first started leaking out about our LDoms effort when David Yen mentioned the technology in an interview he did back in January. More recently, LDoms was announced by John Fowler, the Vice President of the recently formed Systems Group.
Although LDoms has not been released yet, some of the code is already available as part of the OpenSolaris project. In addition, other folks have been blogging about it, so it's time that some of the developers on the LDoms team join in the discussion.
The initial LDoms release will be targeted at our T1000 and T2000 platforms. These systems utilize our UltraSPARC T1 processor and Hypervisor virtualization technology. LDoms leverages the virtualization infrastructure already built in to the hardware and hypervisor of these platforms, and takes it one step further to provide support for dynamically creating & managing multiple logical domains, each able to host its own guest OS. Some customers without highly threaded workloads have asked us how these CMT systems can best work for them. Logical Domains is one important answer.
My role is the team lead for the LDoms Manager software component. The LDoms Manager configures, monitors and controls logical domains, and is itself managed by system administrators (either directly or through other management software). I'll talk more about how the LDoms Manager accomplishes these tasks in subsequent posts. For now, I hope this introduction helps both non-technical and technical folks get a better understanding of what I'm doing in my current project, as well as a little taste of what virtualization technology and our Logical Domains product are all about.
Posted at 08:30AM Oct 25, 2006 by Eric Sharakan in Sun | Comments[7]
Trackback URL: http://blogs.sun.com/sharakan/entry/welcome
Posted by Jay Grogan on November 08, 2006 at 09:00 PM EST #
Posted by Eric Sharakan on November 14, 2006 at 09:08 PM EST #
Posted by Bernd Schemmer on December 17, 2006 at 07:52 AM EST #
Posted by Eric Sharakan on December 19, 2006 at 08:38 AM EST #
Posted by Nano on December 28, 2006 at 02:20 PM EST #
Posted by Eric Sharakan on January 02, 2007 at 01:06 PM EST #
Boot device: /virtual-devices@100/channel-devices@200/disk@0:a File and args: SunOS Release 5.10 Version Generic_118833-33 64-bit Copyright 1983-2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. disk: no major number channel-devices: no major number Cannot load drivers for /virtual-devices@100/channel-devices@200/disk@0:a Can't load the root filesystem Debugging requested; hardware watchdog suspended. Type 'go' to resume {0} okAny ideas??? Thanks.Posted by Dan Mitton on June 08, 2007 at 02:33 PM EDT #