summaryrefslogtreecommitdiffstats
path: root/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'index.html')
-rw-r--r--index.html83
1 files changed, 63 insertions, 20 deletions
diff --git a/index.html b/index.html
index bbdcf1a..623a80f 100644
--- a/index.html
+++ b/index.html
@@ -30,13 +30,26 @@
30 kernel with focus on multiprocessor real-time scheduling and 30 kernel with focus on multiprocessor real-time scheduling and
31 synchronization. The Linux kernel is modified to support the sporadic task 31 synchronization. The Linux kernel is modified to support the sporadic task
32 model and modular scheduler plugins. Both partitioned and global scheduling 32 model and modular scheduler plugins. Both partitioned and global scheduling
33 is supported. In the current version (2007.1), scheduler plugins that 33 is supported. In the current version (2007.2), plugins for the following
34 implement various EDF variants and PFAIR scheduling are included. 34 scheduling policies are included:
35 <ul>
36 <li> Partitioned EDF (P-EDF)</li>
37 <li> Partitioned EDF with synchronization support (PSN-EDF)</li>
38 <li> Global EDF (G-EDF)</li>
39 <li> Global EDF with synchronization support (GSN-EDF)</li>
40 <li> Global non-preemptive EDF (G-NP-EDF)</li>
41 <li> Global Feedback-Controlled EDF (FC-EDF)</li>
42 <li> EDF for heterogeneous task systems (EDF-HSB)</li>
43 <li> PFAIR (both staggered and aligned quanta are supported)</li>
44 </ul>
45
46 The latest public release of LITMUS<sup>RT</sup> occurred on 10/29/2007.
35 </p> 47 </p>
36 48
37 <p class="nobottommargin"> 49<!-- <p class="nobottommargin">
38 <em>To be continued...</em> 50 <em>To be continued...</em>
39 </p> 51 </p>
52-->
40 </div> 53 </div>
41 54
42 <h2 id="support">Support</h2> 55 <h2 id="support">Support</h2>
@@ -142,7 +155,8 @@
142 General Public License (GPL)</a>. 155 General Public License (GPL)</a>.
143 </p> 156 </p>
144 <p> 157 <p>
145 The current release (2007.1) consists of 158 The latest version of LITMUS<sup>RT</sup> is 2007.2 and was released on 10/29/2007.
159 It consists of
146 our Linux kernel modifications in the form of 160 our Linux kernel modifications in the form of
147 a patch against Linux 2.6.20, 161 a patch against Linux 2.6.20,
148 <span class="src">liblitmus</span>, the user-space API for real-time tasks, 162 <span class="src">liblitmus</span>, the user-space API for real-time tasks,
@@ -152,32 +166,47 @@
152 166
153 <p class="nobottommargin"> 167 <p class="nobottommargin">
154 <ul> 168 <ul>
155 <li><a href="download/litmus-rt-2007.1.patch">litmus-rt-2007.1.patch</a> 169 <li><a href="download/litmus-rt-2007.2.patch">litmus-rt-2007.2.patch</a>
156 (266 KB)<br/> 170 (328 KB)<br/>
157 Applies 171 Applies
158 against Linux 2.6.20 (see <a href="#install">Section Install</a> below).</li> 172 against Linux 2.6.20 (see <a href="#install">Section Install</a> below).</li>
159 173
160 <li><a href="download/liblitmus-2007.1.tgz">liblitmus-2007.1.tgz</a> 174 <li><a href="download/liblitmus-2007.2.tgz">liblitmus-2007.2.tgz</a>
161 (6.8 KB) 175 (11 KB)
162 </li> 176 </li>
163 177
164 <li><a href="download/libso-2007.1.tgz">libso-2007.1.tgz</a> 178 <li><a href="download/libso-2007.2.tgz">libso-2007.2.tgz</a>
165 (16 KB) 179 (16 KB)
166 </li> 180 </li>
167 </ul> 181 </ul>
168 Please note that the current implementation is a <em>prototype</em> with 182 Please note that the current implementation is a <em>prototype</em> with
169 certain limitations. Most notably, it is not safe in a multiuser context, 183 certain limitations. Most notably, it is not secure in a multiuser context,
170 <em>i.e.</em>, real-time system calls do not check for superuser 184 <em>i.e.</em>, real-time system calls do not require superuser
171 privileges. Further, some resources (<em>e.g.</em> semaphores) that 185 privileges. Further, some resources (<em>e.g.</em> semaphores) that
172 should be dynamically allocated are allocated statically in the current version. 186 should be dynamically allocated are allocated statically in the current version.
173 </p> 187 </p>
188
189 <p class="nobottommargin">
190 Old releases:
191 <ul>
192 <li> 2007.1 (May 2007)<br/>
193 Based on Linux 2.6.20. <br/>
194 <a href="download/litmus-rt-2007.1.patch">litmus-rt-2007.1.patch</a>
195 (266 KB) <br/>
196 <a href="download/liblitmus-2007.1.tgz">liblitmus-2007.1.tgz</a>
197 (6.8 KB) <br/>
198 <a href="download/libso-2007.1.tgz">libso-2007.1.tgz</a>
199 (16 KB) <br/>
200 </li>
201 </ul>
202 </p>
174 </div> 203 </div>
175 204
176 205
177 <h2 id="install">Installation</h2> 206 <h2 id="install">Installation</h2>
178 <div class="box"> 207 <div class="box">
179 <p class="notopmargin"> 208 <p class="notopmargin">
180 The current release of LITMUS<sup>RT</sup>, version 2007.1, consists of an 209 The current release of LITMUS<sup>RT</sup>, version 2007.2, consists of an
181 extension of the Linux kernel that adds support for the sporadic task 210 extension of the Linux kernel that adds support for the sporadic task
182 model, a scheduler plugin infrastructure, and some scheduler plugins, as 211 model, a scheduler plugin infrastructure, and some scheduler plugins, as
183 well as two user-space libraries that provide the LITMUS<sup>RT</sup> 212 well as two user-space libraries that provide the LITMUS<sup>RT</sup>
@@ -202,11 +231,11 @@ cd $DIR
202# get Linux 2.6.20 231# get Linux 2.6.20
203wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2 232wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2
204tar xjf linux-2.6.20.tar.bz2 233tar xjf linux-2.6.20.tar.bz2
205wget http://www.cs.unc.edu/~anderson/litmus-rt/download/litmus-rt-2007.1.patch 234wget http://www.cs.unc.edu/~anderson/litmus-rt/download/litmus-rt-2007.2.patch
206mv linux-2.6.20 litmus-rt 235mv linux-2.6.20 litmus-rt
207# apply the LITMUS RT patch 236# apply the LITMUS RT patch
208cd litmus-rt 237cd litmus-rt
209patch -p1 < ../litmus-rt-2007.1.patch 238patch -p1 < ../litmus-rt-2007.2.patch
210# create a working kernel configuration with HZ=1000 239# create a working kernel configuration with HZ=1000
211make gconfig 240make gconfig
212# compile the kernel 241# compile the kernel
@@ -223,7 +252,7 @@ make modules
223 class="src">rtsched</span> kernel parameter. 252 class="src">rtsched</span> kernel parameter.
224 </p> 253 </p>
225<pre class="shell"> 254<pre class="shell">
226rtsched={linux, pfair, part_edf, global_edf, global_edf_np, edf_hsb, gsn_edf, psn_edf} 255rtsched={linux, pfair, part_edf, global_edf, global_edf_np, edf_hsb, gsn_edf, psn_edf, adaptive}
227</pre> 256</pre>
228 <p> 257 <p>
229 For example, on our test machine, we use the 258 For example, on our test machine, we use the
@@ -246,8 +275,8 @@ initrd /boot/kernel-2.6.20-LITMUSRT.img
246 </p> 275 </p>
247<pre class="shell"> 276<pre class="shell">
248cd $DIR 277cd $DIR
249wget http://www.cs.unc.edu/~anderson/litmus-rt/download/liblitmus-2007.1.tgz 278wget http://www.cs.unc.edu/~anderson/litmus-rt/download/liblitmus-2007.2.tgz
250tar xzf liblitmus-2007.1.tgz 279tar xzf liblitmus-2007.2.tgz
251cd liblitmus 280cd liblitmus
252make 281make
253</pre> 282</pre>
@@ -260,8 +289,8 @@ make
260 </p> 289 </p>
261<pre class="shell"> 290<pre class="shell">
262cd $DIR 291cd $DIR
263wget http://www.cs.unc.edu/~anderson/litmus-rt/download/libso-2007.1.tgz 292wget http://www.cs.unc.edu/~anderson/litmus-rt/download/libso-2007.2.tgz
264tar xzf libso-2007.1.tgz 293tar xzf libso-2007.2.tgz
265cd libso 294cd libso
266make 295make
267make tests 296make tests
@@ -277,13 +306,27 @@ make tests
277 306
278 <h2 id="doc">Documentation</h2> 307 <h2 id="doc">Documentation</h2>
279 <div class="box"> 308 <div class="box">
309
280 <p class="nomargin"> 310 <p class="nomargin">
311 Most of the documentation has yet to be written. To get an overview of
312 the architecture of the kernel extension, we recommend to read the paper
313 <a href="http://www.cs.unc.edu/~anderson/papers/rtlws07.pdf">&ldquo;LITMUS<sup>RT</sup>:
314 A Status Report&rdquo;</a>.
315 <br/>
316 <br/>
317 Please contact <span class="src">bbb[AT]cs.unc.edu</span> if you have any
318 questions.
319 </p>
320
321<!-- <p class="nomargin">
281 <em>To be written...</em> 322 <em>To be written...</em>
282 <ul class="nomargin"> 323 <ul class="nomargin">
283 <li>How to use LITMUS<sup>RT</sup></li> 324 <li>How to use LITMUS<sup>RT</sup></li>
284 <li>A real-time &quot;Hello World!&quot;</li> 325 <li>A real-time &quot;Hello World!&quot;</li>
285 </ul> 326 </ul>
286 </p> 327 </p>
328
329-->
287 </div> 330 </div>
288 331
289 <hr/> 332 <hr/>