Skip to main content

Kernel (nüvə) haqqında

Salam dostlar,

Əminəm ki, bir çoxunuz "kernel" haqqında məlumatlısınız, lakin bu məqaləmdə bir az dərin məlumatlara vararaq sizə "kernel" və onun növləri haqqında bəhs etmək istərdim. Beləliklə, "kernel" (nüvə) nədir?

"Kernel" əməliyyat sisteminin çox vacib və kritik komponentlərindən biridir ki, proseslərin və "system calls"-un köməyi (iştirakı) sayəsində, cihaz (hardware) ilə proqram təminatı (software) arasında körpü rolunu oynayaraq, onlar arasında əlaqənin (ünsiyyətin) təmin edilməsini həyata keçirir. Ümumi olaraq qeyd edim ki, hər bir əməliyyat sisteminin (Linux, Windows və s.) öz "kernel"-i mövcuddur. Bəzən "kernel"-i əməliyyat sistemi də adlandırırlar, lakin bu doğru yanaşma deyil. Çünki əməliyyat sistemi cihaz (hardware) ilə istifadəçi (user), "kernel" isə cihaz ilə proqram təminatı arasında əlaqəni təmin edir. Yəni "kernel" əməliyyat sisteminin özü deyil, əməliyyat sisteminin vacib bir komponenti (core) sayılır. Əməliyyat sistemləri bir-birindən fərqli kimi, həmin əməliyyat sistemlərində yer alan "kernel" də fərqli ola bilir ki, nümunə olaraq "windows" və "linux" əməliyyat sistemlərinin komponenti sayılan "kernel"-i bəzi fərqliliklərinə görə müqayisə edə bilərik. Beləliklə:

  • "windows kernel" kommersiya tiplidir və "Microsoft" şirkətinə məxsusdur, "linux kernel" isə açıq mənbə (open source) kodludur və pulsuzdur (Linus Torvalds tərəfindən yaradılmlışdır);
  • "windows"-da "kernel" hibrid (Windows NT), "linux"-da isə "kernel" monolit arxitekturarlıdır;
  • "windows kernel"-də müxtəlif cihazlar (device) üçün müxtəlif mexanizmlər mövcud olduğu halda, "linux kernel"-də hər bir cihaz özünəməxsus bir fayldan ibarətdir;
  • "windows kernel"-də fayl icazə və idarəsi üçün "ACL"-dən, "linux kernel"-də isə ənənəvi "Unix" icazələri və "POSIX ACL"-dən istifadə olunur;
  • "windows"-da "GUI Stack" "kernel"-də, "linux"-da isə istifadəçi səviyyəsində (user space) yer alır;
  • "windows"-da konfiqurasiyalar reyestrdə saxlanıldığı halda, "linux"-da isə konfiqurasiyalar fayllarda saxlanılır və s. ;

No alt text provided for this image
No alt text provided for this image

"Kernel"-in növləri:


  • "Monolithic Kernel" - ona qoşulan bütün cihazları dəstəkləyir, ən sadə və ən çox yayılmış nüvə (kernel) növüdür. Burada istifadəçi və nüvə xidmətləri (services) eyni yaddaş sahəsində (memory) həyata keçirilir ki, bu zaman nüvənin həcminin artması əməliyyat sisteminin də həcmini artırmış olur. Bu nüvənin əsas üstünlüyü ondan ibarətdir ki, istifadəçi (user address space) və nüvə (kernel address space) üçün ayrıca və fərqli yaddaş sahəsi yoxdur və bu da proseslərin icrasının daha sürətli olmasını təmin edir;


  • "Microkernel" - yeni "kernel" növüdür və monolit "kernel"-dən fərqli olaraq burada istifadəçi və nüvə xidmətləri (services) eyni yaddaş sahəsində (memory) deyil, fərqli yaddaş sahələrində (user address space) və nüvə (kernel address space) həyata keçirilir;


  • "Hybrid Kernel" - monolit və mikro "kernel"-lərin birləşməsini təmin edir, mikro "kernel"-lərdən daha çox xidmətləri (service) həyata keçirsə də, lakin xidmətləri monolit "kernel"-dən daha azdır. Beləliklə, hibrid "kernel" sürəti monolit "kernel"-dən, modulluğu isə mikro "kernel"-lərdən götürür.


  • "Nano Kernel" - əsasən daxili sistemlərdə (embeeded controllers) və ya məhdud sayda resursları olan cihazlarda istifadə olunan və yalnız bir neçə min kod sətirindən ibarət olan ən kiçik nüvə növüdür ki, avadanlığın imtiyazlı (privileged) rejimində icra olunan kod minimal sayılır;


  • "Exo Kernel" - elə də məhşu olmasa da, lakin mikro "kernel"-in başqa bir variantı kimi düşünmək olar və mobil cihazlarda istifadə məqsədilə yaradılmış, fərdiləşdirməni asanlaşdırmaq üçün resurs mühafizəsii (protection) idarəetmədən (management) ayırmaq üçün nəzərdə tutulmuşdur;


