Mehmet

WFN Üye
Konular
1,851
Mesajlar
1,852
Çözüm
0
Ticaret Puanı
0
Üyelik
1 Ay 6 Gün
Konum
YurtDışı
Web Sitesi
Var
Alanı
Google Adsense
1/1
Konu sahibi
Linux kernel, bilgisayarın donanımı ile kullanıcı programları arasında çalışan işletim sistemi çekirdeğidir. İşlemci zamanı, bellek, diskler, ağ bağlantıları ve donanım sürücüleri gibi temel kaynakları yönetir; uygulamaların bu kaynaklara doğrudan ve kontrolsüz biçimde erişmesi yerine belirlenmiş arayüzler üzerinden çalışmasını sağlar. Bu nedenle kernel tek başına tam bir masaüstü işletim sistemi değildir; Ubuntu, Debian veya başka bir dağıtım kernelin yanında araçlar, kütüphaneler, paket yöneticisi ve isteğe bağlı grafik ortamı sunar.

Kernel nasıl çalışır?​


Bir program dosya okumak, ağ bağlantısı açmak veya yeni işlem başlatmak istediğinde doğrudan diske ya da donanıma hükmetmez. Bunun yerine sistem çağrısı aracılığıyla kernelden hizmet ister. Kernel isteği denetler, gerekli donanım sürücüsünü veya alt sistemi çalıştırır ve sonucu programa döndürür.

Kernelin başlıca görevleri şunlardır:
  • İşlem yönetimi: Programları işlem ve iş parçacıkları olarak çalıştırır, işlemci zamanını aralarında paylaştırır.
  • Bellek yönetimi: Her sürece sanal adres alanı verir; RAM kullanımını, takas alanını ve bellek erişim izinlerini yönetir.
  • Donanım yönetimi: USB, disk, ekran kartı, ses aygıtı ve ağ kartı gibi bileşenlerle sürücüler aracılığıyla haberleşir.
  • Dosya sistemleri: Dosyaların ve dizinlerin disk üzerinde nasıl okunup yazılacağını düzenler.
  • Ağ iletişimi: TCP/IP gibi ağ işlevlerini ve ağ aygıtlarının işletim sistemine sunulmasını sağlar.
  • Güvenlik ve izolasyon: Kullanıcı, grup, izin, yetenek ve süreç sınırlarıyla kaynak erişimini kısıtlar.
Kernel ile kullanıcı alanı arasındaki sınır önemlidir. Terminal, masaüstü ortamı, web tarayıcısı ve servisler genellikle kullanıcı alanında çalışır. Kernel ise daha yüksek ayrıcalıkla çalışır. Kullanıcı alanındaki bir program hatalandığında çoğunlukla yalnızca o program etkilenir; kernel seviyesindeki bir hata ise sistemin kilitlenmesine veya yeniden başlamasına yol açabilir.

Somut örnek: Bir dosyayı okurken ne olur?​


Bir metin düzenleyici example.txt dosyasını açtığında kabaca şu zincir oluşur:
  1. Düzenleyici, standart bir dosya açma isteği oluşturur.
  2. İstek sistem çağrısı üzerinden kernele iletilir.
  3. Kernel kullanıcının dosyaya erişim iznini ve dosyanın bulunduğu dosya sistemini kontrol eder.
  4. Veri sayfa önbelleğinde bulunuyorsa oradan karşılanabilir; gerekirse ilgili dosya sistemi ve depolama sürücüsü diske veya SSD’ye okuma isteği gönderir.
  5. Veri kernel tarafından belleğe alınır ve düzenleyiciye aktarılır.
Program, donanımın marka ve modeline göre ayrı ayrı kod yazmak zorunda kalmaz. Bu ortak arayüzler, farklı donanımların aynı Linux kullanıcı alanı araçlarıyla çalışabilmesinin temel nedenlerinden biridir.

Dağıtım, kernel ve sürüm bilgisini ayırma​


Bir sistemde görülen “Linux sürümü” ifadesi bazen dağıtımı, bazen kernel sürümünü anlatır. Teknik bir sorun çözerken önce hangi bilgiyi aradığınızı ayırın:
BilgiNe anlatır?Örnek kullanım
Kernel sürümüÇalışan çekirdeğin sürümünü gösteriruname -r
DağıtımPaketleri ve sistem araçlarını sağlayan işletim sistemi ailesidirUbuntu, Debian gibi
Mimariİşlemci platformunu gösteriruname -m
Kernel sürümünü görmek için şu komutu çalıştırın:

Kod:
uname -r

Başarılı çalıştırmada sürüm numarası ve dağıtımın ekleyebildiği paket/derleme son eklerini görürsünüz. Bu çıktı yalnızca çalışan kernelin sürümünü belirtir; dağıtımın adı, masaüstü ortamı veya kurulu yazılımlar hakkında tek başına bilgi vermez. Komut bulunamıyorsa Linux olmayan bir ortamda, kısıtlı bir kurtarma sisteminde veya eksik bir kullanıcı alanı aracında çalışıyor olabilirsiniz; bu durumda sistemin açılış ortamını ve temel araçlarını kontrol edin.

Kernel değiştirmek ne zaman gerekir?​


Donanım desteği, güvenlik düzeltmeleri, dosya sistemi davranışı veya belirli bir hata nedeniyle kernel güncellemesi gerekebilir. Ancak yalnızca daha yeni numaraya sahip olduğu için elle kernel kurmak doğru yaklaşım değildir. Önce dağıtımın sunduğu kernel paketlerini ve geri dönüş seçeneğini kullanın. Özel bir kernel kurulacaksa kullanılan donanım, modüller, önyükleyici ve mevcut kernel ile geri açılabilme durumu birlikte değerlendirilmelidir.

Sık yapılan hata, kernel ile kabuk veya masaüstü ortamını aynı şey sanmaktır. Bash bir kabuktur, GNOME bir masaüstü ortamıdır, apt veya dnf paket yönetim aracıdır; bunların hiçbiri kernelin kendisi değildir. Ayrıca kernel güncellemesi her uygulamayı otomatik olarak güncellemez ve tek başına daha hızlı bir sistem garantisi vermez.

Sık sorulan sorular​


Kernel paketi güncellendiği hâlde uname neden eski sürümü gösterir?​


uname -r diskte kurulu tüm paketleri değil, o anda çalışan çekirdeği gösterir. Yeni çekirdek genellikle uygun önyükleme girdisiyle yeniden başlatıldığında devreye girer. Dağıtımın yönergelerini ve önyükleyicinin seçimini kontrol edin; eski çalışan çekirdeği geri dönüş seçeneği olarak koruyun.

Kernel modülü nedir?​


Kernel modülü, bazı sürücü veya işlevlerin çekirdeğe gerektiğinde yüklenmesini sağlayan bileşendir. Böylece her özellik çekirdeğin sabit parçası olmak zorunda kalmaz; uygun modül yüklendiğinde ilgili donanım veya işlev kullanılabilir.
 

Sende şimdi bize katılmak ister misin?

Kayıt ol

Bize katılım kolay ve ücretsizdir!

Konuyu görüntüleyenler

Bu konuyu şu anda görüntüleyen üye bulunmuyor.
Robotlar:
  • Anthropic