Re: Xfree86 drivers versus kernel drivers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Enrico Weigelt wrote:
* Tim Roberts <timr@xxxxxxxxx> wrote:
  
Historically, the original Windows NT 3.x had the exact same design. 
Display drivers were actually user-mode DLLs that ran in a separate
process (called CSRSS).  Users complained about the task-switch
overhead, and so Microsoft moved display drivers into the kernel in NT
4.  It's still not clear this was a net win.
    

As far as I remember, the NT model was much more low-level than X11,
so the percentage of data to pass through processes vs. data rendered
within the display server was much worse than on X11. But I'm not an
NT expert ...
  

We're getting a bit far afield here, but I'm always willing to orate at length on arcane topics of little interest to anyone.

The XFree86 approach is not all that different from the old NT approach.  The Xlib application interface is similar to the GDI application interface.  The XAA driver interface is similar in many ways to the GDI driver interface.  The major difference is that, whereas X crosses that gap by feeding X protocol through a socket (thereby enabling client and server on different machines), NT crossed that gap by using an RPC mechanism.

BTW: could anyone point out if there are major differences between
traditional xf86 and current Xorg ?
  

In practical terms, there are no major differences.  X.org branched from XFree86 at version 4.3.99, so at that point, they were identical.  I would judge that there has been more activity on the source base since then by X.org, but I may be out of touch.

The Linux video drivers are their own layer. They provide lots of 
low-level things, ie. device independent framebuffers access and 
some rendering primitives. xf86/xorg - when running on GNU/Linux - 
sits on top of it.
  

Only in a fleeting way.  As I said, most 2D XFree86 drivers use the kernel video drivers to map the frame buffer into memory, and nothing else.  Last time I looked, the kernel video drivers did not expose any graphics accelerator features at all, making them useless to XFree86.
-- 
Tim Roberts, timr@xxxxxxxxx
Providenza & Boekelheide, Inc.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [X Forum]     [XFree86]     [XFree86 Newbie]     [X.Org]     [IETF Annouce]     [Security]     [Fontconfig]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]

  Powered by Linux