No alt text provided for this image

"Kernel Mode" və "User Mode"

No alt text provided for this image

"Kernel"-in vəzifələri:


  • "Memory Management" - yaddaş həcminin istifadə olunduğunu müəyyən edir;
  • "Process Management" - proseslərin mərkəzi nüvədən (CPU) istifadəsinin həcmi və vaxtını müəyyən edir;
  • "Device Drivers" - cihaz (avadanlıq) və proseslər arasında vasitəçi (tərçüməçi) rolunu həyata keçirir;
  • "System calls and security" - proseslərdən sorğuların toplanmasını həyata keçirir;


Dostlar,

Güman edirəm ki, məqaləm maariflənməniz istiqamətində sizin üçün faydalı olar.


Təşəkkür edirəm

Hörmətlə,

Müəllif

Araz Əhmədov

Comments

Popular posts from this blog

Fayl Bərpa Alqoritmləri

  Salam dostlar, Bu yazımda sizə fayl bərpa proqramlarının (Recuva, Wondershare, EaseUS Data Recovery və s.) faylları bərpa etməsi haqqında bəhs etmək istərdim ki, məhz bu proqramlar silinmiş məlumatların (şəkil, video, sənəd və s.) geri qaytarılması üçün xüsusi alqoritmlərdən istifadə edir. Bu prosesin texniki tərəflərini izah etmək üçün əvvəlcə bir neçə əsas anlayışı bilmək lazımdır: Silinmiş faylların vəziyyəti Əksər fayl sistemlərində (məsələn, NTFS, FAT32, exFAT) fayl silindikdə, həmin fayl fiziki olaraq diskin üzərindən silinmir ki, bu zaman: Fayl sistemində faylın olduğu yer boş olaraq işarələnir və həmin sahə üzərində yeni məlumat yazıla bilməsi üçün icazə verilir; Faylın "metadata"-ları (fayl adı, ölçüsü, yaradılma tarixi və s.) xüsusi strukturlarda saxlanılır (məsələn, NTFS-də MFT / Master File Table). Bu səbəbdən, fayl silindikdən dərhal sonra onu bərpa etmək mümkündür, çünki həmin məlumat fiziki olaraq diskin üzərində qalır. Ancaq yeni məlumat həmin yerə yazıldıqd...

How To Install WordPress On Rocky Linux 9

WordPress is widely recognized as the preferred platform for building websites and blogs due to its ease of use and wide range of customization features. Suppose you’re considering installing WordPress on Rocky Linux, an open-source operating system known for its reliability. In that case, you’ll find the process to be quite straightforward when coupled with the LAMP stack – Linux, Apache, MySQL, and PHP. In the following article, we will guide you through each step of setting up WordPress on Rocky Linux using LAMP, allowing you to get your website or blog up and running smoothly in no time. So, let’s dive into the process! Install WordPress On Rocky Linux 9 Step 1: Update Your System in Rocky Linux Step 2: Installation process of LAMP Step 3: Install WordPress in Rocky Linux 9 Step 4: Configuration of Database Step 5: Configuration of WordPress Step 6: Configuration of Firewall settings Step 7: Log in to WordPress Step 1: Update Your System in Rocky Linux Before installing any new sof...

Fayl şifrələmə vasitələri (Linux)

Salam dostlar, Bu məqaləmdə "linux"-da istifadə olunan bəzi fayl şifrələmə vasitələri (file encryption tools) haqqında bəhs edəcəm. Beləliklə, fayl şifrələməsi nədir və "linux"-da hansı fayl şifrələmə vasitələri mövcuddur? Fayl şifrələməsi mübadilə edilən məlumatların oxunmaz vəziyyətə çevrilməsi prosesidir ki, faylların şifrələnməsi təhlükəsizlik baxımından çox vacibdir. Beləliklə, "linux"-da faylların şifrələməsini həyata keçirən bəzi vasitələr (tools) mövcuddur: "GnuPG (GPG)" "GnuPG" şifrələmə və rəqəmsal imza məqsədləri üçün geniş istifadə olunan pulsuz və açıq mənbəli proqramdır ki, faylları və e-poçtları şifrələmək, eləcə də deşifrə etmək üçün "OpenPGP" standartından istifadə edir. Bu şifrələmə platformasınds əvvəlcə "public key" və "private key" yaradılmalıdır ki, bu zaman "public key" şifrələmə (encrypt), "private key" isə şifrənin açılması (decrypt) üçü...