%% -*- mode: LaTeX -*-
%%
%% Copyright (c) 2002 University of Utah and the Flux Group.
%% All rights reserved.
%% This file is part of the JanosVM documentation.
%% 
%% Permission to use, copy, modify, distribute, and sell this
%% documentation for any purpose is hereby granted without fee,
%% provided that the above copyright notice(s) appear in all copies.
%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\chapter{Introduction}
\label{cha:Introduction}

% Preach brotha
The \JanosVM{} is a Virtual Machine that can execute Java byte codes in
% XXX don't use processes, use something like 'multiple isolated applications'
multiple isolated contexts.  The goal of \JanosVM{} is not to implement a full
Java Operating System, rather, it aims to provide the components used to
implement a
% XXX cite the 'Design+Impl of a JavaOS' paper
Java \OS{}~\cite{Back+:usenix00}.  For example, there is basic functionality for interacting with
concurrently running processes, but no \IPC{} system is directly exported to
user code.  Instead, an arbiter library can be developed which maps the
\JanosVM{} primitives to a safer \API{}, for example, a message passing system.
It is hoped that this approach affords more freedom for experimentation and
specialization without requiring each developer to roll their own \JVM{}.
% Amen, Hallelujah!

The goal of this document is to describe the things you need to know in order
to start using and developing for \JanosVM{}, including:
%
\begin{itemize}
  \item How to install \JanosVM{} on your system (\autoref{cha:Compiling and
        Installing JanosVM}).

  \item How to invoke the \JanosVM{} virtual machine (\autoref{cha:Using
	JanosVM}).

  \item A tutorial on how to use \JanosVM{} and how to use it effectively
        (\autoref{cha:Tutorial}).

  \item Other \JanosVM{} support tools including one for interacting with
	running \JVM{}s (\autoref{cha:Using jsihey}).
\end{itemize}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%% End of file.

