Salar Nosrati Ershad بدون دیدگاه

پیشگفتار:

سیستم های عامل امروزه بسیار گسترده تر و وسیع تر از قبل شده اند. و تنوع میان آن ها روز به روز بیشتر و حساس تر میشود. در این مقاله سعی داریم با برسی دو شاخه اصلی طراحی هسته سیستم عامل دید شما را نسبت به این موضوع گسترش دهیم.

هسته یا kernel چیست؟

هسته سیستم های عامل در واقع اجرا کننده فرمان ها و فراخوان های سیستمی بر روی سخت افزار است. فرمان های مانند خوانندن٬ نوشتن٬ انجام عملیات های محاسباتی و …

هسته در سرعت عملیات های سیستمی نقش اساسی دارد و یکی از اجزای اصلی سیستم عامل محسوب میشود.

ریز هسته یا میکروکرنل چیست؟

میکروکرنل در اصطلاح کامپیوتری به هسته هایی میگویند که بسیار کم حجم و ساده هستند و از توابع سیستمی چندانی بهره نمیبرند. در عوض این گونه از هسته پیچیدگی هسته را بسیار کم میکند اما در عوض باعث ایجاد پیچیدگی بسیار در شبکه ارتباطی این اجزای کوچک میشود.

اشکال زدایی از این نوع هسته بسیار راحت تر است و نسبت به دیگر کرنل ها برتری دارد. اما به دلیل نبود کرنل های کامل میکروکرنل کاربر های کم تری نسبت به دیگران دارند

از سیستم عامل هایی که از معماری میکروکرنل در هسته خود بهره میبرند میتوان به مینیکس٬ ٬gnu mach ٬gnu hurd اشاره کرد که سرانه مصرف پایینی دارند

برای امتحان میکروکرنل میتوانید از debian gnu hurd استفاده کنید ( کرنل gnu hurd تنها از معماری پردازنده i386 پشتیبانی میکند)

هسته یکپارچه یا مونولیتیک چیست؟

این نوع از هسته ها بر خلاف ریزهسته از اتصال برنامه های پیچیده در شبکه های ساده پدید آمده اند. گرچه معماری میکروکرنل بودن بهتر است اما بهترین کرنل های جهان به شکل یکپارچه شکل یافته اند ( در کتاب فقط برای تفریح : لینوس توروالدز ٬ به دلیل انتخاب هسته یکپارچه میپردازد که دلیل آن پیچیدگی شبکه های میکروکرنل و تنبلی تروالدز است).

اشکال زدایی در این نوع هسته زحمت بیشتر دارد اما سیستم عامل هایی که از هسته یکپارچه استفاده میکنند دارای جامعه ی کاربری بیشتری نسبت به دیگران دارند و این باعث سریع تر شدن اجرا پروژه ها میشود.

از سیستم عامل هایی که از هسته یکپارچه بهره میبرند میتوان به گروه سیستم های عامل داس٬ لینوکس٬ گروه سیستم های عامل BSD و سولاریس اشاره کرد.

برای امتحان این سیستم های عامل میتوانید از FreeBSD , Free-Dos و Debian Gnu/linux استفاده کنید.

لازم به ذکر است که دبیان با کرنل فری بی اس دی (kFreeBSD ) نیز توسعه می یافت که از دبیان ۶ به بعد این عمر متوقف شد.

 

هسته ترکیبی یا هایبرید چیست؟

این دسته از هسته ها به شکل ترکیبی از هر دو معماری میکروکرنل و مونولیتیک استفاده میکنند. این هسته ها معمولا از بی هوا نوشتن هسته بدون برنامه قبلی به وجود می آیند و باعث ناپایداری در سیستم٬ اشکال زدایی بسیار پیچیده و کند شدن سیستم می شوند.

جامعه کاربری سیستم عامل هایی که از این دسته از هسته ها استفاده میکنند بسیار پایین بوده و سیستم عامل های چندانی هم در این لیست موجود نیست.

از دسته سیستم عامل هایی که با هسته های ترکیبی کار میکنند میتوان Microsoft Windows NT را نام برد که بسیار قدیمی است و دیگر پشتیبانی نمی شود.

امتحان کردن این دسته به کابران توصیه نمی شود و با مرور زمان این سیستم عامل ها خود به خود از بین می روند.

کدام یک بهتر است؟

از لحاظ معماری سیستم عامل قطعا میکروکرنل ها برنده هستند اما به دلیل عدم وجود یک میکروکرنل کامل و استیبل برای نیاز های کاربران٬ ناچار به استفاده از کرنل های مونولیتیک هستیم

بزرگ ترین کرنل جهان کرنل لینوکس هست که به شکل مونولیتیک نوشته شده و قابلیت های بسیار فراوانی دارد.

چرا لینوکس؟

  1. اوپن سورس بودن: هر کسی میتواند در کرنل لینوکس دستکاری کند و یا آن را برای خود تغیر دهد٬ همگان میتوانند کد های آن را مشاهده کنند و از لحاظ امنیت باعث میشود کاربر اتمینان کند که هیچ ابزار جاسوسی در آن وجود ندارد.
  2. توزیع های فراوان: توزیع های زیادی از هسته لینوکس بهره میگیرند که باعث میشود شما حق انتخواب زیادی برای مصارف گوناگوم داشته باشید و یا حتی خودتان یکی از این توزیع ها را  بسازید( برای راهنمای این کار میتوانید به کتاب linux from scratch مراجعه کنید).
  3. جامعه ی کاربری بالا: طبق آمار حدود ۱۵۰۰۰ برنامه نویس تا به حال روی کد کرنل کار کرده اند و همین امسال هر روز ۱۰هزار خط کد به کرنل اضافه شده، ۲۰۰۰ خط تغییر کرده و ۲۵۰۰ خط ازش حذف شده.
  4. آزاد بودن: لینوکس نیازی به کرک کردن یا خریدن برای استفاده از آن ندارد البته بدیهی است که برخی از توزیع ها برای مصارف تجاری مورد استفاده قرار گیرند.
  5. آزادی در استفاده: ویندوز در مقابل لینوکس مانند یک ماشین لباس شویی است که با زدن برخی دکمه حرکات خاصی را انجام میدهد اما شما در لینوکس آزادی زیادی برای استفاده از خلاقیت دارید.

 

سخن پایانی:

گرچه امروزه کرنل لینوکس بهترین انتخاب ماست اما می توان با اطمینان گفت که کرنلی خواهد بود که با معماری میکروکرنل بهتر از لینوکس ظاهر شود. همین طور باید بدانید  که هر ۵۰۰ تای برترین سوپر کامپیوتر های جهان از لینوکس استفاده میکنند. 🙂

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *