Il kernel Linux è complesso, grande e ricco di funzionalità. Impararlo non è un compito facile, non solo per la sua complessità e enortezza, ma perché è costantemente in fase di sviluppo. Questo rende Linux un po 'un bersaglio in movimento.
Inoltre, c'è una differenza chiave tra Linux e altri sistemi operativi. Linux ottiene la definizione di sistema operativo sbagliato. Lavori di base che un kernel è effettivamente responsabile di coinvolgere cose come pianificazione, gestione della memoria, ecc. Driver e librerie in realtà si interfacciano con il kernel grazie all'interfaccia (ABI) che il kernel espone. Che ha portato alla frase popolare, "non è Linux, la sua GNU/Linux". Gnu è il resto dello stack, le biblioteche ecc. E Linux è il kernel.
Ma le persone male informate vagano spesso negli interni del kernel di Linux mentre la loro intenzione era qualcosa di completamente diverso che iniziava. Con fuori mano, ecco alcune delle risorse, che ti aiuteranno a conoscere i sistemi operativi in astratto insieme alla specificità dei kernel Linux.
Questo libri scava in profondità l'idea di cosa dovrebbe essere un sistema operativo, in astratto. Allo stesso tempo, ha un solido punto d'appoggio nelle pratiche del mondo reale. Il sito Web di accompagnamento offre una VM Linux che può essere utilizzata per elaborare effettivamente alcune delle sfide che il libro offre. Quindi anche le idee astratte saranno per lo più implementate in Linux dal lettore.
Inoltre, ha sezioni elaborate in cui vengono eseguiti i casi studio per i sistemi operativi popolari e si vede la distinzione tra Linux (che è solo il kernel) e sistemi operativi a pieno titolo come Windows 7.
Livello: intermedio
Come funziona Linux
Rilasciato da No Am di amido, questo è uno dei migliori libri da mostrarti ... beh, come funziona Linux. Tutto, dalla gestione del filesystem e della memoria da parte del kernel alla descrizione dettagliata di I/O, in rete e archiviazione, sono discussi in questo libro.
Anche il confine in cui finisce Linux e il tuo Ubuntu, Arch, CentOS, ecc. Se esegui Linux hai tutti i prerequisiti per passare attraverso questo libro.
Livello: principiante
La documentazione del kernel Linux
Finora ci siamo attaccati ai libri. Tuttavia, i libri vengono obsoleti rapidamente e possono solo aiutarci così tanto. La documentazione del kernel Linux può guidarti attraverso il tuo viaggio nel cuore della questione.
C'è qualcosa per tutti. La documentazione è ordinatamente divisa in sezioni per utenti, sviluppatori di applicazioni e kernel. Puoi ottenere un'essenza pratica di come i bug hanno scoperto e segnalato e le richieste di funzionalità fatte. Naturalmente, tutto è incentrato sul kernel Linux, quindi è probabile che non ti sarà permesso di allontanarti dal tuo obiettivo, in questo sito Web.
Questa è una risorsa indispensabile quando si tratta anche di rimanere aggiornati. Poiché la documentazione è dove vedrai il primo segno di patch e nuove funzionalità.
Livello: N/A
LFD 420 e LFD 440
Sebbene piuttosto costosi, questi sono alcuni dei corsi più votati dalla Linux Foundation. La mia raccomandazione, qui, proviene dall'aneddoto piuttosto che dall'esperienza personale, ma le persone hanno beneficiato enormemente da questi corsi.
Il corso LFD 420 è per il livello intermedio, mentre il corso successivo è per utenti molto più avanzati. I corsi sono forniti dalla Linux Foundation e approfondiscono gli argomenti dell'architettura del kernel, del funzionamento, della sicurezza e molto altro ancora.
Menzione d'onore: progettazione e implementazione di FreeBSD
C'è molto che Linux si sbagli e impara a conoscere il kernel come se fosse un'entità del mondo naturale in attesa di essere studiato è un approccio sbagliato. Non è per niente, che gli utenti di Linux siano accusati di fanatismo. Per evitare di essere intrappolato nella camera di eco di Linux, questo libro ti aiuterebbe immensamente.
Il libro non parla solo del sistema operativo, FreeBSD ma anche suo kernel. Ho scelto FreeBSD per contrastare Linux per una moltitudine di ragioni. Innanzitutto, FreeBSD viene utilizzato molto nel mondo reale. Ha abilitato aziende come Ixsystems, Netflix, Delphix e WhatsApp di eseguire i loro server. Circa il 25% dell'intero traffico Internet statunitense scorre tramite FreeBSD, grazie alla sola popolarità di Netflix. Quindi può essere usato per un po 'di lifting grave.
In secondo luogo, FreeBSD è un adeguato unix. Con una chiara distinzione tra Userland e Kernel e varie altre scelte di progettazione intelligenti, che gli sviluppatori di kernel Linux esperti possono apprezzare e adottare.
Livello: intermedio a avanzato
Quando si impara qualcosa di enorme come il kernel Linux, devi prima definire i tuoi obiettivi. Questo forse implica la comprensione di come funziona, come debug, come scrivere moduli del kernel, ecc.
Una volta che l'obiettivo è ben definito, troverai difficile allontanarsi in argomenti non necessari e dibattiti accesi per cui la comunità di Linux è famigerata. Va bene se l'obiettivo cambia quando capisci di più sul sistema. È molto meglio Nativagate da solo che ottenere alla deriva per opinioni e autorità.