COPYING -> LICENSE

consistency with everything else on repo.rumpkernel.org
add AUTHORS

seed with myself, others can add themselves if they wish to
[ci skip]
Change wording to accept people with a single contribution as authors.

[ci skip]
Remove old demo from build, add simple hello-world test

In preparation for cleaning up minios/xenos to resolve (among other
things) symbol namespacing issues, remove the old non-app-tools-based
demo from the build.

As a temporary replacement add in a simple (not configure-based) "Hello,
world!" in tests/hello.

Signed-off-by: Martin Lucina <martin@lucina.net>
Update .gitignore

Signed-off-by: Martin Lucina <martin@lucina.net>
Clean up x86_64.o entry point namespace

This is pass 1 of X of cleaning up mini-os symbol namespace:

- Namespace all globals in x86_64.o (except _start) as _minios_XXX.
- Fix dependent calling code to use the new namespace
  (hypercall-x86_64.h, sched.h, xen/arch/x86/*.c).

Signed-off-by: Martin Lucina <martin@lucina.net>
Build Mini-OS and rump kernel middleware as discrete objects

In order to be able to make Mini-OS symbols local using objcopy we need to
build Mini-OS as a discrete relocatable object. While we're here, put the
various rump kernel middleware (libc stubs, rumphyper implementation)
into its own object file also.

Signed-off-by: Martin Lucina <martin@lucina.net>
Clean up Mini-OS public namespace

Pass 2 of X in cleaning up Mini-OS namespace:

- All Mini-OS functions called by rumprun-xen are renamed to minios_* or
  _minios_* for strictly internal functions, except those in the
  blkfront_*, netfront_*, pcifront_* and xenbus_* driver namespaces.
- In the case of drivers, eg. init|shutdown_blkfront are renamed to
  blkfront_*.
- All global variables are either manually made local, or placed under
  the _minios_* namespace, with the exception of HYPERVISOR_shared_info,
  and those variables under driver namespaces kept above.
- All callers are updated to use the new names. Where it makes sense,
  macros such as alloc_page are also renamed into the minios_ namespace.

Signed-off-by: Martin Lucina <martin@lucina.net>
Localize all non-public Mini-OS symbols

Pass 3 of X in Mini-OS namespace cleanup.

We define a set of prefixes in the Makefile for the symbol namespaces we
wish to keep. Then, when linking minios.o we use objcopy to localize all
other symbols. Note the sole exception of the arch-specific startup file
(x86_64.o) as this is used as the linker %startfile.

Signed-off-by: Martin Lucina <martin@lucina.net>
Minor improvement to hello demo

Sleep in the demo to prove at least scheduling is working after all the
renaming changes.

Signed-off-by: Martin Lucina <martin@lucina.net>
Synchronise x86_32.o with Mini-OS namespace cleanup.

These changes sync the x86_32 arch-specific entrypoints with the Mini-OS
namespace cleanups. Now builds and runs correctly on x86.

Signed-off-by: Martin Lucina <martin@lucina.net>