====== Codezero Documentation ====== Codezero documentation below includes information on getting started with development, tutorials, API reference, architecture descriptions and more. If you believe some information is missing or a concept is not described clearly enough, please notify us by direct [[mailto:info@b-labs.com?subject=Documentation%20Update%20Request|email]] or ask on our [[http://lists.l4dev.org/mailman/listinfo/codezero-devel|mailing list]]. ==== 1.) Getting Started with Codezero Hypervisor Toolkit ==== You may take a look at the [[Getting Started]] guide for downloading, installing, and running Codezero along with all the tools that are required. Going through this guide, you should be able to build a working environment and get up and running with Codezero Microkernel development from the comfort of your host PC. ==== 2.) Building Codezero Environment from Scratch ==== The installer and prebuilt tarballs on the [[download|downloads]] page provide a quick and easy process for installation. However, if you have any problems or are interested in finding out how the individual tools are built, the [[build_from_scratch|building from scratch guide]] will take you through the installation process step-by-step for each tool. We strongly recommend you to use the installer, but this provides a more hands-on approach to the project. ==== 3.) Codezero Project Overview ==== Codezero Microkernel features and applications are discussed in the [[Codezero Overview]] section to provide a general background about the software. ==== 4.) Codezero API Reference ==== Codezero is a new microkernel written from scratch as an interpretation of the earlier line of L4 microkernels. As such, it has a similar API to other L4-based systems. Codezero Microkernel development is an ongoing process. Naturally, there may be changes in the API as the software evolves. However, the following [[codezero_api|Codezero API Reference]] document should serve as a good, stable starting point. ==== 5.) Applications Development ==== In this section, a tutorial is provided for writing Codezero Applications in general. Essentially, Codezero can be used as a barebones system, or the userspace libraries provided may be used for higher-level software development. The [[application_development|Codezero Application Development]] chapter may be used as a starting point for writing both barebones Codezero applications or leveraging the virtualized Linux instance.