Kernel yazılım ve donanımı birbirine bağlar
**İşletim sistemi çekirdeği**, kısaca **çekirdek** (**kernel**), işletim sistemindeki her şeyin üzerinde denetimi olan merkezi bileşenidir. Uygulamalar ve donanım seviyesindeki bilgi işlemleri arasında bir köprü görevi görür. Çekirdeğin görevleri sistemin kaynaklarını yönetmeyi de kapsamaktadır. Genellikle çekirdek, işletim sisteminin temel bir elemanı olarak, yazılımın fonksiyonunu yerine getirebilmesi için kontrol etmesi gereken kaynaklar için düşük seviye soyutlama katmanı sağlayabilir. İşletim sistemi görevleri, tasarımları ve uygulanmalarına göre farklı çekirdekler tarafından farklı şekillerde yapılır. Sistem açılırken belleğe yüklenir ve sistem kapatılıncaya kadar ana bellekte kalır.

Çekirdek, ayrıcalıklı bir işlem seviyesi olan Kernel Mode'da çalışır. Bu işlem seviyesinde çalışan kod, donanıma ve sistemin tamamına tam yetki ile müdahale edebilir. Uygulama programları ise, User Mode denilen daha kısıtlı bir işlem seviyesinde çalışır. User mode'da çalışan uygulamalar, çekirdeğin ya da başka uygulamaların bellek bölgelerine erişemezler, bazı kısıtlanmış işlemci komutlarını çalıştıramazlar ve donanım kaynaklarına doğrudan müdahale edemezler.

Monolitik çekirdek'te aygıt sürücülerde işletim sistemi çekirdeğinin bir parçası olarak Kernel mode'da çalışırlar. Mikrokernel çekirdek'te ise aygıt sürücüleri tıpkı uygulama programları gibi User mode'da çalışırlar ve çekirdek ile mesajlaşma yöntemi ile iletişim kurarlar. Bu yaklaşımın amacı modülerliği artırmaktır.

Linux
-----

Linux, UNIX benzeri bir çekirdek sunar. İlk başlarda 80386 IBM PC uyumlu bilgisayarlar için geliştirilmiştir. Şimdilerde ise Itanium, MIPS, SPARC, Motorola, PowerPC ve daha pek çok platformda çalışabilmektedir.

Bütün ticari UNIX'ler, SVR4 veya 4.4BSD UNIX temel alınarak geliştirilmiştir ve hepsi POSIX uyumludur. POSIX, çok iyi tanımlanmış bir programlama arayüzü sunar. Yazılımcı, üzerinde çalıştığı işletim sisteminin alt seviye özelliklerine bağlı kalmadan kod geliştirebilmekte ve bu kodları POSIX uyumlu başka işletim sistemlerine kolaylıkla taşıyabilmektedir.

Belleğe yüklenmiş Linux çekirdeğe, modüller vasıtasıyla dinamik olarak kod eklenebilir. Örneğin bir ethernet kartı sürücüsü, çalışan işletim sistemine modül ile tanıtabilir. Aynı şekilde kullanılmayan modüller dinamik olarak bellekten silinebilir. Bu modüller derlenmiş ancak bağlanmamış kod içermektedirler. Bu bağlanmamış obje dosyaları, User Mode programlarla karışmamaları için, .o değil .ko uzantısı ile oluşturulur. Windows NT aygıt sürücüleri derleme ve bağlama aşamalarından geçerek hazır halde dağıtılırken, Linux sistemlerde bağlama işlemi çalışma zamanında dinamik olarak yapılır.

Ayrıca bakınız
--------------

* Linux çekirdeği

Kaynakça
--------

1. ↑  "Kernel". *Linfo*. Bellevue Linux Users Group. 8 Aralık 2006 tarihinde kaynağından arşivlendi. Erişim tarihi: 15 Eylül 2016.
2. ↑  Randal E. Bryant; David R. O’Hallaron (2016). *Computer Systems: A Programmer's Perspective* (PDF) (Third bas.). Pearson. s. 17. ISBN 978-0134092669. 31 Mart 2020 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 30 Mart 2020.
3. ↑  Roch 2004

Dış bağlantılar
---------------

* MIT Exokernel İşletim Sistemi
* Detaylı kernel karşılaştırması14 Eylül 2008 tarihinde Wayback Machine sitesinde arşivlendi.

| * g
* t
* d
İşletim sistemi |
| --- |
| Genel | 
* Savunucu
* Karşılaştırma
* Adli Bilişim
* Tarihçe
* Geliştirme
* Liste
* Kronoloji
* Kullanım oranları

 |
| Çekirdek | 

|  |  |
| --- | --- |
| Mimari | 
* Ekzoçekirdek
* Hibrit çekirdek
* Mikrokernel
* Monolitik
* vkernel
* Rump kernel
* Unikernel

 |
| Bileşenler | 
* Aygıt sürücüsü
* Yüklenebilir çekirdek modülü
* Mikrokernel
* Kullanıcı uzayı

 |

 |
| İşlem yönetimi | 

|  |  |
| --- | --- |
| Kavramlar | 
* İçerik Değiştirme
* Kesme
* IPC
* İşlem
* İşlem kontrol bloğu
* RTOS
* İş parçacığı
* Zaman paylaşımı

 |
| Zamanlama  algoritmaları | 
* Çoklu işleme
* Sabit öncelikli kesintili zamanlama
* Çok düzeyli geri besleme kuyruğu
* Kesintili
* Round-robin
* En kısa iş sonra

 |

 |
| Bellek yönetimi ve kaynak koruma | 
* Veri yolu hatası
* Genel koruma hatası
* Bellek koruma
* Sayfalama
* Güvenlik halkaları
* Segmentasyon hatası
* Sanal bellek

 |
| Depolama erişimi ve dosya sistemi | 
* Önyükleyici
* Defragmentasyon
* Aygıt dosyası
* Dosya özniteliği
* Düğüm
* Günlük
* Bölümlendirme
* Sanal dosya sistemi
* Sanal teyp kütüphanesi

 |
| Liste | 
* AmigaOS
* Android
* BeOS
* BSD
* DOS
* GNU Hurd
* iOS
* Linux
* Mac OS
* MorphOS
* OpenVMS
* OS/2
* OSv
* QNX
* ReactOS
* RISC OS
* Solaris
* GzIS
* TPF
* UNIX
* VM/CMS
* Windows
* z/OS

 |
| Çeşitli kavramlar | 
* API
* Bilgisayar ağı
* HAL
* Canlı CD/DVD
* Canlı USB
* İS kabuğu
	+ CLI
	+ GUI
	+ 3D GUI
	+ NUI
	+ TUI
	+ VUI
	+ ZUI
* PXE

 |

|  |  |
| --- | --- |
| Otorite kontrolü Bunu Vikiveri'de düzenleyin | 
* GND: 4338679-9
* NKC: ph667013

 |