|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Apr 2002
Città: Roma
Messaggi: 556
|
patch preemptive
salve,
ma la patch da applicare al kernel per renderlo preemptive è la ac oppure quella di molnar ( èquesto il nome corretto ? :P)
__________________
Example isn't another way to teach, it is the only way to teach. -- Albert Einstein |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Oct 2001
Messaggi: 11471
|
-ac non è una patch vera e propria e piu che altro un'altro kernel tree alternativo a quello ufficiale.
quelle di molnar dovrebbero essere le patch per quanto riguarda lo scheduler o(1) la patch per rendere preemptive il kernel sta qui. http://www.kernel.org/pub/linux/kernel/people/rml/preempt-kernel/v2.4/ ciao ![]() |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Apr 2002
Città: Roma
Messaggi: 556
|
ho fatto un bel pò di confusione insomma!! per ovviare alla mia ignoranza ... c'è mica un sito dove venga spiegata l'esatta funzione e almeno in parte il funzionamento di queste patch?
cmq grazie ![]()
__________________
Example isn't another way to teach, it is the only way to teach. -- Albert Einstein |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
|
Semplice, rende possibile passare da un processo ad un altro anche quando il processo in esecuzione è in kernel space (ad es. per aver effettuato una chiamata al kernel). Al momento (2.4.x) è possibile un task switch (oppure uno switch task->kernel thread) solo quando il processo corrente è in user space, oppure in punti opportuni del kernel dove viene deciso di invocare forzatamente lo scheduler. Questo rende il sistema molto più reattivo, e in particolare migliora la latenza di gestione delle interruzioni. Si è anche verificato che il troughtput (velocità di trasferimento dati ecc.) aumenta con un kernel preemptivo.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12 |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:31.