From: Mart Lubbers Date: Tue, 6 Jun 2017 14:14:12 +0000 (+0200) Subject: add bits about semantics X-Git-Tag: hand-in~94 X-Git-Url: https://git.martlubbers.net/?a=commitdiff_plain;h=0afef96572c804f8b5d7a2b0c6becf415c057496;p=msc-thesis1617.git add bits about semantics --- diff --git a/results.mtask.tex b/results.mtask.tex index 0c50555..a702432 100644 --- a/results.mtask.tex +++ b/results.mtask.tex @@ -6,7 +6,22 @@ does not have to implement all the available classes. Moreover, classes can be added at will without interfering with the existing views. \section{Semantics} -\todo{semantics} +\subsection{\glspl{mTask}} +The current \gls{mTask} engine for devices does not support \glspl{Task} in the +sense that the \gls{C}-view it does. \glspl{Task} in the new system are are +\CI{Main} objects with a program inside. A \gls{Task} runs periodically, on +interrupt or one-shot. +\todo{elaborate} + +\subsection{\glspl{SDS}} +\glspl{SDS} behave a little bit differently on an \gls{mTask} device than in +the \gls{iTasks} system. In an \gls{iTasks} system, when the \gls{SDS} is +updated, a broadcast to everyone in the system watching is made to notify them +of an update. \glspl{SDS} on the device can update very often and the update +might not be the final value it will get. Therefore a device must publish the +\gls{SDS} explicitly to save bandwidth. This means that an extra function is +added to the \CI{sds} class that adds the \CI{pub} function. +\todo{elaborate} \section{Bytecode compilation} The \glspl{mTask} are sent to the device in bytecode and are saved in the @@ -271,3 +286,5 @@ position in the program memory. 17-19: BCPush (Bool 0) //Else label 20 : BCDigitalWrite (Digital D0) \end{lstlisting} + +\todo{add more elaborate example?}