Ich frage mich, was der Unterschied zwischen PREEMPT_NONE und PREEMPT_VOLUNTARY sind. Entsprechend der Dokumentation,Linux Kernel Preemption Levels
This option reduces the latency of the kernel by adding more
"explicit preemption points" to the kernel code
Aber es erwähnt nicht, was diese Punkte sind. Ich habe versucht, es zu googeln, aber ich habe keine Details gefunden, die über den obigen Text hinausgehen (was überraschend erscheint, da ich denken würde, dass dies eine häufige Frage wäre). Mein Hauptanliegen sind Prozesse, die andere Prozesse verhungern, also frage ich mich, ob die Vorbelegung bei Timer-Interrupts mit FREIWILLIG auftritt. Natürlich, je mehr Informationen, desto besser, also frage ich mich, was die anderen Punkte sein könnten.
Siehe auch http://stackoverflow.com/questions/5174955/what-is-voluntary-preemption –
Und siehe http://stackoverflow.com/questions/20769768/why-disable-interrupts-disables-kernel-preemption -und-wie-spin-lock-disables-p? rq = 1 –
Danke - Ich stieß auf den ersten Artikel, aber es hat immer noch ein vages Zitat: "während Kern Dinge tun". Es erwähnt das IO als Beispiel, erwähnt aber leider nicht andere Dinge. – blackghost