Linux yadrosi (Kernel) va uning funksiyalari
Last updated
Last updated
Linux yadrosi (kernel) – bu Linux operatsion tizimining yuragi hisoblanadi. Bu yadro tizimning barcha komponentlari va apparat vositalari (hardware) o‘rtasida ko‘prik vazifasini bajaradi. Barcha jarayonlar va resurslar (xotira, protsessor, qurilmalar) ustidan nazoratni aynan kernel amalga oshiradi. Ushbu bo‘limda Linux yadrosining tuzilishi, asosiy funksiyalari va uning tizimdagi o‘rni haqida batafsil ma'lumot beriladi.
Kernel – bu operatsion tizimning markaziy qismi bo‘lib, u quyidagi vazifalarni bajaradi:
Apparatura va dasturlar o‘rtasidagi interfeysni ta’minlaydi.
Tizimning barcha resurslarini (protsessor, xotira, qurilmalar) boshqaradi.
Jarayonlar va foydalanuvchilar o‘rtasida xavfsiz va izchil muloqotni amalga oshiradi.
Linux yadrosi monolit yadrolar (monolithic kernel) oilasiga kiradi. Bu shuni anglatadiki, barcha asosiy xizmatlar, masalan, qurilma drayverlari, fayl tizimi boshqaruvi, tarmoq protokollari, bir xil yadro ichida ishlaydi. Ammo zamonaviy Linux yadrosi modulli tuzilishga ega bo‘lib, drayverlar va boshqa funksiyalarni dinamik ravishda ulash va ajratib olish imkonini beradi.
Linux yadrosi quyidagi asosiy qismlardan iborat:
Jarayonlarni boshqarish (Process Management)
Foydalanuvchi dasturlari (user space) va tizim resurslari o‘rtasidagi o‘zaro aloqani ta’minlaydi.
Bir vaqtning o‘zida ko‘p jarayonlarni bajarish (multitasking) imkoniyatini beradi.
Har bir jarayonga maxsus identifikator (PID) ajratiladi va jarayonlar navbati (scheduler) orqali boshqariladi.
Xotira boshqaruvi (Memory Management)
RAM (tezkor xotira) va virtual xotirani boshqaradi.
Kerakli jarayonlarga xotira resurslarini ajratadi va ularni optimallashtiradi.
Paging va swapping texnikalari yordamida xotiradan samarali foydalanishni ta’minlaydi.
Fayl tizimi boshqaruvi (File System Management)
Fayllarni saqlash va ularga kirishni boshqaradi.
Turli fayl tizimlarini qo‘llab-quvvatlaydi (Ext4, XFS, Btrfs, NTFS, FAT).
Fayllar va kataloglar bilan bog‘liq operatsiyalarni (o‘qish, yozish, o‘chirish) nazorat qiladi.
Qurilma boshqaruvi (Device Management)
Qurilma drayverlari orqali apparat vositalarini boshqaradi.
Har bir qurilma maxsus fayl ko‘rinishida (/dev
) tizimda aks etadi.
Qurilmalar bilan ishlash uchun tizim chaqiriqlari (system calls) orqali o‘zaro aloqa amalga oshiriladi.
Tarmoq boshqaruvi (Networking)
Tarmoq protokollari (TCP/IP, UDP) va interfeyslarini boshqaradi.
Serverlar va foydalanuvchi dasturlar uchun tarmoq ulanishlarini ta’minlaydi.
Tarmoq xavfsizligi va filtrlash uchun vositalar (iptables, nftables) mavjud.
Xavfsizlik va kirishni boshqarish (Security and Access Control)
Foydalanuvchilar va jarayonlar uchun xavfsizlik mexanizmlarini ta’minlaydi.
Fayl ruxsatlari (rwx
), ACL (Access Control Lists) va SELinux kabi xavfsizlik modullari orqali tizimni himoya qiladi.
Kripto xizmatlari (shifrlash va autentifikatsiya) kernel darajasida ishlaydi.
Linux yadrosi modullarni dinamik ravishda ulash va ajratib olish imkoniyatiga ega. Bu modullar qurilma drayverlari, fayl tizimlari qo‘llab-quvvatlovi, tarmoq protokollari va boshqa funksiyalarni o‘z ichiga oladi.
Asosiy modul buyruqlari:
lsmod – Faol yadro modullari ro‘yxatini ko‘rsatadi.
modprobe – Yadroga yangi modul ulaydi yoki mavjud modulni yangilaydi.
rmmod – Yadrodan modulni ajratib olish.
Modullarning dinamik boshqaruvi tizimga ortiqcha yuklamalarni kamaytiradi va moslashuvchanlikni oshiradi.
Tizim chaqiriqlari – bu dasturlar tomonidan yadro xizmatlariga murojaat qilish uchun ishlatiladigan interfeysdir. Linuxda quyidagi muhim tizim chaqiriqlari mavjud:
fork() – Yangi jarayon yaratadi.
exec() – Yangi dastur kodini jarayonga yuklaydi.
open(), read(), write(), close() – Fayllar bilan ishlash operatsiyalarini bajaradi.
socket() – Tarmoq ulanishini yaratadi.
Ushbu chaqiriqlar glibc
kutubxonasi orqali foydalanuvchi dasturlariga taqdim etiladi.
Linux yadrosi muntazam ravishda yangilanib boradi. Har bir yangi versiyada yangi funksiyalar, optimallashtirishlar va xavfsizlik yangilanishlari qo‘shiladi. Yadro versiyasi uch qismdan iborat bo‘ladi:
Major (asosiy) versiya: Katta o‘zgarishlar, yangi texnologiyalar.
Minor (kichik) versiya: Yangi funksiyalar va tuzatishlar.
Patch (zax) versiya: Xatoliklar va xavfsizlik muammolarini bartaraf etish.
Versiya raqamini uname
buyrug‘i orqali ko‘rish mumkin:
Kernel parametrlarini boshqarish uchun sysctl
vositasidan foydalaniladi. sysctl
orqali tizimning tarmoq sozlamalari, xavfsizlik parametrlari va boshqa resurslar nazorat qilinadi.
Misol uchun, TCP ulanishlarning maksimal sonini ko‘rish va sozlash:
Tizim sozlamalari /etc/sysctl.conf
faylida doimiy saqlanadi.
Bugungi kunda Linux yadrosi quyidagi texnologiyalar uchun asos bo‘lib xizmat qiladi:
Serverlar: Bulutli hisoblash (AWS, Google Cloud), ma'lumot markazlari.
Superkompyuterlar: Dunyoning eng kuchli kompyuterlarida Linux ishlaydi.
Mobil qurilmalar: Android tizimi Linux yadrosiga asoslangan.
IoT qurilmalari: Routerlar, aqlli qurilmalar Linux yadrosidan foydalanadi.
Linux yadrosi – bu tizimning barcha asosiy funksiyalarini boshqaradigan, yuqori darajada moslashuvchan va barqaror komponentdir. Kernelning modulli tuzilishi va dinamik imkoniyatlari uni ko‘p turdagi qurilma va dasturiy muhitlarga mos qiladi. Yadroning muntazam ravishda rivojlanib borishi tufayli Linux zamonaviy texnologiyalar olamida yetakchi operatsion tizim sifatida o‘z o‘rnini saqlab kelmoqda.