diff options
Diffstat (limited to 'index.html')
-rw-r--r-- | index.html | 107 |
1 files changed, 73 insertions, 34 deletions
@@ -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 |
254 | wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2 | 292 | wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2 |
255 | tar xjf linux-2.6.20.tar.bz2 | 293 | tar xjf linux-2.6.20.tar.bz2 |
256 | wget http://www.cs.unc.edu/~anderson/litmus-rt/download/litmus-rt-2007.2.patch | 294 | wget http://www.cs.unc.edu/~anderson/litmus-rt/download/2007.3/litmus-rt-2007.3.patch |
257 | mv linux-2.6.20 litmus-rt | 295 | mv linux-2.6.20 litmus-rt |
258 | # apply the LITMUS RT patch | 296 | # apply the LITMUS RT patch |
259 | cd litmus-rt | 297 | cd litmus-rt |
260 | patch -p1 < ../litmus-rt-2007.2.patch | 298 | patch -p1 < ../litmus-rt-2007.3.patch |
261 | # create a working kernel configuration with HZ=1000 | 299 | # create a working kernel configuration with HZ=1000 |
262 | make gconfig | 300 | make 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"> |
300 | cd $DIR | 338 | cd $DIR |
301 | wget http://www.cs.unc.edu/~anderson/litmus-rt/download/liblitmus-2007.2.tgz | 339 | wget http://www.cs.unc.edu/~anderson/litmus-rt/download/2007.3/liblitmus-2007.3.tgz |
302 | tar xzf liblitmus-2007.2.tgz | 340 | tar xzf liblitmus-2007.3.tgz |
303 | cd liblitmus | 341 | cd liblitmus |
304 | make | 342 | make |
305 | </pre> | 343 | </pre> |
@@ -312,8 +350,8 @@ make | |||
312 | </p> | 350 | </p> |
313 | <pre class="shell"> | 351 | <pre class="shell"> |
314 | cd $DIR | 352 | cd $DIR |
315 | wget http://www.cs.unc.edu/~anderson/litmus-rt/download/libso-2007.2.tgz | 353 | wget http://www.cs.unc.edu/~anderson/litmus-rt/download/2007.3/libso-2007.3.tgz |
316 | tar xzf libso-2007.2.tgz | 354 | tar xzf libso-2007.3.tgz |
317 | cd libso | 355 | cd libso |
318 | make | 356 | make |
319 | make tests | 357 | make 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">“LITMUS<sup>RT</sup>: | 374 | <a href="http://www.cs.unc.edu/~anderson/papers/rtlws07.pdf">“LITMUS<sup>RT</sup>: |
337 | A Status Report”</a>. | 375 | A Status Report”</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 "Hello World!"</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> |