summaryrefslogtreecommitdiffstats
path: root/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'index.html')
-rw-r--r--index.html107
1 files changed, 73 insertions, 34 deletions
diff --git a/index.html b/index.html
index 3070daf..de7c876 100644
--- a/index.html
+++ b/index.html
@@ -40,7 +40,7 @@
40 kernel with focus on multiprocessor real-time scheduling and 40 kernel with focus on multiprocessor real-time scheduling and
41 synchronization. The Linux kernel is modified to support the sporadic task 41 synchronization. The Linux kernel is modified to support the sporadic task
42 model and modular scheduler plugins. Both partitioned and global scheduling 42 model and modular scheduler plugins. Both partitioned and global scheduling
43 is supported. In the current version (2007.2), plugins for the following 43 is supported. In the current version (2007.3), plugins for the following
44 scheduling policies are included: 44 scheduling policies are included:
45 </p> 45 </p>
46 <ul> 46 <ul>
@@ -54,7 +54,7 @@
54 <li> PFAIR (both staggered and aligned quanta are supported)</li> 54 <li> PFAIR (both staggered and aligned quanta are supported)</li>
55 </ul> 55 </ul>
56 <p> 56 <p>
57 The latest public release of LITMUS<sup>RT</sup> occurred on 10/29/2007. 57 The latest public release of LITMUS<sup>RT</sup> occurred on 01/28/2008.
58 </p> 58 </p>
59 </div> 59 </div>
60 60
@@ -175,7 +175,7 @@
175 General Public License (GPL)</a>. 175 General Public License (GPL)</a>.
176 </p> 176 </p>
177 <p> 177 <p>
178 The latest version of LITMUS<sup>RT</sup> is 2007.2 and was released on 10/29/2007. 178 The latest version of LITMUS<sup>RT</sup> is 2007.3 and was released on 01/28/2008
179 It consists of 179 It consists of
180 our Linux kernel modifications in the form of 180 our Linux kernel modifications in the form of
181 a patch against Linux 2.6.20, 181 a patch against Linux 2.6.20,
@@ -184,21 +184,48 @@
184 provides synchronization primitives suitable for real-time tasks. 184 provides synchronization primitives suitable for real-time tasks.
185 </p> 185 </p>
186 186
187 187 <ul>
188 <ul > 188 <li>
189 <li><a href="download/litmus-rt-2007.2.patch">litmus-rt-2007.2.patch</a> 189 2007.3 (January 2008)<br/>
190 (328 KB)<br/> 190 Based on Linux 2.6.20. (see <a href="#install">Section Install</a>
191 Applies 191 below) <br/>
192 against Linux 2.6.20 (see <a href="#install">Section Install</a> below).</li> 192 Files:
193 193 <ul>
194 <li><a href="download/liblitmus-2007.2.tgz">liblitmus-2007.2.tgz</a> 194 <li><a href="download/2007.3/litmus-rt-2007.3.patch">litmus-rt-2007.3.patch</a> (344 KB)</li>
195 (11 KB) 195 <li><a href="download/2007.3/liblitmus-2007.3.tgz">liblitmus-2007.3.tgz</a>
196 </li> 196 (14 KB)</li>
197 197 <li><a href="download/2007.3/libso-2007.3.tgz">libso-2007.3.tgz</a>
198 <li><a href="download/libso-2007.2.tgz">libso-2007.2.tgz</a> 198 (15 KB)</li>
199 (16 KB) 199 <li><a href="download/2007.3/SHA256SUMS">SHA256 check sums.</a>
200 </li> 200 </li>
201 </ul>
202 </li>
203 <li>
204 Major changes:
205 <ul>
206 <li>
207 Support for multi-threaded real-time applications added. The
208 use of <span class="src">libso</span> is no longer required.
209 </li>
210 <li>
211 All allocations (semaphores, etc.) are now dynamic. No more
212 running out of resources.
213 </li>
214 <li>
215 Real-Time tasks do not have be launched with
216 <span class="src">rt_launch</span> anymore. Instead, a new
217 <span class="src">task_mode()</span> API was introduced that
218 allows (Linux) tasks to transition in and out of
219 background task mode (std. Linux task) and LITMUS<sup>RT</sup>
220 real-time task.
221 </li>
222 <li>
223 Many bug fixes.
224 </li>
225 </ul>
226 </li>
201 </ul> 227 </ul>
228
202 <p class="nobottommargin"> 229 <p class="nobottommargin">
203 Please note that the current implementation is a <em>prototype</em> with 230 Please note that the current implementation is a <em>prototype</em> with
204 certain limitations. Most notably, it is not secure in a multiuser context, 231 certain limitations. Most notably, it is not secure in a multiuser context,
@@ -210,7 +237,18 @@
210 <p class="nobottommargin"> 237 <p class="nobottommargin">
211 Old releases: 238 Old releases:
212 </p> 239 </p>
240
213 <ul> 241 <ul>
242 <li> 2007.2 (November 2007)<br/>
243 Based on Linux 2.6.20. <br/>
244 <a href="download/litmus-rt-2007.2.patch">litmus-rt-2007.2.patch</a>
245 (328 KB)<br/>
246 <a href="download/liblitmus-2007.2.tgz">liblitmus-2007.2.tgz</a>
247 (11 KB) <br/>
248 <a href="download/libso-2007.2.tgz">libso-2007.2.tgz</a>
249 (16 KB) <br/><br/>
250 </li>
251
214 <li> 2007.1 (May 2007)<br/> 252 <li> 2007.1 (May 2007)<br/>
215 Based on Linux 2.6.20. <br/> 253 Based on Linux 2.6.20. <br/>
216 <a href="download/litmus-rt-2007.1.patch">litmus-rt-2007.1.patch</a> 254 <a href="download/litmus-rt-2007.1.patch">litmus-rt-2007.1.patch</a>
@@ -253,11 +291,11 @@ cd $DIR
253# get Linux 2.6.20 291# get Linux 2.6.20
254wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2 292wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2
255tar xjf linux-2.6.20.tar.bz2 293tar xjf linux-2.6.20.tar.bz2
256wget http://www.cs.unc.edu/~anderson/litmus-rt/download/litmus-rt-2007.2.patch 294wget http://www.cs.unc.edu/~anderson/litmus-rt/download/2007.3/litmus-rt-2007.3.patch
257mv linux-2.6.20 litmus-rt 295mv linux-2.6.20 litmus-rt
258# apply the LITMUS RT patch 296# apply the LITMUS RT patch
259cd litmus-rt 297cd litmus-rt
260patch -p1 &lt; ../litmus-rt-2007.2.patch 298patch -p1 &lt; ../litmus-rt-2007.3.patch
261# create a working kernel configuration with HZ=1000 299# create a working kernel configuration with HZ=1000
262make gconfig 300make gconfig
263# compile the kernel 301# compile the kernel
@@ -298,8 +336,8 @@ initrd /boot/kernel-2.6.20-LITMUSRT.img
298 </p> 336 </p>
299<pre class="shell"> 337<pre class="shell">
300cd $DIR 338cd $DIR
301wget http://www.cs.unc.edu/~anderson/litmus-rt/download/liblitmus-2007.2.tgz 339wget http://www.cs.unc.edu/~anderson/litmus-rt/download/2007.3/liblitmus-2007.3.tgz
302tar xzf liblitmus-2007.2.tgz 340tar xzf liblitmus-2007.3.tgz
303cd liblitmus 341cd liblitmus
304make 342make
305</pre> 343</pre>
@@ -312,8 +350,8 @@ make
312 </p> 350 </p>
313<pre class="shell"> 351<pre class="shell">
314cd $DIR 352cd $DIR
315wget http://www.cs.unc.edu/~anderson/litmus-rt/download/libso-2007.2.tgz 353wget http://www.cs.unc.edu/~anderson/litmus-rt/download/2007.3/libso-2007.3.tgz
316tar xzf libso-2007.2.tgz 354tar xzf libso-2007.3.tgz
317cd libso 355cd libso
318make 356make
319make tests 357make tests
@@ -330,26 +368,27 @@ make tests
330 <h2 id="doc">Documentation</h2> 368 <h2 id="doc">Documentation</h2>
331 <div class="box"> 369 <div class="box">
332 370
333 <p class="nomargin"> 371 <p class="notopmargin">
334 Most of the documentation has yet to be written. To get an overview of 372 Most of the documentation has yet to be written. To get an overview of
335 the architecture of the kernel extension, we recommend to read the paper 373 the architecture of the kernel extension, we recommend to read the paper
336 <a href="http://www.cs.unc.edu/~anderson/papers/rtlws07.pdf">&ldquo;LITMUS<sup>RT</sup>: 374 <a href="http://www.cs.unc.edu/~anderson/papers/rtlws07.pdf">&ldquo;LITMUS<sup>RT</sup>:
337 A Status Report&rdquo;</a>. 375 A Status Report&rdquo;</a>.
338 <br/> 376 </p>
339 <br/> 377 <p>
378 The user space library that provides the LITMUS<sup>RT</sup> API,
379 <span class="src">liblitmus</span>, contains two example real-time tasks
380 (<span class="src">base_task.c</span> and
381 <span class="src">base_mt_task.c</span>)
382 that both illustrate how to use the API and provide a skeleton for real-time
383 task development. To get started with development, take a look these example
384 programs.
385 </p>
386 <p class="nobottommargin">
340 Please contact <span class="src">bbb[AT]cs.unc.edu</span> if you have any 387 Please contact <span class="src">bbb[AT]cs.unc.edu</span> if you have any
341 questions. 388 questions.
342 </p> 389 </p>
343 390
344<!-- <p class="nomargin">
345 <em>To be written...</em>
346 <ul class="nomargin">
347 <li>How to use LITMUS<sup>RT</sup></li>
348 <li>A real-time &quot;Hello World!&quot;</li>
349 </ul>
350 </p>
351 391
352-->
353 </div> 392 </div>
354 393
355 <h2 id="credits">Credits</h2> 394 <h2 id="credits">Credits</h2>