Menu

System Code

Matt Heyse

The intent of this project is to be runnable on Unix and Windows (Linux and Mac should thus work too), written in C.

The Code behind Forest is written in (mostly) Unix-System-Call style, but primarily developed for MSwindows. Where there are system specific differences, preference is given to direct Unix version, which is linker overridden for windows in the file syscompat.c to support the same functionality.

The default systems are

Windows XP SP3, with
MinGW --> gcc
http://unxutils.sourceforge.net/ -->tar.exe

OpenBSD 4.8, with the default installed gcc, and tar

Post Alhpa version the tress will be created via the http://www.agner.org/random/ project hand coded assembler for better randomness than the host OS's rand() function. The assembler should run on all x86 processors (on any OS)

For systems not running on x86 processors. The c++ source code is available but slower than the assembler, so on these systems the project will need to be compiled with c++, but all Forest code is written in 'c'.

This relatively simple utility works with file streams and store very little internally. So the use of maloc was avoided for system differences and a few global s are used as allocated space. These are all declared at the head of main in main.c and consists of mostly option variables and file names.


MongoDB Logo MongoDB