Getting a Feel for Solaris 10

Solaris has always had the edge over Linux when it comes to scalability; SunOS had its roots in big iron. As a FreeBSD user first and a Linux user second (and a Windows user a distant third), a lot of things felt very familiar inside Solaris 10. Sun's Java Desktop System, JDS, is immediately recognizable as a SUSE derivative. We won't touch on JDS too much in the next couple pages, but instead focus on the underlying kernel and some Solaris's more interesting and original features.

As we mentioned earlier, scalability is a big issue but if anyone can tackle that obstacle, it's Sun. Sun spent a lot of time getting Solaris 10 ready for x86, and as you will see in our benchmarks section, the "Slowlaris" moniker might be dead. Solaris 10 features a new scheduler that allows per-CPU optimizations as well as faster string functions, SSE2 support and new x86_64 specific libc system calls. Granted, we would like to see some SSE3 optimizations as well, but these features sound pretty good for now.

One of the neatest, unexpected features in Solaris 10 was Zones; also known as N1 Grid Containers. Zones behave very similar to UserMode Linux (UML); each Zone is a virtual instance of Solaris 10 with it's own IP address and user land. However, Zones are different because each virtual OS shares the base kernel. This is a huge performance boost for the virtual operating system because each instance is not constantly waiting for resources like in UML; they can just demand them when necessary. Zones can be configured to only utilize a specified amount of resources as well. Of course the downfall to this is if a single Zone is compromised, the whole system is effectively compromised. Fortunately, compromising a Solaris 10 system is not an easy task either; additional Process Rights Management and User Rights Management are prevalent in Solaris 10.

David Comay from Sun writes:

    One of the design goals of Zones was to ensure that if a single zone *was* compromised that the whole system would *not* also be compromised. We believe that we achieved that to a very large extent in Solaris 10. From an isolation perspective, the primary weakness is that there is a single kernel and if a user program somehow trips over a kernel bug and causes the system to panic, then of course, that affects the whole system. But from a security perspective, someone who is a privileged user (namely, root) in a zone can only cause damage to that zone and *not* the system as a whole. The virtualization that Zones provides ensures that they're not able to see, affect or modifyprocesses and their data running in other zones on the system.

Dynamic Tracing (DTrace) was another heavily hyped feature of Solaris 10, and rightfully so. DTrace, and it's scripting language D, allow an administrator or a developer to observe and debug problems in a production system with very little overhead. The problem with traditionally debugging tools like gdb, truss, pstack and ptrace is several fold:

  • We need to either monitor everything on the system, or only very specific processes - it would be impossible to trace every process on the system
  • We can only view a core dump of a snapshot in time - often times administrators and developers have transient problems
  • Usually, a program like gdb needs to halt or stop the system - in a production server this isn't acceptable
  • A poor debugging routine can actually be more detrimental than helpful - debugging a system incorrectly can actually bring it down, which is totally unacceptable at times

DTrace can effectively do the same as truss, pstack or ptrace but it can also be used on a production system without completely crippling it via "Probes" that are inserted all over the OS. Sun's DTrace introduction conference explains some of DTrace's functionality in a 40 minute session for those really interested in all of it's features. It's kind of like installing 30,000 debug statements all over the kernel, and allowing the admin to collect data from these probes whenever they would like via DTrace.

Solaris is really a developer's dream. During the V40z's brief stay in our labs, we actually used the machine extensively for development of our RTPE software platform; partially because the V40z is 10 times more powerful than our entire RTPE cluster, but partially because of DTrace, MDB and libumem. Using some of the examples from the DTrace introduction above, we were able to use the analyzer to isolate instances where some of our RTPE bots were getting preempted for supposedly no reason at all. Kudos to that team at Sun!

Just a few weeks ago Sun opened Solaris 10 to all with OpenSolaris; Sun's partially open sourced version of Solaris under the CDDL license. OpenSolaris now provides much of the OS core for modification, but not the entire OS just yet. According to the OpenSolaris roadmap, crypto and storage drivers should be available soon, which would be a great step forward for the entire FOSS community.

New Changes to the V40z But... (Solaris 10 Cont.)
Comments Locked

47 Comments

View All Comments

  • KristopherKubicki - Thursday, June 30, 2005 - link

    Ecmaster76: It wasn't my decision to remove the article, and I agree with your thoughts as well.

    Kristopher
  • mastashake57 - Wednesday, June 29, 2005 - link

    Let me tell you, we have the first generation v40z, and it's a total crusher in comparison to our Dell PowerEdge 6650s. Way to go SUN!

    Intel XEONs can't hold a candle to it...
  • Ecmaster76 - Wednesday, June 29, 2005 - link

    that should read:

    But if there are liability and/or other issues that might come from leaving it up, than I will just have to wait.



  • Ecmaster76 - Wednesday, June 29, 2005 - link

    KristopherKubicki

    I think everyone has read the PS3/360 article but me, its been linked on Ars and it was out long enough that someone at MS could have downloaded the whole thing.

    But if there a re liability and/or other issues that might come from leaving it up, than I will just have to wait.
  • Ahkorishaan - Wednesday, June 29, 2005 - link

    #11 Solaris 10 is on the graphs, he jsut forgot to add it to the chart.

    Hey guys in Anandtech, think we could grab a review of the new Sun Ultra 20 workstation? It looks pretty sweet.
  • prd00 - Wednesday, June 29, 2005 - link

    Without much pressure from Intel, Sun has been pretty free to do what they want with AMD's processors. Sun is even going a bit on the offensive with Intel trade-in programs. Even though both AMD and Sun have been through some hard times recently, Sun is a great ally for AMD for two reasons; first, Sun knows servers - this is a critical market for AMD. Second, Sun isn't afraid of Intel and doesn't have nearly the problems AMD does with their customers.

    HEhuehueh... that's the reason why Sun server is still the best AMD server out there. HP and IBM should learn from them on how to build a good Opteron server.Anyway, Cray implementation of Opteron is still unmatched.
  • themelon - Wednesday, June 29, 2005 - link

    One question, why the lack of apples to apples os comparison between the two systems? You talk about S10 for two pages yet you dont list it as being tested on the Dual Core machine. That and you do not use the same linux versions on the two machines.

    To me that makes this comparison a whole lot less usefull. Granted, the perf should not vary to much between SuSE 9 and 9.1 but to not include S10 in the Dual Core comparo seems kinda silly.
  • KristopherKubicki - Wednesday, June 29, 2005 - link

    Ecmaster76: Eh, something was messed up with the content management system. PS3 article is pulled for now because Anand is worried about MS tracing his anonymous insider.

    Kristopher
  • Ecmaster76 - Wednesday, June 29, 2005 - link

    Ah, rendering problems. Thats why this article isn't on the main page (2461, the console article is a dead link, and it occured to me that number was about three articles to high, easy guess).

    Shame on you for pulling stuff when you could just leave a little 'were working on it'.

    :p
  • Beenthere - Wednesday, June 29, 2005 - link

    FWIW,

    AMD doesn't have "problems with it's customers" at all. AMD has problems with Intel's illegal Biz practices which have prevented many AMD customers from selling AMD products. With any luck HP, Sony and a Helleva lot of other PC companies will finally put Intel execs in prison where they belong. And you can bet all the companies that have been blackmailed by Intel will be a LOT more interested in selling AMD products now that the shit has hit the fan and they can come out of hiding.

Log in

Don't have an account? Sign up now