Le novità del nuovo Kernel Linux by Andrea Arcangeli
Nel corso del LinuxDay organizzato dal Lug di Ferrara, Andrea Arcangeli ha spiegato le novità del kernel linux 2.6, il cui rilascio è atteso a giorni. Novità sia per server che per desktop
di Fabio Boneschi pubblicata il 09 Dicembre 2003, alle 14:45 nel canale ProgrammiNel corso del LinuxDay organizzato dal Lug di Ferrara, Andrea Arcangeli ha
spiegato le novità del kernel linux 2.6.
Abbiamo trovato in rete una sintetica cronaca
dell'intervento pubblicata sul sito del Lug di Gioia Tauro e considerando di
estremo interesse la cosa, intendiamo proporvi una rapida sintesi.
Una premessa d'obbligo..chi è Andrea Arcangeli? Chiunque si interessa
a Linux ed al suo kernel sa rispondere a questa domanda! Arcangeli è
uno sviluppatore software che in passato ha fattivamente collaborato alla realizzazione
di parecchie release di Kernel. E' "specializzato" in sottosistema
I/O, networking e gestione della memoria.
In molti ricorderanno la "rivoluzione"occorsa nel rilascio del kernel
2.4.10, al cui interno vi era il suo algoritmo di gestione della memoria virtuale.
Attualmente Arcangeli collabora con SuSE Linux.
Riportiamo qui di seguito alcune delle novità principali presentate nel corso dl LinuxDay; alcune di queste informazioni sono ormai note da tempo, ma commentate e presentate in lingua italiana assumono indubbiamente in differente significato.
- Scheduler dei task in o(1)
Nuova funzionalità che permette di eseguire un determinato processo per un determinato tempo, evitando eventuali rallentamenti dovuti all'esecuzione contemporanea di molti processi.
Questa funzionalità permetterà un notevole boost in tutte le implementazioni in cui si ha l'esecuzione contemporanea di una gran quantità di processi (tipicamente in ambiente server) - Supporto a Pagine "Grandi" in Paginazione
Si avrà la possibilità di variare la dimensione delle pagine di memoria, superando i limiti degli attuali 4KB; aumentando tali dimensioni sarà possibile leggere con una singola operazione un numero maggiore di dati. Il guadagno in termini velocistici è scontato, ma si potrà correre il rischio di incappare in problemi di frammentazione. - Low latency
Al fine di evitare loop da cui il sistema non è in grado di uscire, il nuovo kernel inserirà dei controlli in "aree" di codice potenzialmente a rischio; in tal modo non dovrebbero crearsi loop fatali per l'esecuzione del kernel stesso. Per le attuali versioni stable del kernel è disponibile una apposita patch. - Dynamic-hz
Alla base di un pc, di un server ecc vi sono i vari clock, le varie routine di timing che, usando un paragone musicale, danno il tempo al sistema. Il nuovo kernel 2.6 verrà rivisto in questa parte fondamentale e delicata, adattando le esigenze computazionali del codice ai nuovi limiti hardware delle macchine attuali. Una sorta di "aggiornamento delle costati" che dovrebbe portare ad un generale miglioramento delle prestazioni. - preemptive Kernel Fully-preemptive Kernel
Il nuovo kernel 2.6 è Fully-preemptive, ovvero è in grado di interrompere l'esecuzione di un processo in qualsiasi momento, caratteristica assai importante se sopraggiunge la necessità urgente di eseguire un determinato processo particolarmente importante per la stabilità e le prestazioni generali del sistema.
Le versioni precedenti di kernel erano preemptive sono in modalità user e non permettevano tale possibilità in modalità kernel.
Queste a nosto avviso sono le novità essenziali del nuovo kernel, a
cui se ne aggiungono molte altre riguardanti prettamente nuove modalità
di gestione degli I/O e delle letture e scritture su disco.
Alcune delle funzionalità disponibili nel 2.6 sono state importate anche
nel 2.4 attraverso un back-porting; ovviamente le prestazioni e l'efficacia
sono però inferiori.
Il nuovo kernel 2.6 è annunciato a giorni, il suo sviluppo è
in fase finale e da più parti si ipotizzava un rilascio per fine anno.
Le novità introdotte sono parecchie e spaziano in vari ambti, sia sul
fronte server, sia per applicazioni home e desktop.
La nuova release di Kernel è molto attesa ovviamente anche da chi vede
in Linux un business interessante, come ad esempio le software house che vendono
distribuzioni commerciali; molte caratteristiche del nuovo kernel sono appositamente
pensate per l'impiego desktop, ultima frontiera della diffusione Linux.
Vi inviatiamo a leggere l'articolo completo relativo alle innovazioni del nuovo kernel a questo indirizzo; trovere descritte altre caratterisitche interessanti, esposte in maniera semplice e comprensibile. A questo indirizzo trovate una presentazione in pdf altrettanto chiara ed interessante.
Per chi invece volesse "assistere" almeno virtualmente alla presentazine di Arcangeli, segnaliamo questo indirizzo.
27 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - infoOTTIMO!
La + importante mi sembra il Full-Preemptive,nella speranza che non crei troppi casini dentro il kernel...
Poi vorrei sapere in che funzione computazionale era lo scheduler nei vecchi kernel? o(log n)????
Si può parlare solo by coding!!
tutte ste cose per mascherare l'unico reale problema di linux....
.....il macro kernel che ormai si porta dietro e che nel 2000 non e' piu' accettabile....
inoltre molti driver sono statici altri dinamici altri esterni al kernel...in pratica su sistemi con molte periferiche nessun sistema linux sarà efficente visto che concetra il peggio dei sistemi attualmente disponibili per la gestione dell'hardware...
questo conferma la tendenza all'uso su sistemi specifici e non su sistemi general purpose...
per quanto riguarda il multitask bastano 512kbyte per avere un micro kernel multitask efficente all 100% e che possa gestire sistemi a 64 bit multi processing....visto che puo' caricare l'exec nella cache L3 interamente cosa possibile solo su sistemi itanium (purtroppo), quindi tutte le funzioni di gestione dei task sono gestine all'interno del processore full speed e prive di ogni wait state da parte dei dma delle periferiche esterne, quindi queste nuove caratteristiche sono certamente commissionate dai grossi produttori di server e non certo per noi piccoli utenti desktop...
in definitiva un passa in avanti sulla linea tracciata ormai negli anni '90 e lungo la quale linux tende a consolidare il suo mercato...
tutto cio' che ruota intorno e' e credo restarà faragginoso e impreciso come è ora, non me ne vogliano i linux fan....
Mio dio quante castronerie!!!!!!
Cosa sarebbe il low_latency?????Driver statici e driver dinamici?????
Fully preempitive impossibile/inutile??????????
Ma per favore!
a questo punto mi chiedo chi sia Michele Arcangeli, spero che il Boneschi mi sappia dare spiegazioni
driver dinamici: driver che gestiscono periferiferiche mediante i inerfacce controllate dai driver statici...e' possibile cambiarli e aggiornarli anche dinamicamente senza interferire con le funzione base del kernel...ingenere si usano per la gestione di scheda audio video usb etc etc sono la maggioranza...
driver esterni....quelli che si basano su HAL(hardware abstraction layer) gestiscono l'hardware mediante protocolli....
un esempio sono i driver scsi o per periferiche usb....
spero di avere fatto luce sulle costronerie....(che poi vuol dire in italiano omissioni, in questo caso della definizione)
low latency...
bassa latenza....
differenza tra un exec gestito in L3 cache e un exec normale e' semplicemente quella di poter eseguire operazione indipendentemente da interrupt hardware esterni a quelli della cpu in poche parole garantisce il reset delle periferiche senza un control esterno.....solo con sistemi simil cluster era possibile ottenere qualcosa del genere fino a qualche tempo fa....
utilizzato per sistemi multiprocessing in cui una gestione degli interrupt centralizzata o parcellizzate porta in genere a sistemi difficilissimi da gestire....solo itanium tra le cpu "commerciali ha questa possibilità di gestire in questo modo la cache L3" e solo con queste funzioni il kernel full pre-emptive ha un senso visto che i driver di linux statici/dinamici/esterni non permettono un reale controllo sull'hardware in sistemi generici....
spero di non aver detto altre castronerie nel caso concedetemi questo delirio
anche se poi le cose grosso modo stanno cosi' che ne dicano gli altri....
Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".