Skip to content

Latest commit

 

History

History
46 lines (34 loc) · 1.76 KB

README.md

File metadata and controls

46 lines (34 loc) · 1.76 KB

FiXos userland C library (libc)

What the FiXos libc is

Basically, all UNIX-like OSes and some other provide their low-level interface as a C library. This library contains the C standard library functions (ISO C standard), and depending OSes, other standards such as POSIX, or OS-specific interfaces.

FiXos libc interfaces

For FiXos, the libc is designed to be relatively close to the POSIX standard, but doesn't try to follow it exactly (POSIX is huge!). The idea is to keep a small and compact library, but to be enough POSIX-like to allow porting of basic UNIX applications.

It is possible that some FiXos-specific APIs will be added to this library, but for now the goal is to have functions and headers from the standards implemented.

Compiling and installing this library

See instructions in the INSTALL.md file to know how to build FiXos libc.

ISO C implementation - PDCLib

The ISO C standard implementation comes from the PDCLib project, which is a C Standard library in public domain (CC0 license).

In a first time, PDCLib was chosen to be a small ISO C library instead of Newlib, because easier to understand fully and to extend. Finally, it appears difficult to extend a multiplatform C standard library to transform it in a POSIX, system specific library. So I decided to change the way PDCLib is used, and now this library will diverge a lot from PDCLib original project. Multiplatform support is dropped, some functions will maybe be optimized for FiXos kernel, and the project hierarchy will change.

It's why the name PDCLib will not be conserved in the name of the library, but I would like to thank the authors and contributors of PDCLib for their work.