This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Last revision Both sides next revision | ||
realtime:documentation:start [2017/02/08 13:38] anna-maria move rtos and rt application howtos in an own namespace |
realtime:documentation:start [2020/02/21 19:38] rostedt |
||
---|---|---|---|
Line 22: | Line 22: | ||
<WRAP half column> | <WRAP half column> | ||
+ | ===== Stable RT Releases ===== | ||
+ | |||
+ | If the PREEMPT_RT patch was ported to a Linux kernel version that is flagged as a [[https://kernel.org|stable release at kernel.org]], then that port will continue to be forward ported with each new stable release for that kernel version. The stable kernels can be cloned from the [[https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-stable-rt.git/|stable git repository]] as well as downloaded as [[https://mirrors.edge.kernel.org/pub/linux/kernel/projects/rt/|single patches or a tarball of a quilt series of patches]]. | ||
+ | |||
+ | The PREEMPT_RT stable releases are updated in two fashions. | ||
+ | |||
+ | * Merged with the upstream Linux stable kernel. | ||
+ | |||
+ | * Backports of commits from the [[https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git/|current PREEMPT_RT development repository]] | ||
+ | |||
+ | Tagging policy of the PREEMPT_RT stable releases. Each PREEMPT_RT stable release is tagged with the version number of the upstream Linux stable kernel as well as its own "-rt" counter that is appended. The -rt counter will increment for the following: | ||
+ | |||
+ | * When forward ported to the latest upstream Linux stable version. | ||
+ | |||
+ | * When any merge with a upstream Linux stable causes a conflict. | ||
+ | |||
+ | * When a backport of the PREEMPT_RT development branch is done. | ||
+ | |||
+ | A backport will not be done with a forward port of a stable version. They will be done separately, and tagged separately. | ||
+ | |||
+ | The "-rebase" branch is how the series of patches are created. The "-rebase" is only done for forward ports to the latest upstream Linux stable versions, and for backports of the PREEMPT_RT development branch. It is not done for a conflict with a upstream Linux stable merge, unless that stable version is the latest one. As the name suggests, the "-rebase" branch will rebase, to allow each commit added by the PREEMPT_RT code to be applied in the order to the upstream Linux stable version it is based on. This is not the case with the normal "-rt" branch, which is never rebased. | ||
+ | |||
===== Technical details of PREEMPT_RT patch ===== | ===== Technical details of PREEMPT_RT patch ===== | ||
The main aim of the PREEMPT_RT patch is to //minimize the amount of kernel code that is non-preemptible// ((Paul McKenney. A realtime preemption overview. [[https://lwn.net/Articles/146861/]])). Therefore several substitution mechanisms and new mechanisms are implemented. | The main aim of the PREEMPT_RT patch is to //minimize the amount of kernel code that is non-preemptible// ((Paul McKenney. A realtime preemption overview. [[https://lwn.net/Articles/146861/]])). Therefore several substitution mechanisms and new mechanisms are implemented. | ||
- | <WRAP rightalign>[[realtime:documentation:technical_preempt_rt|Read more about technical details]]</WRAP> | + | <WRAP rightalign>[[realtime:documentation:technical_details:start|Read more about technical details]]</WRAP> |
</WRAP> | </WRAP> | ||
Line 38: | Line 60: | ||
* [[realtime:documentation:howto:applications:start|RTOS and RT application]] | * [[realtime:documentation:howto:applications:start|RTOS and RT application]] | ||
- | * [[realtime:documentation:howto:howto_dbg_main|RT Debugging]] | + | * [[realtime:documentation:howto:debugging:start|RT latency debugging]] |
- | * [[realtime:documentation:howto:howto_tools_main|RT tools and utilities]] | + | * [[realtime:documentation:howto:tools:start|RT tools and utilities]] |
</WRAP> | </WRAP> | ||
Line 48: | Line 70: | ||
Several real-time related publications can help broaden your knowledge | Several real-time related publications can help broaden your knowledge | ||
- | about real-time systems. | + | about real-time systems. Regarding PREEMPT_RT, a recent survey of available scientific works |
+ | [[https://dl.acm.org/citation.cfm?id=3297714|have been published]] ([[https://re.public.polimi.it/handle/11311/1076057|open access link]]). | ||
<WRAP rightalign>[[realtime:documentation:publications|Read more about publications]]</WRAP> | <WRAP rightalign>[[realtime:documentation:publications|Read more about publications]]</WRAP> | ||
Line 68: | Line 91: | ||
</WRAP> | </WRAP> | ||
+ | ---- | ||
+ | <WRAP rightalign>Go back to [[realtime:start|Real-Time Main Page]]</WRAP> |