Moved from http://www.freedesktop.org/wiki/Software/Directories
Xserver Directory Layout
XXX: Add more directories, such as miext/ and the hw/kdrive/ subdirectories.
| Name | Explanation | 
| dix/ | The device independent parts of X, for example the code used for dispatching requests (see Dispatch() in dix/dispatch.c) and handling resources. main() is located in this directory in main.c. | 
| doc/ | Less documentation than would be expected - contains the X server man page and an explanation of the scheduler. | 
| fb/ | Code for doing graphical operations on framebuffer surfaces, for example blitting and compositing images. | 
| hw/ | Hardware dependent code, driver APIs and configuration file operations. | 
| hw/dmx/ | Distributed Multi-Head X code - well documented in hw/dmx/doc/html/index.html. | 
| hw/kdrive/ | The kdrive server and associated code. | 
| hw/xfree86/ | Code associated with unix-like OSes, such as Linux or BSD. | 
| hw/xquartz/ | Mac OS X specific code. | 
| hw/xwin/ | Cygwin/X code, for running on Windows machines. | 
| include/ | Xserver include files lie here. | 
| mi/ | Machine independent code, used for things like high-level graphical operations. Makes calls down to the fb/ code through function pointers in screens, windows or gcs. | 
| os/ | Operating system dependent code that does not control hardware, things like authentication, or processing arguments passed to the server (see ProcessCommandLine() in util.c for example). | 
| randr/ | Code for the RandR extension. | 
| render/ | Code for the Render extension. | 
| Xext/ | Code for various extensions, for example Xinerama and Xv. | 
| xtrans/ | Code for handling network connections. | 
-- Main.?AndersCarlsson - 23 Sep 2003
