Hibrit Kernel vs Monolotik Kernel vs Mikro Kernel

Monolitik Kernel, Mikrokernel gibi sadece işlemci, hafıza gibi bileşenleri yönetmez. Bunlarla beraber aygıt sürücüleri, dosya sistemi yönetimi gibi konular da monolitik kernelin yönetimi kapsamındadır. Monolitik Kernel, tek bir dosyadan oluşur ve tüm gereksinimleri bu dosyadadır. Dolayısıyla modüler değildir. Bu da yapılacak işlemlerde süreç sırası dezavantajını ortadan kaldırır.

Monolitik Kernel’de Mikro Kernel’in aksine çok görevlilikten ve daha etkin donanım erişiminden bahsedebiliriz. Bir programdan bilgi almak veya başka bir işlemi gerçekleştirmek gerektiğinde süreç sırasında bekleme durumu yoktur. Bunun gibi durumlarda direkt gerçekleştirme veya erişim söz konusudur. Bu da performans konu olduğunda olumlu sonuç doğurur.

Monolitik Kernel’de birçok işlem yönetici modunda ve tek bir süreçmiş gibi çalıştığından bir hata meydana geldiğinde tüm sistem bundan etkilenir.

Artıları
  • Programlar için donanıma direkt erişim vardır.
  • Süreçlerin birbirleriyle olan iletişimi ve geçişi daha kolaydır.
  • ışlemler daha hızlı gerçekleştirilir. Çünkü bir işlemin gerçekleştirilmesi için kuyrukta beklemesi gerekmez.
Eksileri
  • Büyük alan gereksinimi vardır.
  • Yüksek hafızaya ihtiyaç duyar.
  • Herşey yönetici modunda çalışır.
Hybrid Kernel, diğer kernel tiplerindeki gibi tek bir modda çalışmaz. Yani duruma göre kullanıcı modu ve yönetici modu çalışma durumuna sahiptir. Genellikle donanım sürücüleri ve dosya sistemi gibi bileşenlerde kullanıcı modunda çalışır. IPC ve sunucu çağrıları gibi bileşenlerde ise yönetici modunda çalışır.

Artıları
  • Hem kullanıcı modunda hem de yönetici modunda çalışması seçilebilir.
  • Monolitik Kernel’e göre daha az yer gereksinimi vardır.
  • Diğer modellere göre her iki durumu da sağladığı için esnektir.
Eksileri
  • Diğer iki kernelin de hatalarını barındırır.
  • Aygıt sürücülerini kullanıcı modunda çalıştırır.
Kaynak: Çekirdek Nedir? Ne yapar?
 
Selamın aleyküm. Hibrit kernel ile monolotik kernel ile mikro kernelin farkları nelerdir?
Hibrit kernel: macOS'un Darwin'indeki "xnu" gibi mikro çekirdek ve monolitik çekirdeğin vitaminlerini, faydalarını toplamaya çalışan türdür. "xnu" çekirdeği bunu iki tane çekirdekten parçalar alarak yapıyor:
1612820429928.png

Görüldüğü gibi BSD'den de parça var, Mach'ten de parça var. Birisi monolitik (BSD bir UNIX implementasyonu olduğu için, e haliyle UNIX te monolitik olduğu için...), birisi de mikro çekirdek (Mach çekirdeği).

Windows NT çekirdeği de hibrittir. Hem mikro çekirdek yapısını, hem de monolitik çekirdek yapısını özümser.

Monolitik çekirdek: Sürücüleri vs. de içinde bulunduran tam teşekküllü bir çekirdektir ve tek dosya halindedir. UNIX implementasyonlarının neredeyse hepsi bu kategori içerisindedir.

Mikro çekirdek: Minimal bir çekirdek deneyimi sunar. Bu çekirdeğin üzerine sürücüler vs. bindirilir. Modülerlik çok fazladır, çünkü neredeyse her şey o çekirdeğe işletim sistemi yazan kişi tarafından implemente edilmek zorundadır. Dosya sistemi bile.
 
Yukarıda yeterince bilgi verilmiş zaten.
Hibrit kernele aittir: XNU(Darwin), DragonFly BSD, NetWare, Mach, OS/2, ReactOS, Windows NT.
Monolitik kernel: Linux, NetBSD, FreeBSD, OpenBSD, SunOS, Solaris.
Mikro kernel: GNU/Hurd, GNU/Mach, L4, SPARTAN.

Bu üç tür dışında nanokernel, Rump kernel, Unikernel ve exokernel de vardır.



Şöyle gösterilebilir kernelin farklıarı:
1. Monolitik:
1612846393985.png


2. Monolitik kernel:
1612846428140.png



Bu da 3'nün karşılaştırılması:

1612847142074.png
 

Geri
Yukarı