Minut.ee artikli “Väidetavalt muutub Ubuntu iga järgneva versiooniga aeglasemaks” kommentaarides sõna tuumateadlane, kelle jutt on pehmelt öeldes kummaline:
Linuxite häda on selles, et alati on kerneli suurus natuke
suurem, kui protsessoris oleva kiire vahemälu suurus – sellest
ka aeglane töö.
Näiteks 486 ajastul suudeti
kernel teha ligi 16 KB suuruseks ja ta mahtus kuidagi cache sisse ära
- samas töötasid nii videokaart, võrgukaart ja
helikaart.
Tänapäeva Pentium-M ja Core Duo ajastul
on kernel 1 kuni 4 MB pikk ja ta mahub jällegi vaevaliselt cache
sisse ära – samas pole lisandunud nii palju uute asjade tugesid,
mis tingiks kerneli sadu kordi suurema pikkuse.
Kui võtta
mingi 10 aastat vana linuxi versioon, mis oli mõeldud 486
arvutitele ja lisada sinna normaalne flashi toega webi lehitseja,
siis käivitub selline "kõik vajalik sees" linux
vaid paari sekundiga kaasaegses kiires arvutis ja kõik "lausa
lendab".
Teine häda on sihilikult liiga suureks
tehtud draiverid.
386 ajastul olid draiverid 4 – 16 KB pikad ja
nad suutsid ohjata videokaarti, võrgukaarti, helikaarti ja
muid seadmeid, ning tagada arvuti töö 1 MB operatiivmäluga.
Tänapäeval on aga draiverid 1024 KB, ehk 1 MB pikad ning
koos graafiliste liidestega isegi 100 MB pikad.
Toimub täiesti
mõtetu "igaks juhuks" teekide sisse linkimine,
olgugi et neid ei kasutata.
Kui tahta kiiret linuxit, siis
tuleks täitsa otsast uuesti alustada, kuid kontseptuaalselt läbi
mõeldud ja optimiseeritud lähenemisega.
Näiteks
võrgukaarti draiveri tuuma aluseks võta gigabitise
draiveri kontseptsioon koos sisse ehitatud bufrite haldamise toe ja
muude vajalike lahendustega – sellise peaks paarikümne kilo
suuruseks suutma ära optimeerida. Lisanduks vaid kilobaidine
seadmest sõltuv konfiguratsiooni fail, mis annab ette mälu,
io ja irq väärtused.
Aeglasemate 10 ja 100 megabitiste
võrgukaartite draiver oleks seesama gigabitise draiver, milles
bufrite haldamist ei toimu, kuid kõik muu on sama.
Sarnaselt
saaks ka videokaardi, helikaardi, usb ja muude seadmete toe äärmiselt
optimiseeritud kujul valmis kirjutada, kui see seada eesmärgiks
omaette.
Kui draiverid ja kernel on hästi väikseks
optimiseeritud, siis mahuvad nad cache sisse ära ja arvuti lausa
"lendab".
Siinkohas on ehk paslik meenutada, et varemgi on tehnikateadlastel cachega muresid olnud