Celil Uyanikoglu

Linux Kernel Nedir? Çekirdek Yapısı ve Modül Yönetimi

Celil Uyanikoglu Celil Uyanikoglu · 21 Nis 2026 · 6 dk okuma

Linux çekirdeği (kernel), işletim sisteminin kalbidir. Donanım ile yazılım arasındaki köprüyü kurar, kaynakları yönetir ve sistemin sorunsuz çalışmasını sağlar. Bu rehberde çekirdeğin yapısını, modül sistemini ve yönetimini ele alacağız.

Kernel Nedir?

Kernel (çekirdek), işletim sisteminin en temel bileşenidir. Donanım ile uygulamalar arasında iletişimi sağlar. Kullanıcı programları doğrudan donanıma erişemez; bu erişim çekirdek üzerinden gerçekleşir.

Linux çekirdeği 1991'de Linus Torvalds tarafından geliştirilmeye başlandı. İlk sürüm 0.01, birkaç bin satır koddan oluşuyordu. Bugün çekirdek milyonlarca satır kod içeriyor ve 29 farklı mimariyi destekliyor.

Çekirdeğin Görevleri

İşlem Yönetimi (Process Management)

Çalışan programları (process) yönetir. CPU zamanını süreçler arasında paylaştırır (zaman paylaşımı). Çoklu görev (multitasking) desteği sağlar. Süreçlerin oluşturulması, sonlandırılması ve zamanlanmasından sorumludur.

Bellek Yönetimi (Memory Management)

RAM'i süreçler arasında paylaştırır. Sanal bellek sistemiyle fiziksel RAM'den fazla bellek kullanımına izin verir. Bellek koruma mekanizmalarıyla süreçlerin birbirinin belleğine erişmesini engeller. Swap alanı yönetimi yapar.

Dosya Sistemi Yönetimi

Farklı dosya sistemlerini (ext4, XFS, Btrfs) destekler. Dosya okuma/yazma işlemlerini yönetir. Dosya izinleri ve güvenliği sağlar. Virtual File System (VFS) katmanıyla farklı dosya sistemlerine ortak arayüz sunar.

Aygıt Yönetimi

Donanım aygıtlarıyla iletişimi sağlar. Aygıt sürücüleri üzerinden donanıma erişim sunar. Kesme (interrupt) yönetimi yapar. Giriş/çıkış (I/O) işlemlerini koordine eder.

Ağ Yönetimi

TCP/IP protokol yığınını uygular. Ağ arayüzlerini yönetir. Paket yönlendirme ve filtreleme yapar.

Çekirdek Türleri

Monolitik Çekirdek

Tüm çekirdek işlevleri tek bir büyük programda birleştirilmiştir. Linux monolitik çekirdek kullanır.

Avantajları: Yüksek performans. Bileşenler arasında hızlı iletişim.

Dezavantajları: Büyük kod tabanı. Bir hata tüm sistemi etkileyebilir.

Mikro Çekirdek

Minimum işlevsellik çekirdekte, geri kalanı kullanıcı alanında çalışır.

Avantajları: Daha güvenli ve kararlı. Modüler yapı.

Dezavantajları: Performans kaybı. Daha karmaşık tasarım.

Linux Hybrid Yaklaşımı

Linux monolitik olmakla birlikte, modül sistemiyle esneklik kazanır. Modüller çalışma zamanında yüklenip kaldırılabilir.

Sürüm Numaralandırma

Linux çekirdeği sürüm numarası üç bölümden oluşur:

Major.Minor.Patch

Örnek: 6.8.12

6: Major versiyon 8: Minor versiyon (özellik güncellemeleri) 12: Patch versiyon (hata düzeltmeleri)

Güncel çekirdek sürümünü öğrenme:

uname -r

Çekirdek Modülleri

Kernel modülleri, çekirdeğe çalışma zamanında yüklenebilen veya kaldırılabilen kod parçalarıdır. Sistemin yeniden başlatılmasına gerek kalmadan işlevsellik eklenebilir veya çıkarılabilir.

Modül Türleri

Aygıt sürücüleri: Donanım desteği sağlar. Dosya sistemi sürücüleri: Farklı dosya sistemlerini destekler. Ağ protokolleri: Ağ işlevselliği ekler. Güvenlik modülleri: SELinux, AppArmor gibi.

Modül Yönetim Komutları

Yüklü modülleri listeleme:

lsmod

Modül bilgisi görüntüleme:

modinfo bluetooth modinfo ext4

Modül yükleme:

sudo modprobe bluetooth

Modül kaldırma:

sudo modprobe -r bluetooth

Eski yöntem (bağımlılık çözmez):

sudo insmod /path/to/module.ko sudo rmmod modulename

Modül Yapılandırması

/etc/modprobe.d/ dizini modül yapılandırma dosyalarını içerir.

Modülü kara listeye alma (yüklenmesini engelleme):

echo "blacklist modulename" | sudo tee /etc/modprobe.d/blacklist-modulename.conf

Modül parametresi ayarlama:

echo "options modulename parameter=value" | sudo tee /etc/modprobe.d/modulename.conf

Çekirdek Parametreleri

Çekirdek davranışını çalışma zamanında değiştiren parametreler.

Parametreleri Görüntüleme

Tüm parametreler:

sysctl -a

Belirli parametre:

sysctl net.ipv4.ip_forward

Parametre Değiştirme

Geçici değişiklik:

sudo sysctl -w net.ipv4.ip_forward=1

Kalıcı değişiklik için /etc/sysctl.conf veya /etc/sysctl.d/ dosyaları düzenlenir:

net.ipv4.ip_forward = 1

Değişiklikleri uygulama:

sudo sysctl -p

Çekirdek Derleme

İleri düzey kullanıcılar özel çekirdek derleyebilir. Özel donanım desteği, performans optimizasyonu veya minimal çekirdek için gerekebilir.

Temel Adımlar

Kaynak kodunu indirin (kernel.org). Yapılandırma dosyası oluşturun (make menuconfig). Çekirdeği derleyin (make). Modülleri derleyin ve kurun (make modules_install). Çekirdeği kurun (make install). Önyükleyiciyi güncelleyin (update-grub).

Bu işlem zaman alır ve hata riski taşır. Çoğu kullanıcı için dağıtımın sağladığı çekirdek yeterlidir.

Çekirdek Güncelleme

Dağıtımlar çekirdek güncellemelerini paket yöneticisi üzerinden sağlar.

Ubuntu/Debian:

sudo apt update && sudo apt upgrade

Güncelleme sonrası yeniden başlatma gerekir.

Kurulu çekirdekleri listeleme:

dpkg --list | grep linux-image

Eski çekirdekleri temizleme:

sudo apt autoremove

DKMS (Dynamic Kernel Module Support)

DKMS, çekirdek güncellendiğinde modüllerin otomatik yeniden derlenmesini sağlar. NVIDIA sürücüleri, VirtualBox gibi üçüncü parti modüller için önemli.

DKMS durumu:

dkms status

Proc ve Sys Dosya Sistemleri

/proc

Sanal dosya sistemi. Çalışan sistem hakkında bilgi sağlar.

/proc/cpuinfo: CPU bilgisi /proc/meminfo: Bellek bilgisi /proc/version: Çekirdek sürümü /proc/[PID]/: Süreç bilgileri

/sys

Çekirdek nesnelerine erişim sağlar. Donanım yapılandırması için kullanılır.

Hata Ayıklama

Çekirdek Logları

dmesg: Çekirdek mesajlarını gösterir.

dmesg | tail -50

journalctl ile çekirdek logları:

journalctl -k

Çekirdek Panik

Kritik hatada sistem durur. Panik mesajı hatanın nedenini gösterir. Genellikle donanım sorunu veya hatalı sürücü kaynaklıdır.

Sonuç

Linux çekirdeği işletim sisteminin temelidir. Donanım yönetiminden bellek tahsisine, ağ iletişiminden dosya sistemlerine kadar her şeyi kontrol eder.

Çoğu kullanıcı için çekirdek detaylarını bilmek gerekmez; dağıtımlar bu işleri halleder. Ancak sistem yöneticileri ve geliştiriciler için modül yönetimi, parametre ayarlama ve sorun giderme becerileri değerlidir.

Çekirdeği güncel tutun, güvenlik güncellemelerini atlayamayın. Özel gereksinimler olmadıkça dağıtımın sağladığı çekirdeği kullanın.

0 Yorum

Yorum Yaz