کرنل لینوکس ماژولار است، به این صورت که عملکردهای اصلی در فایل کرنل هستند، در حالی که درایورهای اختصاری به صورت ماژولهای جداگانه در مسیر /lib/modules ساخته میشوند.
برای مثال، کرنل اوبونتو نسخه ۶۴ بیتی تنها ۵ مگابایت اندازه دارد، در حالی که ۳۷۰۰ ماژول دیگر هستند که میتوانند بیشتر از ۱۰۰ مگابایت حجم داشته باشند. با توجه به این که تنها بخشی از این ماژولها برای هر دستگاه مورد نیاز است، بنابراین استفاده از همه آنها در کنار کرنل اصلی اشتباه محض است.
به جای اینکه کرنل بخواهد از همه ماژولهای خود استفاده کند، با شناسایی سختافزار میتواند در استفاده یا لود کردن ماژولهای مرتبط تنها بخشهای مورد نیاز را به درون حافظه کرنل وارد کند. در این شرایط کرنل همچنان میتواند با دسترسی به هزاران فایل دیگر از طریق ماژولها یکپارچه باقی بماند. این ویژگی زمانی اهمیت زیادی پیدا میکند که سیستم میتواند وابسته به تغییرات سختافزاری عکس العمل مناسب و صحیح را نشان دهد.
برای مثال حافظه USB خود را به سیستم متصل کنید تا ماژول Usb-Storage در کنار فایل سیستم مورد نیاز برای مونت کردن آن لود شود. به همین شکل، دانگل 3G را به دستگاه وصل کنید تا درایورهای مودم لود شوند. به همین خاطر است که به ندرت نصب درایورهای جدید در زمان اضافه شدن سختافزار نیاز میشود. در واقع همه ماژولها منتظر شما هستند تا سختافزار یا لوازم جانبی دیگری را خریداری کنید تا زمینه را برای استفاده از آن فراهم کنند.
کامپیوترهایی مانند سرورها که با سختافزارهایی مخصوص و تغییر ناپذیر کار میکنند، معمولا از هستهای با تمام درایورهای مورد نیاز برخوردارند و لود کردن ماژولهای مختلف در آنها غیرفعال است. این مورد باعث میشود که مقدار کمی به امنیت دستگاه اضافه شود.
اگر میخواهید کرنل خود را کامپایل کنید، یک نکته لازم و خوب، استفاده از درایورهایی است که سختافزار دائما قرار است از آن استفاده کند. برای مثال میتوان به رابط شبکه و فایل سیستم دیسک سخت و ماژولهایی برای موارد دیگر اشاره کرد که در صورت همراه با کرنل و استفاده همیشگی میتوانند به امنیت دستگاه نیز کمک کنند.
WWW.bozorgmehr.co