prio/Paper/Paper.thy
changeset 351 e6b13c7b9494
parent 349 dae7501b26ac
child 352 ee58e3d99f8a
--- a/prio/Paper/Paper.thy	Mon Apr 23 08:01:37 2012 +0000
+++ b/prio/Paper/Paper.thy	Mon Apr 30 15:32:34 2012 +0000
@@ -375,13 +375,6 @@
   programmer has to ensure this.
 
 
-  {\bf ??? define detached}
-  \begin{isabelle}\ \ \ \ \ %%%
-  @{thm detached_def}
-  \end{isabelle}
-  
-
-
   Next we introduce the notion of the \emph{current precedence} of a thread @{text th} in a 
   state @{text s}. It is defined as
 
@@ -543,12 +536,22 @@
   running, namely the one whose current precedence is equal to the maximum of all ready 
   threads. We use sets to capture both possibilities.
   We can now also conveniently define the set of resources that are locked by a thread in a
-  given state.
+  given state
 
   \begin{isabelle}\ \ \ \ \ %%%
   @{thm holdents_def}
   \end{isabelle}
 
+  \noindent
+  and also when a thread is detached
+
+  \begin{isabelle}\ \ \ \ \ %%%
+  @{thm detached_def}
+  \end{isabelle}
+
+  \noindent
+  which means that @{text th} neither holds nor waits for a resource in @{text s}.
+  
   Finally we can define what a \emph{valid state} is in our model of PIP. For
   example we cannot expect to be able to exit a thread, if it was not
   created yet. 
@@ -1211,6 +1214,18 @@
   be recalculated for an event. This information is provided by the lemmas we proved.
   We confirmened that our observations translate into practice by implementing
   a PIP-scheduler on top of PINTOS, a small operating system for teaching purposes \cite{PINTOS}. 
+  Our events translate in PINTOS to the following function interface:
+
+  \begin{center}
+  \begin{tabular}{|l|l|}
+  \hline
+  {\bf Event} & {\bf PINTOS function} \\
+  \hline
+  @{text Create} & \\
+  @{text Exit}   & \\
+  \end{tabular}
+  \end{center}
+
 *}
 
 section {* Conclusion *}