Restored x86 compliation. Still unable to run under x86 due to no TLS
authorPaul Pearce <pearce@eecs.berkeley.edu>
Wed, 6 Jan 2010 04:38:52 +0000 (23:38 -0500)
committerPaul Pearce <pearce@eecs.berkeley.edu>
Wed, 6 Jan 2010 04:38:52 +0000 (23:38 -0500)
commit35c3494cbc1af5fac1d9049b3037379e5af5e5bc
tree38a79c642ae8454c1189c2fd531b696cc370fcb6
parent33fd6b6ad32cd1574abd6878ce8fe67a0171d1ab
Restored x86 compliation. Still unable to run under x86 due to no TLS

This commit provides various fixes, including several stubs, needed to allow
ROS to build for x86. Most of these stubs are syscalls that newlib_backend
needs to handle. I haven't decided how we should support these syscalls. Our
options are to either ship them off over the serial/network link to the
syscall server, or handle them locally.

There is an additional stub in trap.h to handle the setting of errno's
with respect to syscalls. We need to figure out how we wish to handle
this.

NOTE: Although this compiles, attempting to run this under x86 will
result in a page fault durin proc_run. This is a result of the lack
of any thread local store support on the x86 side. Paul plans to
take a look at adding x86 tls support, next.
kern/arch/i386/trap.h
kern/src/manager.c
user/parlib/src/i386/entry.S
user/parlib/src/i386/newlib_backend.c