Home > Debian, Linux, Ubuntu > I kernels in Ubuntu

I kernels in Ubuntu

[Aggiornamento 2013]

Il kernel è il nucleo  il “cuore” del sistema operativo linux. Anzi forse si dovrebbe dire che Linux è sostanzialmente il kernel  molti degli strumenti programmi che compongono il S.O. Linux di fatto sono derivati dal progetto GNU per questa ragione alcuni considerano che si dovrebbe parlare non di S.O. Linux ma di S.O.  Linux/Gnu.

Il compito di kernel è  esplicare tutte le funzioni essenziali gestione della memoria,  coordinare i processi, gestire le risorse hardware del sistema e delle periferiche, gestire il file system, la rete. Di fatto i programmi non possono accedere direttamente alle risorse hardware ma devono passare per il kernel (system call).

In genere per una versione di Kernel sono disponibili diverse alternative alcune delle quali presenti nei repository di Ubuntu .

generic :  Il kernel di default

-preempt: basato sul  kernel generic con una configuarzione differente per ridurre la latenza

-lowlatency :  basato sul generic kernel  Ubuntu utilizza una configurazione per ridurre la latenza più agressiva del kernel preempt. Per latenza dobbiamo intendere il tempo che interviene tra l’input e  e il momento in cui è disponibile l’output in risposta. Questi kernel sono ottimali per le applicazioni audio video che richiedono appunto  bassa latenza va precisato che le performance globali del sistema potrebbero peggiorare. Non adatto ai servers.

-server:  kernel ottimizzato per i server

-virtual:  adatto per supportare in modo efficente le tecnologie di virtualizzazione come KVM, Xen, VMWare. E’ più piccolo perchè spogliato della gran parte dei drivers.

-rt:  basato sempre sul kernel generic di Ubuntu ma con applicate le patch PREEMPT_RT Ingo Molnar

-realtime: kernel basato sul kernel vanilla copn applicate le path PREEMPT_RT Ingo Molnar

-pae:   pae è l’acronimo di Physical Address Extension viene caricato automaticamente nei sistemi a 32 bit con più di 3GB di RAM per accedere alla  RAM superiore

-extra  pacchetto introddotto con ubuntu 12.10 forniscono moduli aggiunti  (drivers) del  kernel

signed-generic: Firmato con Ubuntu EFI key.

kernel headers   gli headers sono files include (.h)  che permettono di installare e compilare drivers esterni al kernel. Usati in C  definiscono variabili, parametri delle funzioni e servono per la compilazione appunto  dei moduli esterni. In tale fattispecie infatti i sorgenti per potersi interfacciare con il kernel devono conoscere le definizioni dei seimboli del kernel stesso.  Se si installano i sorgenti del kernel si hanno automaticamente anche gli headers che ne fanno parte. I sorgenti però  servono solo compilare il kernel se si devono compilare moduli esterni bastno gli headers.

kernel drivers e kernel modules: Il kernel è in gran parte codice di drivers ( kernel dirvers)  che ovviamente serve per il riconoscimento e l’interazione con l’hardware.  i kernel modules sono codice compilato che può essere aggiunto al kernel con insmod e modprobe. Un driver può essere compilato come modulo però non tutti i moduli sono drivers.

Riosorse:

Annunci
  1. Non c'è ancora nessun commento.
  1. No trackbacks yet.

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: