This project implments a library for fixed point arithmetic which can be used in kernel and in user space. The intention for this library is not to reinvent the wheel again. The intention is to provide simple arithmetics which can be used everywhere in kernel space. Earlier it the alternative to use the FPU emulation code was taken into account but this altenative was not followed, because: - there is no reason to emulate a Intel FPU when simple arithmetic functions are needed, - the emulation of a whole FPU probably introduces overhead - this approach would end up in non portable code - the attempt to use existing rtlinux kernel modules, which use the FPU on a system without FPU (but compiled in FPU emulation) ended in the Message: "Kernel Panic Math Emulation needed in kernel" After that the system was completely hung up and useless. Very many ideas which can be found in this library are based on thoughts you can find in the Fix Class found in the GNU C++ Library and on results of the work of Seehyun Kim and Prof. Wonjong Sung, School of Electrical Engineering, Seoul National University. Thanks for their work. If you want to use the normal C Library and thus the FPU in cyclic Tasks the use of the priority based scheduler contributed by Prof. Paolo Mantegazza is more convenient and recommended. The directories contain: 1. nw - noweb sources, which supply fixed point arithmetic. 1. src - C/C++-Code, which is generated out of the noweb sources. 2. include - include file for fixed point arithmetic. 3. lib - shared libraries, which supply fixed point arithmetic. 4. bin - kernel modules, which supply fixed point arithmetic. 5. doc - some documentation generated out of the noweb sources. 6. test - a simple test applications. 6. test/measurements - simple programs which compare the time calculations using the fixed point arithmetic library need with their counterpart using the math library (it turns out that the fixed point arithmetic library is a little bit slower). If you want to make changes to the code it is recommended to edit the noweb sources (of course other changes are accepted, too). Noweb is a simple, extensible tool for literate programming and can be downloaded from: http://www.cs.virginia.edu/~nr/noweb.