X11 Sim

May 2, 2007

X11 Sim 

Several weeks ago, An interesting question popped into my head if it is possible to simulate X protocol using a programming language other than C. I found that question interesting and it did got stuck in my head for several days. Recently, I did had some time to look into it and wrote a sample code. I used the X11R6 documentation which is quite good for setting up the storage definitions.

Here is another interesting document covering X11R6 performance, titled X Window System Network Performance. I did go over the doc and read the numbers, a lot of these items described showed interesting points. For example, the number of requests made from inside Nautilus. These numbers could be used to measure and then compare numbers generated by the test code, which may shed some light to the question whether binary code is really faster than interpreted code. This will also point out where these delays are coming from.

Another item worth looking into is getting performance numbers on sync and async calls between client and server. Determine where the penalties are in terms of code and algorithm complexity.

What’s exciting about this exercise is the data gathering part. Capturing data from a sample run would allow anyone (me) to see a pattern and probably gain insight on what types of structure contribute to building efficient systems.

Public Domain In The Current Copyright Regime

The plea or appeal demonstrated by the developers of NeoSmart will definitely be turned-down or simply get ignored. Why? you ask, there are several reasons making some of MS technologies cross-platform an impossibility.

  1. Cross-platform means all machines running different kinds of Operating Systems. Some of these OS run proprietary and open source applications. Moreover, software tools are tied to different licenses, which dictate to users what actions are considered legal or illegal. MS tools will have to play with these cross-platform tools which may cause legal problems.
  2. MS is at the core a desktop OS. The OS was designed to function as a desktop, connected to the network. The last thing it would do is re-design the machine as a citizen of much larger system. MS doesn’t believe in that model where they are just a part of a bigger system. They’re a company offering a set of solutions with tools entirely developed and stamped with MS seal of approval. These tools are by their definition MS-centric.
  3. MS would never place their jewels in the public domain in order to please everybody. That would be anathema. The current copyright regime has a loophole that will insure their technology will be protected for as long as they can hold on it.