<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Completely_Fair_Scheduler</id>
	<title>Completely Fair Scheduler - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Completely_Fair_Scheduler"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Completely_Fair_Scheduler&amp;action=history"/>
	<updated>2026-06-03T21:29:25Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Completely_Fair_Scheduler&amp;diff=1152075&amp;oldid=prev</id>
		<title>imported&gt;Rosenfalter: /* growthexperiments-addlink-summary-summary:1|0|1 */</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Completely_Fair_Scheduler&amp;diff=1152075&amp;oldid=prev"/>
		<updated>2025-02-11T20:02:10Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;growthexperiments-addlink-summary-summary:1|0|1&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Completely Fair Scheduler&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;CFS&amp;#039;&amp;#039;&amp;#039;) ist ein für [[Linux (Kernel)|Linux]] konzipierter und dort als Standard vorgesehener [[Prozess-Scheduler]]. Solche Scheduler werden verwendet, um die Priorität von Programmabläufen auf [[Kernel (Betriebssystem)|Kernelebene]] von [[Betriebssystem]]en zu verwalten. Eine frühere Version des CFS wurde zuerst von [[Ingo Molnár]] entwickelt und ersetzte mit Kernelversion 2.6.23 im Oktober 2007 den zuvor verwendeten [[O(1)-Scheduler]].&lt;br /&gt;
&lt;br /&gt;
Der CFS garantiert eine faire Aufteilung der [[Prozessorzeit]]. Er verzichtet im Gegensatz zum O(1)-Scheduler dabei auf Heuristiken und&lt;br /&gt;
Statistiken. Im Idealfall läuft beim CFS jeder Prozess quasiparallel in gleicher Geschwindigkeit. Der CFS benötigt keine [[Warteschlange (Datenstruktur)|Runqueue]], keine [[Multitasking#Präemptives Multitasking|Timeslices]] und kein Array-Switching. Stattdessen ist jedem Prozess ein &amp;#039;&amp;#039;vruntime&amp;#039;&amp;#039; genannter Wert zugeordnet (virtual runtime), der seine tatsächliche Laufzeit auf Nanosekunden bestimmt abstrahiert und eine Bewertung darüber erlaubt, wie lange der Prozess schon gelaufen ist. Derjenige Prozess mit der jeweils geringsten &amp;#039;&amp;#039;vruntime&amp;#039;&amp;#039; wird gewählt. Als Struktur wird dafür ein nach der &amp;#039;&amp;#039;vruntime&amp;#039;&amp;#039; sortierter [[Rot-Schwarz-Baum]] verwendet.&amp;lt;ref name=&amp;quot;This is the CFS scheduler&amp;quot;&amp;gt;Ingo Molnár: &amp;#039;&amp;#039;{{Webarchiv|url=https://people.redhat.com/mingo/cfs-scheduler/sched-design-CFS.txt |wayback=20180225103905 |text=This is the CFS scheduler. |archiv-bot=2024-11-19 09:13:46 InternetArchiveBot }}&amp;#039;&amp;#039;, Stand 13. März 2008&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;Robert Love: &amp;#039;&amp;#039;Linux Kernel Development&amp;#039;&amp;#039;. 3. Auflage, Addison-Wesley 2010, ISBN 978-0-672-32946-3. S. 41–67&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Erweiterungen im 2.6.24er-Kernel ==&lt;br /&gt;
&lt;br /&gt;
Mit dem 2.6.24er-Kernel unterstützt der CFS Task Groups. Dies bedeutet, dass mehrere Prozesse zu Gruppen zusammengefasst werden und dadurch eine faire Aufteilung zwischen den Gruppen stattfindet. Das kann sinnvoll sein, wenn mehrere User an einem System arbeiten.&lt;br /&gt;
&lt;br /&gt;
Folgendes Szenario verdeutlicht den Sachverhalt: Benutzer&amp;amp;nbsp;A lässt zwei Prozesse laufen, Benutzer&amp;amp;nbsp;B dagegen einen. Alle drei Prozesse haben die gleiche Priorität. Der alte &amp;#039;&amp;#039;O(1)-Scheduler&amp;#039;&amp;#039; würde dem Benutzer&amp;amp;nbsp;A zwei Drittel und Benutzer&amp;amp;nbsp;B ein Drittel der CPU-Laufzeit zuteilen. Der CFS teilt dagegen beiden Usern 50 % der Rechenzeit zu.&amp;lt;ref name=&amp;quot;This is the CFS scheduler&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Brain Fuck Scheduler]]&lt;br /&gt;
* [[Fair-Share-Scheduling]]&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [https://www.kernel.org/doc/html/latest/scheduler/sched-design-CFS.html &amp;#039;&amp;#039;CFS Scheduler – Linux Kernel Documentation&amp;#039;&amp;#039;]&lt;br /&gt;
* Ingo Molnár: [https://people.redhat.com/mingo/cfs-scheduler/sched-design-CFS.txt &amp;#039;&amp;#039;This is the CFS scheduler&amp;#039;&amp;#039;.]&lt;br /&gt;
* M. Tim Jones: [https://developer.ibm.com/tutorials/l-completely-fair-scheduler/ &amp;#039;&amp;#039;Inside the Linux 2.6 Completely Fair Scheduler&amp;#039;&amp;#039;.] In: IBM developerWorks, 15. Dezember 2009.&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Linux-Betriebssystemkomponente]]&lt;br /&gt;
[[Kategorie:Betriebssystemtheorie]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Rosenfalter</name></author>
	</entry>
</feed>