prio/Slides/Slides1.thy
author zhang
Fri, 10 Aug 2012 13:54:21 +0000
changeset 361 484c7b83f251
parent 360 66e0ec8acedc
child 362 e089ed1c3e26
permissions -rw-r--r--
IsaMakefile modified
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
360
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
     1
(*<*)
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
     2
theory Slides1
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
     3
imports "../CpsG" "../ExtGG" "~~/src/HOL/Library/LaTeXsugar"
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
     4
begin
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
     5
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
     6
notation (latex output)
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
     7
  set ("_") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
     8
  Cons  ("_::/_" [66,65] 65) 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
     9
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    10
ML {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    11
  open Printer;
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    12
  show_question_marks_default := false;
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    13
  *}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    14
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    15
notation (latex output)
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    16
  Cons ("_::_" [78,77] 73) and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    17
  vt ("valid'_state") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    18
  runing ("running") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    19
  birthtime ("last'_set") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    20
  If  ("(\<^raw:\textrm{>if\<^raw:}> (_)/ \<^raw:\textrm{>then\<^raw:}> (_)/ \<^raw:\textrm{>else\<^raw:}> (_))" 10) and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    21
  Prc ("'(_, _')") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    22
  holding ("holds") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    23
  waiting ("waits") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    24
  Th ("T") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    25
  Cs ("C") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    26
  readys ("ready") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    27
  depend ("RAG") and 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    28
  preced ("prec") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    29
  cpreced ("cprec") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    30
  dependents ("dependants") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    31
  cp ("cprec") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    32
  holdents ("resources") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    33
  original_priority ("priority") and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    34
  DUMMY  ("\<^raw:\mbox{$\_\!\_$}>")
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    35
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    36
(*>*)
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    37
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    38
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    39
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    40
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    41
  \renewcommand{\slidecaption}{London, 28 June 2012}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    42
  \newcommand{\bl}[1]{#1}                        
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    43
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    44
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    45
  \begin{frame}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    46
  \frametitle{%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    47
  \begin{tabular}{@ {}c@ {}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    48
  \\[8mm]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    49
  \Large A Provably Correct Implementation\\[-3mm] 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    50
  \Large of the Priority Inheritance Protocol\\[0mm]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    51
  \end{tabular}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    52
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    53
  \begin{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    54
  \small Christian Urban\\
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    55
  \end{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    56
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    57
  \begin{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    58
  \small joint work with Xingyuan Zhang and Chunhan Wu\medskip \\
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    59
  \small \mbox{from the PLA University of Science and Technology in Nanjing}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    60
  \end{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    61
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    62
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    63
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    64
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    65
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    66
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    67
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    68
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    69
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    70
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    71
  \frametitle{Isabelle Theorem Prover}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    72
  My background:
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    73
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    74
  \begin{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    75
  \item mechanical reasoning about languages with binders (Nominal)\medskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    76
  \item Barendregt's variable convention can lead to \alert{false}\medskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    77
  \item found a bug in a proof by Bob Harper and Frank Pfenning (CMU) on
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    78
  LF (ACM TOCL, 2005)
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    79
  \end{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    80
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    81
  \begin{textblock}{6}(6.5,12.5)
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    82
  \includegraphics[scale=0.28]{isabelle1.png}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    83
  \end{textblock}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    84
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    85
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    86
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    87
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    88
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    89
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    90
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    91
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    92
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    93
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    94
  \frametitle{Real-Time OSes}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    95
  \large
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    96
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    97
  \begin{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    98
  \item Processes have priorities\\[5mm]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
    99
  \item Resources can be locked and unlocked
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   100
  \end{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   101
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   102
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   103
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   104
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   105
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   106
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   107
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   108
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   109
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   110
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   111
  \frametitle{Problem}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   112
  \Large
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   113
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   114
  \begin{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   115
  \begin{tabular}{l}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   116
  \alert{H}igh-priority process\\[4mm]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   117
  \onslide<2->{\alert{M}edium-priority process}\\[4mm]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   118
  \alert{L}ow-priority process\\[4mm]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   119
  \end{tabular}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   120
  \end{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   121
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   122
  \onslide<3->{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   123
  \begin{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   124
  \item \alert{Priority Inversion} @{text "\<equiv>"} \alert{H $<$ L}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   125
  \item<4> avoid indefinite priority inversion
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   126
  \end{itemize}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   127
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   128
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   129
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   130
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   131
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   132
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   133
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   134
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   135
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   136
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   137
  \frametitle{Mars Pathfinder Mission 1997}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   138
  \Large
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   139
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   140
  \begin{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   141
  \includegraphics[scale=0.26]{pathfinder.jpg}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   142
  \end{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   143
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   144
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   145
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   146
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   147
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   148
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   149
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   150
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   151
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   152
  \frametitle{Solution}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   153
  \Large
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   154
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   155
  \alert{Priority Inheritance Protocol (PIP):}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   156
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   157
  \begin{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   158
  \begin{tabular}{l}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   159
  \alert{H}igh-priority process\\[4mm]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   160
  \textcolor{gray}{Medium-priority process}\\[4mm]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   161
  \alert{L}ow-priority process\\[21mm]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   162
  {\normalsize (temporarily raise its priority)}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   163
  \end{tabular}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   164
  \end{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   165
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   166
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   167
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   168
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   169
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   170
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   171
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   172
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   173
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   174
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   175
  \frametitle{\mbox{}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   176
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   177
  \begin{quote}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   178
  ``Priority inheritance is neither ef$\!$ficient nor reliable. 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   179
  Implementations are either incomplete (and unreliable) 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   180
  or surprisingly complex and intrusive.''
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   181
  \end{quote}\medskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   182
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   183
  \begin{quote}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   184
  ``I observed in the kernel code (to my disgust), the Linux 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   185
  PIP implementation is a nightmare: extremely heavy weight, 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   186
  involving maintenance of a full wait-for graph, and requiring 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   187
  updates for a range of events, including priority changes and 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   188
  interruptions of wait operations.''
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   189
  \end{quote}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   190
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   191
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   192
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   193
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   194
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   195
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   196
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   197
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   198
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   199
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   200
  \frametitle{A Correctness ``Proof'' in 1990}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   201
  \Large
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   202
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   203
  \begin{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   204
  \item a paper$^\star$ 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   205
  in 1990 ``proved'' the correctness of an algorithm for PIP\\[5mm]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   206
  \end{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   207
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   208
  \normalsize
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   209
  \begin{quote}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   210
  \ldots{}after the thread (whose priority has been raised) completes its 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   211
  critical section and releases the lock, it ``returns to its original 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   212
  priority level''.
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   213
  \end{quote}\bigskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   214
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   215
  \small
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   216
  $^\star$ in IEEE Transactions on Computers
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   217
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   218
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   219
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   220
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   221
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   222
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   223
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   224
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   225
  \frametitle{}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   226
  \Large
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   227
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   228
  \begin{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   229
  \begin{tabular}{l}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   230
  \alert{H}igh-priority process 1\\[2mm]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   231
  \alert{H}igh-priority process 2\\[8mm]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   232
  \alert{L}ow-priority process
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   233
  \end{tabular}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   234
  \end{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   235
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   236
  \onslide<2->{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   237
  \begin{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   238
  \item Solution: \\Return to highest \alert{remaining} priority
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   239
  \end{itemize}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   240
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   241
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   242
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   243
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   244
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   245
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   246
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   247
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   248
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   249
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   250
  \frametitle{Events}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   251
  \Large
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   252
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   253
  \begin{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   254
  \begin{tabular}{l}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   255
  Create \textcolor{gray}{thread priority}\\
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   256
  Exit \textcolor{gray}{thread}\\
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   257
  Set \textcolor{gray}{thread priority}\\
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   258
  Lock \textcolor{gray}{thread cs}\\
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   259
  Unlock \textcolor{gray}{thread cs}\\
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   260
  \end{tabular}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   261
  \end{center}\pause\medskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   262
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   263
  \large
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   264
  A \alert{state} is a list of events (that happened so far).
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   265
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   266
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   267
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   268
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   269
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   270
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   271
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   272
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   273
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   274
  \frametitle{Precedences}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   275
  \large
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   276
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   277
  \begin{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   278
  \begin{tabular}{l}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   279
  @{thm preced_def[where thread="th"]}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   280
  \end{tabular}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   281
  \end{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   282
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   283
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   284
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   285
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   286
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   287
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   288
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   289
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   290
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   291
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   292
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   293
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   294
  \frametitle{RAGs}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   295
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   296
\begin{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   297
  \newcommand{\fnt}{\fontsize{7}{8}\selectfont}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   298
  \begin{tikzpicture}[scale=1]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   299
  %%\draw[step=2mm] (-3,2) grid (1,-1);
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   300
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   301
  \node (A) at (0,0) [draw, rounded corners=1mm, rectangle, very thick] {@{text "th\<^isub>0"}};
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   302
  \node (B) at (2,0) [draw, circle, very thick, inner sep=0.4mm] {@{text "cs\<^isub>1"}};
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   303
  \node (C) at (4,0.7) [draw, rounded corners=1mm, rectangle, very thick] {@{text "th\<^isub>1"}};
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   304
  \node (D) at (4,-0.7) [draw, rounded corners=1mm, rectangle, very thick] {@{text "th\<^isub>2"}};
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   305
  \node (E) at (6,-0.7) [draw, circle, very thick, inner sep=0.4mm] {@{text "cs\<^isub>2"}};
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   306
  \node (E1) at (6, 0.2) [draw, circle, very thick, inner sep=0.4mm] {@{text "cs\<^isub>3"}};
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   307
  \node (F) at (8,-0.7) [draw, rounded corners=1mm, rectangle, very thick] {@{text "th\<^isub>3"}};
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   308
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   309
  \draw [<-,line width=0.6mm] (A) to node [pos=0.54,sloped,above=-0.5mm] {\fnt{}holding}  (B);
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   310
  \draw [->,line width=0.6mm] (C) to node [pos=0.4,sloped,above=-0.5mm] {\fnt{}waiting}  (B);
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   311
  \draw [->,line width=0.6mm] (D) to node [pos=0.4,sloped,below=-0.5mm] {\fnt{}waiting}  (B);
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   312
  \draw [<-,line width=0.6mm] (D) to node [pos=0.54,sloped,below=-0.5mm] {\fnt{}holding}  (E);
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   313
  \draw [<-,line width=0.6mm] (D) to node [pos=0.54,sloped,above=-0.5mm] {\fnt{}holding}  (E1);
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   314
  \draw [->,line width=0.6mm] (F) to node [pos=0.45,sloped,below=-0.5mm] {\fnt{}waiting}  (E);
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   315
  \end{tikzpicture}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   316
  \end{center}\bigskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   317
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   318
  \begin{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   319
  \begin{minipage}{0.8\linewidth}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   320
  \raggedleft
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   321
  @{thm cs_depend_def}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   322
  \end{minipage}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   323
  \end{center}\pause
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   324
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   325
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   326
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   327
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   328
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   329
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   330
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   331
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   332
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   333
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   334
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   335
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   336
  \frametitle{Good Next Events}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   337
  %%\large
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   338
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   339
  \begin{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   340
  @{thm[mode=Rule] thread_create[where thread=th]}\bigskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   341
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   342
  @{thm[mode=Rule] thread_exit[where thread=th]}\bigskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   343
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   344
  @{thm[mode=Rule] thread_set[where thread=th]}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   345
  \end{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   346
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   347
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   348
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   349
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   350
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   351
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   352
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   353
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   354
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   355
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   356
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   357
  \frametitle{Good Next Events}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   358
  %%\large
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   359
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   360
  \begin{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   361
  @{thm[mode=Rule] thread_P[where thread=th]}\bigskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   362
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   363
  @{thm[mode=Rule] thread_V[where thread=th]}\bigskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   364
  \end{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   365
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   366
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   367
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   368
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   369
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   370
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   371
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   372
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   373
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   374
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   375
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   376
  \frametitle{Theorem}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   377
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   378
  \textcolor{gray}{``No indefinite priority inversion''}\bigskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   379
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   380
  Theorem:$^\star$ If th is the thread with the highest precedence in state s,
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   381
  then in every future state @{text "s'"} in which th is still
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   382
  alive\smallskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   383
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   384
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   385
  \begin{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   386
  \item th is blocked by a thread @{text "th'"} that was alive in s 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   387
  \item @{text "th'"} held a resource in s, and
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   388
  \item @{text "th'"} is running with the precedence of th.\bigskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   389
  \end{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   390
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   391
  \small
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   392
  $^\star$ modulo some further assumptions\bigskip\pause
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   393
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   394
  It does not matter which process gets a released lock.
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   395
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   396
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   397
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   398
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   399
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   400
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   401
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   402
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   403
  \begin{frame}[t]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   404
  \frametitle{Implementation}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   405
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   406
  s $=$ current state; @{text "s'"} $=$ next state\bigskip\bigskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   407
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   408
  \alert{Create th prio}, \alert{Exit th} 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   409
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   410
  \begin{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   411
  \item @{text "RAG s' = RAG s"}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   412
  \item precedences of descendants stay all the same
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   413
  \end{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   414
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   415
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   416
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   417
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   418
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   419
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   420
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   421
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   422
  \begin{frame}[t]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   423
  \frametitle{Implementation}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   424
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   425
  s $=$ current state; @{text "s'"} $=$ next state\bigskip\bigskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   426
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   427
  \alert{Set th prio}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   428
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   429
  \begin{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   430
  \item @{text "RAG s' = RAG s"}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   431
  \item we have to recalculate the precedence of the direct descendants
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   432
  \end{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   433
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   434
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   435
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   436
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   437
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   438
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   439
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   440
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   441
  \begin{frame}[t]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   442
  \frametitle{Implementation}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   443
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   444
  s $=$ current state; @{text "s'"} $=$ next state\bigskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   445
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   446
  \alert{Unlock th cs} where there is a thread to take over
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   447
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   448
  \begin{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   449
  \item @{text "RAG s' = RAG s - {(C cs, T th), (T th', C cs)} \<union> {(C cs, T th')}"}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   450
  \item we have to recalculate the precedence of the direct descendants
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   451
  \end{itemize}\bigskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   452
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   453
  \alert{Unlock th cs} where no thread takes over
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   454
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   455
  \begin{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   456
  \item @{text "RAG s' = RAG s - {(C cs, T th)}"}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   457
  \item no recalculation of precedences
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   458
  \end{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   459
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   460
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   461
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   462
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   463
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   464
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   465
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   466
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   467
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   468
  \begin{frame}[t]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   469
  \frametitle{Implementation}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   470
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   471
  s $=$ current state; @{text "s'"} $=$ next state\bigskip\bigskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   472
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   473
  \alert{Lock th cs} where cs is not locked
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   474
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   475
  \begin{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   476
  \item @{text "RAG s' = RAG s \<union> {(C cs, T th')}"}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   477
  \item no recalculation of precedences
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   478
  \end{itemize}\bigskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   479
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   480
  \alert{Lock th cs} where cs is locked
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   481
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   482
  \begin{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   483
  \item @{text "RAG s' = RAG s - {(T th, C cs)}"}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   484
  \item we have to recalculate the precedence of the descendants
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   485
  \end{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   486
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   487
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   488
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   489
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   490
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   491
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   492
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   493
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   494
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   495
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   496
  \frametitle{PINTOS}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   497
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   498
  \begin{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   499
  \item \ldots{}small operating system developed at Stanford for teaching;
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   500
  written in C\bigskip 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   501
  \end{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   502
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   503
  \begin{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   504
  \begin{tabular}{|l@ {\hspace{2mm}}|l@ {\hspace{2mm}}|}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   505
  \hline
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   506
  {\bf Event} & {\bf PINTOS function} \\
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   507
  \hline
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   508
  @{text Create} & @{text "thread_create"}\\
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   509
  @{text Exit}   & @{text "thread_exit"}\\
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   510
  @{text Set}    & @{text "thread_set_priority"}\\
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   511
  @{text Lock}   & @{text "lock_acquire"}\\
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   512
  @{text Unlock} & @{text "lock_release"}\\ 
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   513
  \hline
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   514
  \end{tabular}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   515
  \end{center}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   516
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   517
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   518
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   519
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   520
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   521
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   522
text_raw {*
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   523
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   524
  \mode<presentation>{
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   525
  \begin{frame}[c]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   526
  \frametitle{Conclusion}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   527
  
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   528
  \begin{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   529
  \item surprised how pleasant the experience was\medskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   530
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   531
  \item no real specification existed for PIP\medskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   532
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   533
  \item general technique (a ``hammer''):\\[2mm]
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   534
  events, separation of good and bad configurations\medskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   535
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   536
  \item scheduler in RT-Linux\medskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   537
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   538
  \item multiprocessor case\medskip
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   539
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   540
  \item other ``nails'' ? (networks, \ldots)
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   541
  \end{itemize}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   542
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   543
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   544
  \end{frame}}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   545
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   546
*}
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   547
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   548
(*<*)
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   549
end
66e0ec8acedc added some slides for an informal talk about PIP
urbanc
parents:
diff changeset
   550
(*>*)