Thursday Sep 23, 2004

More on Xorg in Solaris

Didn't mean to take so long before writing more, but life and work interferes...

First, answers to the comments on my last post:

Drawbacks of using Xorg: - Xinerama support in the Xorg server isn't nearly as good (just think about GLX and Xinerama - right now only the Xsun server in Solaris gets this right)
Actually, it's the OpenGL implementation in Solaris that gets this right. It's separate from the Xsun server (and actually delivered by a different group). The X server implementations aren't all that different.
The Shared Memory transport isn't supported by the Xorg server (which means: slower communication between client and server, usually resulting in lower rendering performance and higher latency)
No, it's not yet, but we're not just delivering the Xorg server and quitting. We're looking at the extensions currently in Xsun that aren't in Xorg and seeing which ones should be ported (and maybe even open sourced in the process). We haven't decided yet on the Shared Memory transport (aka SUN-SME ).
The SolarisIA stuff (a special class in the Solaris kernel scheduler which gives the application of an active window a priority boost) is not supported by Xorg
It's not supported by the open source Xorg, but as I noted in a blog entry several months ago, it ported to Xorg easily and is supported in the release in Solaris. (Now you know the real reason for doing that port. 8-)
DPS is gone.
True. But few clients used it, and it was increasingly out of date. Adobe stopped supporting it years ago and I think most other Unix vendors who did support it are moving away as well.
And the SUN_OVL (overlays) and SUN_ALLPLANES extensions are gone, too...
See above note about evaluating the other extensions for future releases - since these are primarily used by SPARC graphics, they were put off until we were ready to tackle SPARC graphics support and then evaluate if they are still needed.
Does that mean that it'll be possible to switch X servers just like that? No impact on the applications linked to X libraries? Or would they need to be linked specifically against one of the two?
Mostly. We're only shipping one set of X libraries right now - the libraries are insulated from the server by the network protocol, so have always worked with any standards compliant server, and Xorg is no different there. Some extensions will only be in Xsun or Xorg, but any correctly written client has always had to check to see if an extension is supported by the X server before using it or it would never run over network display to another platform.

Perhaps the main response to the comments above is that, while one of our main goals is to more closely track the open source releases so we can take advantage of new features, fixes, and drivers, we're not constraining ourselves to only shipping exactly what's in the open source release and we're not stopping work on enhancing X. We still have a good bunch of talented people in the X group at Sun (don't tell them I said that!), and we were very active in the reformation of X.Org and the new open source releases that have come from it so far. We're slowly going through what we have in our Solaris X trees and seeing what we have to contribute and will continue to do so. Like the project to open source Solaris, we've got constraints from other licenses and can't open everything, but are seriously looking at what we can and cannot do. That which is still valuable, but can't be open sourced, can still be shipped in our Solaris releases.

Some examples of changes, big and small, we've made to Xorg in Solaris above what's in the open source version:

  • As noted above, the SolarisIA extension is integrated to boost the kernel scheduling priority of the process that has focus.
  • The higher quality TrueType font engine from Xsun is used instead of FreeType for TrueType fonts in the core protocol.
  • Wheel mouse support is on by default without requiring configuration.
  • Display Power Management is enabled by default
  • The XST extension (part of the Standard Type Services Framework) is included.
Of course, there's also all the changes we made but gave back already - just look at the many entries from Sun people (okay, mostly myself and Stuart checking in the work of Sun engineers) in the X.Org CVS ChangeLog - everything from better Solaris & Sun compiler support to the new XEvIE extension (originally designed for accessibility, being adapted to serve projects such as Project Looking Glass). And we're just getting started at this...

[See more blogs and links on Solaris & Xorg at & ]

Thursday Sep 16, 2004

Xorg in Solaris

I mentioned a few posts back a big project integrating into Solaris 10, and promised to explain it later. Unfortunately, getting it in is only half the work, and I've been busy ever since and never got around to explaining. (And getting our lab ready to move to a new building this week didn't help time wise.) So here goes - it was a lot of work, but can be summed up in one word: Xorg.

