Linuxtrent: Re: Timeslice in Linux

  • From: Matteo Ianeselli <ianezz@xxxxxxxxxx>
  • To: linuxtrent@xxxxxxxxxxxxxxxxx
  • Date: Fri, 27 Apr 2001 10:51:16 +0200

Gelpi Andrea, pigiando tasti a caso sul citofono, ha scritto:

 > Ovviamente l'attivita dello scheduler consuma sia tempo che
 > risorse.

Uhm, credo di aver capito: per il modo con cui e` implementato X
occorrono parecchi cambi di contesto, visto che l'applicazione
(locale) parla con X via pipe (o anche via shared memory, ma cambia
poco dal punto di vista pratico).

Se non mi sbaglio, il giro con X sarebbe:

Applicazione -> Kernel -> X -> Kernel -> X -> Kernel -> Applicazione

Al contrario, con i driver video nel kernel e una libreria in
userspace per accedervi (i.e. SVGALib) dovrebbe essere

Applicazione -> Kernel -> Applicazione

ma ci sono tutti gli svantaggi del caso, i.e. complessita` aggiunta
nel kernel per gestire piu` schede video e piu processi concorrenti, e
la compatibilita` con l'esistente (beh, GTK embedded e Qt embedded
dovrebbero risolvere quest'ultimo punto in maniera elegante).

Per cui non mi sorprenderei se l'X Window System apparisse nel
complesso piu` "reattivo" usando un timeslice piu` piccolo
(i.e. alzando gli Hz), anche se in fin della fiera e` probabile che
risulti piu` lento. 

Riporto (per sentito dire) che i cambi di contesto sotto Linux
mediamente sono molto light (nel senso che generalmente la latenza e`
proprio poca), anche se ci sono dei picchi ogni tanto per cui
processare audio in tempo reale puo` essere un problema. 

Se non mi sbaglio, Ingo Molnar aveva una famosa patch (la low-latency
patch) che aggiungeva come il prezzemolo punti di schedulazione nel
kernel, in modo da mitigare tali picchi.

 > Sarebbe utile avere delle statistiche sia puntuali (valori medi
 > ogni circa 30 secondi) sia medie delle medie (ogni 5 minuti e ogni
 > ora) con valori di utilizzo della CPU divisa in tempo utente di
 > sistema e scheduler per poter fare delle ulteriori considerazioni.
 > Non so se Linux ha a disposizione tali informazioni.

In teoria ci sarebbe l'opzione di compilazione del kernel per il BSD
Accounting che dovrebbe servire proprio a tale scopo. Non ho mai
guardato a fondo la faccenda, cmq.
-- 
UNIX diapers by Pannolini USPTO 2039887  http://www.uspto.gov
Matteo Ianeselli      ianezz AT sodalia.it  (+39) 0461 316452
Visita il LinuxTrent:            http://linuxtrent.grinta.net
-- 
Per iscriversi  (o disiscriversi), basta spedire un  messaggio con SOGGETTO
"subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxxxxxx


Other related posts: