start with system
[msc-thesis1617.git] / results.arch.tex
index c4c2b22..2dee232 100644 (file)
@@ -1,4 +1,22 @@
-/section{Devices}
+\section{Overview}
+The goal of the architecture is to facilitate an ecosystem in which an
+\gls{iTasks}-system can add, change and remove devices at runtime. Moreover,
+the \gls{iTasks}-system can send \glspl{mTask}, compiled at runtime to
+bytecode, to the device. The device runs an interpreter which can execute the
+\gls{Task}'s bytecode. Devices are persistent during reboots of the
+\gls{iTasks}-system. The methods of interacting with \glspl{mTask} is analogous
+to interacting with \gls{iTasks}-\glspl{Task}.
+
+An overview of the architecture is visible in Figure~\ref{fig:system}.
+
+\begin{figure}[H]
+       \centering
+       \includegraphics[width=\linewidth]{system}
+       \caption{Overview of the architecture}\label{fig:system}
+\end{figure}
+
+
+\section{Devices}
 The client code for the devices is compiled from one codebase. For a device to
 be eligible for \glspl{mTask}, it must be able to compile the shared codebase
 and implement (part of) the device specific interface. The shared codebase only
@@ -43,10 +61,10 @@ of. The exact specification is listed in Listing~\ref{lst:devicespec}
 \begin{lstlisting}[label={lst:devicespec},
        caption={Device specification for \glspl{mTask}}]
 :: MTaskDeviceSpec =
-       {haveLed     :: Bool
-       ,haveAio     :: Bool
-       ,haveDio     :: Bool
-       ,bytesMemory :: Int
+       { haveLed     :: Bool
+       , haveAio     :: Bool
+       , haveDio     :: Bool
+       , bytesMemory :: Int
        }
 \end{lstlisting}