Okay, that's not much explanation, so here's a few more words - the Xorg X server, from the open source release by the X.Org Foundation (including a lot of work from the XFree86 Project before they changed their license terms) is now integrated into the Solaris x86 OS. Xsun is still there as well for those who want features such as Display PostScript® that aren't in Xorg, but now you have a choice of which to use. Xorg isn't there on SPARC yet, since the SPARC graphics drivers have to be rewritten from the Xsun interfaces to the Xorg ones, while on x86 there's a huge body of drivers ready to ship right away from the open source release.

Why would you want to use Xorg? A few reasons off the top of my head...

  • Much much much closer to the open source release if you want to see what's under the hood
  • Supports the module interfaces from the open source release to allow easier porting of third party extension and driver modules
  • Wider range of hardware support
  • Better performance on many machines/video cards
  • Additional X extensions, such as Xv (video decoding/streaming) and Xrandr (dynamic screen resizing)
  • Better support for extensions such as XKeyboard (XKB) and Render (alpha blending)

It's late, so I'll save further details for future blog posts, but that should satisfy some curiosity for now. You should be able to see it in a Solaris Express release in October or November, depending on how the release schedule lines up for those.

[See more blogs and links on Solaris & Xorg at & ]

Monday Sep 13, 2004


Had relatives in town this weekend, so we went to places that, even though they're a short drive, we only get around to visiting when visitors come - The Tech Museum of San Jose, San Francisco's House of Prime Rib, and Oakland's classic Fenton's ice cream parlor. It was a nice break from the usual routine and hectic pace at work.

Of course, I wasn't completely idle this weekend - I worked all weekend long, or rather got work done. We're moving to a new lab and consolidating our servers to a new machine, so while we were out and about, I had file system transfers running between the old machine and new, thanks to the magic of VPN. I started them in the morning before leaving and moved on to the next round when we got home. Managed to reduce the server downtime for this to just a couple of days, most of which no one was working anyway. (We could have done better if we needed to, but this worked out as about the right balance between the effort we were willing to put in to reduce the amount of time and the pain we were willing to suffer from the downtime.)

Friday Sep 10, 2004

O'Reilly Network article on Xorg 6.8 release

The O'Reilly Network has a nice short article summarizing Xorg and this week's 6.8 release and upcoming work.

Thursday Sep 02, 2004

Xorg and the space monsters

I use bloglines as my RSS feed aggregator since it's easy to access from all the different computers I use. Since it's pulling so many feeds for so many people, it has a huge source of incoming data. One of the options it provides is a custom feed of articles it finds in those blogs with certain words in - for instance, I get a list of anything it finds that mentions "Xorg" - which includes entries from RSS feeds for various downstream distributor's change logs as they pull in updates, blog entries and news articles from people trying it out and so on. Earlier this week a strange one popped in there though - it said "Help Moxy to defend his planet against Xorg and the space monsters." - turns out there's a shareware game called Moxy vs. the Space Monsters (other language versions here) where the big bad boss is named Xorg. I had to laugh - so does that make me one of the space monsters since I work with Xorg?

The hopefully final release candidate of Xorg X11R6.8 is frozen now, and the last planned round of testing has begun while work on the release notes and docs finishes up as well. The schedule has slipped a bit from the original plan, but it should still release RSN. Unfortunately, I've not had much time to help lately (or blog either as my three regular readers may have noticed) as I've been very very busy finishing up my big project for Solaris 10, which just got final approval and integrated yesterday for s10_67 (more on that later), and working on a whole bunch of smaller projects which I need to finish up now.


Engineer working on Oracle Solaris and with the X.Org open source community.


The views expressed on this blog are my own and do not necessarily reflect the views of Oracle, the X.Org Foundation, or anyone else.

See Also
Follow me on twitter


« September 2004 »