Usermode/ld-acess - Disabled PIC (not needed)
[tpg/acess2.git] / README
1 ========
2  Acess2
3 ========
4
5 Acess2 is [TPG]'s hobby operating system.
6
7 The Acess kernel is SEMI-posix compilant, but there will be a comatability
8 library that emulates the different functions.
9
10 === Source Tree ===
11 --- /Kernel ---
12 The /Kernel tree contains the kernel sources.
13  Within the root of the tree is the miscelanious architecture agnostic
14    code for managing threads, loading modules and other things.
15  /Kernel/arch/<archname> - Architecture dependent code
16  /Kernel/bin - Binary file format parsers. Takes a binary file and
17    convertes it into a binary object that the loader can then load into memory.
18  /Kernel/vfs - The Virtual Filesystem
19  /Kernel/vfs/fs - The various filesystem drivers for the VFS.
20  /Kernel/drv - Drivers
21
22 --- Usermode ---
23 /Usermode contains the base acess system
24  /Usermode/Applications - Usermode applications such as the default
25    command shell and the login shell.
26  /Usermode/Libraries - Usermode shared libraries and crt0.o, currently
27    implemented are libacess (kernel interface), a basic libc and ld-acess
28    (dynamic linker).
29  /Usermode/include - Required include files for the shared libraries.
30
31 === Building ===
32 Required Tools: GNU Toolchain (GCC,Gas,binutils), NASM, mtools, GNU calc
33 Compiling Acess is relatively simple (at the moment)
34 First edit /Makefile.cfg and set the build programs (making sure they match
35   the architecture you are building for).
36 Then select the architecture to build (At the moment only x86:i386 works).
37 Edit the FILESYSTEMS variable to alter what filesystems are comipled in 
38   (see /Kernel/vfs/fs for what filesystems are included).
39 DRIVERS defines what device drivers are to be included from the Kernel
40   tree (see /Kernel/drv for a list).
41 MODULES defines what modules should be statically linked with the kernel
42   (see /Modules for a list)
43
44 Set the source root directory (ACESSDIR) and the destination  directory
45  (DISTROOT).
46 To be able to build usermode programs, Usermode/Libraries/acess.ld needs
47  to be edited to change the SEARCH_DIR directive to the correct path.
48 You may also want to edit Usermode/Filesystem/Conf/BootConf.cfg before
49  installing.
50
51 Now you can compile the kernel and usermode applications by calling make
52  in the source root.
53
54

UCC git Repository :: git.ucc.asn.au