Startup Alternatives یا روش های جایگزین راه اندازی در لینوکس – Systemd

2

پیش از این در مقاله ” مراحل بوت در سیستم عامل لینوکس ” اطلاعات خلاصه ای را درباره روند سنتی و معمول مراحل بوت در سیستم عامل های بر پایه لینوکس ، مطرح کرده بودیم. در مقاله مذکور گفته شد که ایمیج initramfs filesystem حاوی برنامه ها و فایل های باینری است که همه اقدامات مورد نیاز برای مونت فایل سیستم های root را صورت می دهند. استفاده از دایرکتوری /sbin/init مشکلاتی را نیز در پی دارد. این فرآیند به صورت سریال صورت می پذیرد و در هر مرحله اسکریپت ها سرویس های خاصی را راه اندازی و Stop می کند. به همین دلیل بسیار وقت گیر است. بنابراین از سال ۲۰۱۱ شیوه جدیدی برای اولین بار در لینوکس Fedora مورد استفاده قرار گرفت. این روش جدید به system مشهور است. روش قدیمی که بر مبنای آن  چه که پیش تر گفته شد کار می کرد با نام روش Upstart  یا راه اندازی SysVinit شناخته می شد.

Startup Alternatives یا روش های جایگزین راه اندازی در لینوکس

مطابق آن چه که می دانیم در SysVinit همه فرآینده ها به صورت سریال صورت می پذیرند. به این معنا که تا کل پروسه ای به پایان نرسد ، پروسه جدیدی اجرا نمی شود. بنابراین فرآیند Startup در لینوکس نمی تواند از توانایی های بالقوه سایر هسته های پردازشی CPU به صورت هم زمان بهره ببرد. همچنین در مدل قدیمی SysVinit خاموش و روشن شدن دستگاه به عنوان فرآیندهایی نادر فرض شده بودند و جوامع آی تی در آن زمان مبنا را بر این گذاشته بودند که به دلیل عدم نیاز کاربران به خاموش و روشن کردن دستگاه به دفعات ، مهم نیست که فرآیند بوت چه قدر طول بکشد! بعد ها با ظهور دستگاه های موبایل ( که بیشتر آن ها بر پایه لینوکس هستند ) و سایر دستگاه های هوشمندی که از قدرت این سیستم عامل بهره می برند ( مانند اتومبیل های هوشمند )  معلوم شد که این مدت زمان از اهمیت زیادی برخوردار است و در نتیجه به فکر تغییر آن افتادند.

سیستم دی در لینوکس

همچنین برخی از متودهای جدید مانند استفاده از کانتینرها اهمیت بازه Load سیستم عامل را افزایش داد. در این زمان بود که سیستم عامل هایی که در زیر از آن ها نام می بریم شیوه قدیمی راه اندازی سیستم عامل به نام Upstart را با شیوه systemd جایگزین کردند.

  • فدورا در از سال ۲۰۱۱ به بعد
  • RHEL نسخه ۷ و لینوکس SUSE
  • لینوکس Ubuntu از نسخه ۰۴ به بعد

بعد از اینکه نسخه های بالا شروع به استفاده از systemd کردند ، همین موضوع باعث شد که به تدریج توزیع های دیگر لینوکس نیز به آن روی بیاورند.

در این شیوه فرآیندهای راه اندازی سیستم عامل به صورت موازی و خیلی سریع صورت می پذیرند و می توانند از تمام هسته های پردازشی بهره ببرند. در واقع به همین دلیل هم هست که در نسخه های به نسبت جدید ، دستوری به نام systemctl جهت راه اندازی سرویس های مختلف وجود دارد. اکنون شما می توانید با دستور systemctl enable یا systemctl disable سرویس مورد نظرتان را در زمان راه اندازی سیستم فرخوانی نمایید.

مطالب مرتبط
2 نظرات
  1. سامان می گوید

    این دوره لینوکس تون جالبه
    سایت خیلی خوبی دارید مخصوصا مجازی سازی تون بنظر من کامل ترین دوره بین همه سایت ها رو دارید تماام مجازی سازی ها رو اموزش دادید

    1. نوید داریا می گوید

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

ارسال یک پاسخ

آدرس ایمیل شما منتشر نخواهد شد.