ack/plat/linux386
2007-04-24 19:25:00 +00:00
..
include Added linux386 platform. 2007-04-21 23:02:11 +00:00
libsys Added linux386 platform. 2007-04-21 23:02:11 +00:00
.distr Added linux386 platform. 2007-04-21 23:02:11 +00:00
boot.s Ensured that _errno is always defined. Rejigged the pc86 boot code so it doesn't always waste 510 bytes of memory. 2007-04-24 19:25:00 +00:00
descr Added linux386 platform. 2007-04-21 23:02:11 +00:00
pmfile Added linux386 platform. 2007-04-21 23:02:11 +00:00
README Added linux386 platform. 2007-04-21 23:02:11 +00:00

# $Source$
# $State$
# $Revision$


The linux386 platform
=====================

linux386 is an i386-based BSP that produces Linux ELF executables.

This port only implements a very limited number of system calls; basically,
just enough to make the demo apps run. Adding more is easy, but there are some
subtleties that require more thought. The port should be considered only in
proof-of-concept stage right now.

Important note: you *can't* link access ELF shared libraries from these
executables. In other words, you have to all your work from inside ACK.

The executables are generated with aelfslod and are extremely simple; there's
one rwx ELF section which contains all the application's code and data. This
is not optimal, but it does work.


Bugs
====

isatty() is a stub and always returns 0.


Example command line
====================

ack -mlinux386 -O -o linux386.exe examples/paranoia.c

The file linux386.exe can then be run on a i386 Linux machine (or on an
emulation thereof).


David Given
dg@cowlark.com