Documentation
This documentation is intended for those interested in learning the KGI concept, design and API.
General KGI documentation
Articles
Steffen Seeger 1999 KGI white paper
Steffen Seeger 1999 KGI display driver overview
Steffen Seeger 1999 KGI acceleration handling
Old stuff
Graphics designs
Brian S. Julin 2004: Proposal for Open Source Graphic Systems V1.3
FreeVGA: Architecture Independent Video Graphics Initialization for LinuxBIOS▸
Linas Vepstas 2000: High-Performance Graphics Hardware Design
The (Re)Architecture of the X Window System▸
Rudolf Cornelissen thesis: Writing Video Card Drivers In BeOS▸
KGI internals
The structures and procedures
Document describing the most important KGI structures and procedures. A "must read" for people interested in the KGI code.
The structures and procedures (PDF)
Same kind of documentation but more practical and includes KII.
Miscellaneous
Debugging FreeBSD kernels over Firewire▸
Greg Lehey 2005: Debugging Kernel Problems▸
Tutorials
FreeBSD
- Installation guide [to be done]
- Setting up GGI, XGGI & more [to be done]
Linux
- A short guide through KGI installation on Linux
VM designs
Various documentation about KGI potential targets virtual memory system.
BSD VM
Design elements of the FreeBSD VM system▸
NetBSD UVM site▸ and the paper▸ (270 pages, gzipped postscript)
Also note the UBC technology▸, a design for unifying the file system and virtual memory caches of file data, thereby providing increased system performance. In addition to the implementation of UBC, several changes were made to the existing UVM design to fix problems which were glossed over in the original design. Thus UVM differs slightly as described in the paper.
Since Version 3.0, OpenBSD uses NetBSD's UVM. The implementation differs though.
Linux VM
Brief explanation about the Virtual Memory system used in linux-2.4.