Çekirdek
Çekirdek, bir bilgisayarın işletim sisteminin donanım, yazılım ve süreçlerini yöneten merkezi bileşenidir. Kaynakların tahsisinden ve programlar ile donanım bileşenleri arasındaki iletişimden sorumludur. Linux çekirdeği birçok bilgisayar türünde kullanılan popüler bir çekirdektir.
Çekirdek, bilgisayar önyükleme işlemine başladığında çalıştırılan ilk programdır. Kullanıcı uygulamaları ile donanım cihazları arasındaki arayüzün sağlanmasından sorumludur. Ayrıca bellek ve giriş/çıkış işlemlerinin yürütülmesinden de sorumludur.
Çekirdek geliştiricileri verimlilik, hız ve güvenilirlik için çabalıyor. Bir çekirdek, aygıt sürücüleri, bellek yönetimi, sistem çağrıları ve sanal bellek yönetimi gibi birden fazla alt bileşen içerebilir. Ayrıca paket filtreleme, güvenlik duvarı oluşturma, ağ adresi çevirisi, bağlantı noktası iletme ve kaynak yönlendirme özelliklerine de sahiptir.
Çekirdek geliştiricilerinin işletim sistemleri, montaj dili, bilgisayar mimarisi, mantık ve bilgisayar ağları konularında bilgi sahibi olması gerekir. Donanım ve yazılım bileşenleri arasındaki etkileşimleri anlamaları gerekir.
Linux çekirdeği, dünya çapında milyonlarca kurulumla en yaygın kullanılan çekirdektir. Aynı zamanda Android cihazlarda ve birçok Apple ürününde kullanılan çekirdektir. Diğer popüler çekirdekler arasında Windows, FreeBSD, OpenBSD ve Solaris bulunur.