--- layout: doc title: SystemDoc permalink: /doc/SystemDoc/ redirect_from: /wiki/SystemDoc/ --- System Documentation for Developers =================================== 1. Fundamentals: 1. Qubes OS Architecture v0.3 [(pdf)](http://files.qubes-os.org/files/doc/arch-spec-0.3.pdf) (The original 2009 document that started this all...) 2. [Security-critical elements of Qubes OS](/doc/SecurityCriticalCode/) 3. Qubes RPC framework (qrexec): 1. [The Qubes RPC/Service API](/doc/Qrexec/) 2. Example for writing a qrexec service in Qubes OS [blog post](http://theinvisiblethings.blogspot.com/2013/02/converting-untrusted-pdfs-into-trusted.html) 3. [qrexec implementation in Qubes R2](/doc/Qrexec2Implementation/) 4. [qrexec implementation in Qubes R3/Odyssey](/doc/Qrexec3Implementation/) 4. [Qubes GUI virtualization protocol](/doc/GUIdocs/) 5. [Networking in Qubes](/doc/QubesNet/) 6. [Implementation of template sharing and updating](/doc/TemplateImplementation/) 2. Services: 1. [Inter-domain file copying](/doc/Qfilecopy/) 2. [Dynamic memory management in Qubes](/doc/Qmemman/) 3. [Implementation of DisposableVMs](/doc/DVMimpl/) 4. [Article about disposable VMs](http://theinvisiblethings.blogspot.com/2010/06/disposable-vms.html) 5. [Dom0 secure update mechanism](/doc/Dom0SecureUpdates/) 6. [VM secure update mechanism?](/doc/VMSecureUpdates/) 3. Debugging: 1. [Profiling python code](/doc/Profiling/) 2. [Test environment in separate machine for automatic tests](/doc/TestBench/) 3. [Automated tests](/doc/AutomatedTests/) 3. [VM-dom0 internal configuration interface](/doc/SystemDoc/VMInterface/) 4. [Debugging Windows VMs](/doc/WindowsDebugging/) 4. Building: 1. [Building Qubes](/doc/QubesBuilder/) 2. [Development Workflow](/doc/DevelopmentWorkflow/) 3. [KDE Dom0 packages for Qubes](/doc/KdeDom0/) 4. [How to build Qubes installation ISO](/doc/InstallationIsoBuilding/) 5. [Building USB passthrough support (experimental)](/doc/USBVM/) 6. [Building a TemplateVM based on a new OS (ArchLinux example)](/doc/BuildingNonFedoraTemplate/) 7. [Building the Archlinux Template](/doc/BuildingArchlinuxTemplate/)