e1ae60816296bce5280121a6b679e6b17cbc123a
[msc-thesis1617.git] / arch.tex
1 The system provides a framework of functions with which an \gls{iTasks}-system
2 can add, change and remove devices at runtime. Moreover, the
3 \gls{iTasks}-system can send \gls{mTask}-\glspl{Task} --- compiled at runtime
4 to bytecode by the \gls{mTask}-view --- to the device. The device runs an
5 interpreter which executes the \gls{Task}'s bytecode following the provided
6 scheduling strategy. Devices added to the system are stored and get a profile
7 for identification. These profiles are persistent during reboots of the
8 \gls{iTasks}-system to allow for easy reconnecting with old devices. The way of
9 interacting with \gls{mTask}-\gls{Task} is analogous to interacting with
10 \gls{iTasks}-\glspl{Task}. This means that programmers can access the
11 \glspl{SDS} made for a device in the same way as regular \glspl{SDS} and they
12 can execute, combine and transform \gls{mTask}-\glspl{Task} as if they where
13 normal \gls{iTasks}-\glspl{Task}.
14
15 \section{Devices}
16 \input{arch.devices}
17
18 \section{iTasks}
19 \input{arch.itasks}
20
21 \section{Communication}\label{sec:communication}
22 \input{arch.communication}
23
24 \section[Lifting mTasks to iTasks-Tasks]%
25 {Lifting \gls{mTask}-\glspl{Task} to \gls{iTasks}-\glspl{Task}}
26 \input{arch.lift}
27
28 \section{Example}
29 \input{arch.example}