Project

General

Profile

Statistics
| Branch: | Revision:

scoutos / prex-0.9.0 / doc / README @ 03e9c04a

History | View | Annotate | Download (2.96 KB)

1

    
2
                       Prex Operating System
3

    
4

    
5
What is Prex?
6
=============
7

    
8
The Prex project is an open source initiative to provide a portable
9
real-time operating system for embedded systems. Prex is designed
10
specifically for small footprint platforms. It is written in C language
11
from scratch based on a traditional micro kernel architecture.
12

    
13
The Prex kernel provides only fundamental features for task, thread, memory,
14
ipc, exception, and synchronization. The other basic OS functions such
15
like process, file system, application loading, and networking are provided
16
by user mode servers on top of the Prex kernel. This design allows systems
17
to execute both of native real-time task and generic UNIX process
18
simultaneously, without degrading the real-time performance. Futhermore, it
19
helps the platform designer to construct OS by choosing appropriate server
20
tasks for their target requirements.
21

    
22

    
23
Licensing
24
=========
25

    
26
Prex is royalty-free software released under BSD License.
27

    
28

    
29
Current Port
30
============
31

    
32
Available port (arch-platform):
33

    
34
  - x86-pc
35
  - arm-gba
36
  - arm-integrator
37
  - ppc-prep
38

    
39

    
40
How to Build?
41
=============
42

    
43
Step 1: Prepare Toolchain
44

    
45
  The following packages are required for compiling Prex.
46
  - GCC 2.95.3 or later
47
  - GNU Binutils 2.15 or later
48
  - GNU Make 3.81 or later
49

    
50
  The toolchain should be built appropriately for your target
51
  architecture to cross-compile Prex.
52

    
53
Step 2: Prepare Sources
54

    
55
  Unpack the sources and move to the top level directory of the source tree.
56

    
57
  $ cd /usr/src
58
  $ tar zxvf prex-X.X.X.tar.gz
59
  $ cd prex-X.X.X
60

    
61
Step 3: Configure
62

    
63
  Setup target architecture and platform.
64
  The following sample shows for x86-pc target.
65

    
66
  $ ./configure --target=x86-pc
67

    
68
  If you cross compile Prex from a different architecture and/or OS,
69
  you have to set --cross-compile option. Please check other options
70
  with --help option for 'configure'.
71

    
72
Step 4: Build
73

    
74
  Run make (and pray :)
75

    
76
  $ make
77

    
78

    
79
Note) If you want to run 'make' at the subdirectory, you have to set the
80
      SRCDIR as follow.
81

    
82
  $ export SRCDIR=/usr/src/prex-X.X.X
83

    
84

    
85
Directory Structure
86
===================
87

    
88
Prex source code is divided into the following directories:
89

    
90
 /conf			System configuration files
91

    
92
 /mk			Common Makefiles
93

    
94
 /include		Common include files
95

    
96
 /sys			Prex microkernel
97
	/include	Kernel headers
98
	/lib		Common kernel library
99
	/ipc		Inter process communication support
100
	/kern		Kernel main code
101
	/mem		Memory management code
102
	/sync		Synchronize related code
103

    
104
 /bsp			Board support package
105
	/boot		Boot loader
106
	/drv		Device driver module
107
	/hal		Hardware abstraction layer
108

    
109
 /usr			User mode programs
110
	/arch		Architecture dependent code
111
	/bin		User command binaries
112
	/include	Header files
113
	/lib		User libraries
114
	/server		System servers
115
	/sbin		System utilities
116
	/test		Function test programs
117
	/sample		Sample programs
118

    
119

    
120
Project Website
121
===============
122

    
123
More information about Prex can be found at:
124

    
125
  http://prex.sourceforge.net
126

    
127

    
128
Author
129
======
130

    
131
  Kohsuke Ohtani <kohtani@users.sourceforge.net>
132

    
133
  Have fun! ;)