Skip to content
/ prex Public

Prex is an open source, royalty-free, real-time operating system for embedded systems.

License

Notifications You must be signed in to change notification settings

alimon/prex

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

                       Prex Operating System


What is Prex?
=============

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

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


Licensing
=========

Prex is royalty-free software released under BSD License.


Current Port
============

Available port (arch-platform):

  - x86-pc
  - arm-gba
  - arm-integrator
  - ppc-prep


How to Build?
=============

Step 1: Prepare Toolchain

  The following packages are required for compiling Prex.
  - GCC 2.95.3 or later
  - GNU Binutils 2.15 or later
  - GNU Make 3.81 or later

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

Step 2: Prepare Sources

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

  $ cd /usr/src
  $ tar zxvf prex-X.X.X.tar.gz
  $ cd prex-X.X.X

Step 3: Configure

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

  $ ./configure --target=x86-pc

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

Step 4: Build

  Run make (and pray :)

  $ make


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

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


Directory Structure
===================

Prex source code is divided into the following directories:

 /conf			System configuration files

 /mk			Common Makefiles

 /include		Common include files

 /sys			Prex microkernel
	/include	Kernel headers
	/lib		Common kernel library
	/ipc		Inter process communication support
	/kern		Kernel main code
	/mem		Memory management code
	/sync		Synchronize related code

 /bsp			Board support package
	/boot		Boot loader
	/drv		Device driver module
	/hal		Hardware abstraction layer

 /usr			User mode programs
	/arch		Architecture dependent code
	/bin		User command binaries
	/include	Header files
	/lib		User libraries
	/server		System servers
	/sbin		System utilities
	/test		Function test programs
	/sample		Sample programs


Project Website
===============

More information about Prex can be found at:

  http://prex.sourceforge.net


Author
======

  Kohsuke Ohtani <[email protected]>

  Have fun! ;)

About

Prex is an open source, royalty-free, real-time operating system for embedded systems.

Resources

License

Stars

Watchers

Forks

Packages

No packages published