Navigation
Highlights

Release 0.0.5

The latest release, alpha testing, unstable. See "downloads".

2005-06-01

Links
Documentation

Specifications

These documents are evolving specifications describing the technical details on how FreeDOS-32 should work and the design goals.

System Specification
The FreeDOS-32 System Specification describes the FreeDOS-32 system, introducing all the most important concepts and system components, and defining the system architecture.

Kernel Specification
The FreeDOS-32 Kernel Specification describes the core of FreeDOS-32, the FD32 kernel. The goal of the FD32 kernel is to provide a very simple and basic execution environment to application programs and drivers. Moreover, it is responsible for the booting process, and it provides a set of basic functionality. This document describes the kernel execution environment, the boot process, the functionality of the kernel, and the basic interface used to export them.

Drivers Specification
FreeDOS-32 is based on a small kernel providing some basic functionality that can be extended by drivers: a driver is an object file that can be dynamically linked with the kernel either at boot time or at run time (in this sense, a driver is not different from a Linux module). This document describes the loadable drivers interface.

Standards compliance
FreeDOS-32 is a brand new software, thus is desirable for it to comply with the most recent standards. This document is a summary of standards that should be adopted in software and documentation that are part of FreeDOS-32. It is just a quick reference and it is not intended as a detailed or formal explaination of those standards.

Coding guidelines
Rather than a "coding conventions" document, this is a list of a few guidelines to keep the source code of FreeDOS-32 consistent, more easily readable and maintainable.

LEAN File System specification
This document describes the LEAN (Lean yet Effective Allocation and Naming) file system, a new free, simple, portable, personal, full featured file system for embedded tasks.