قلب هر توزیع، میشه کرنل لینوکس. توی پستی به نحوه کامپایل کرنل لینوکس تا حدودی اشاره کرده بودم. از اون موقع تا حالا تجربه خودم خیلی زیاد شده و اینکه تونستم به کرنلی برسم که حتی یک پیغام خطا تولید نمیکنه. اما اگه بهترین تنظیمات رو هم انجام بدید، امتیاز سیستم از حدی فراتر نمیره. در اینجا یعنی به سقف و به بهترین کارایی که یک کرنل میتونه داشته باشه، رسیدین(بالاترین راندمان)! و تنها کاری که میشه از این به بعد کرد، انتظار برای نسخه جدید کرنل هست و دعا برای اینکه امتیاز سیستم بالاتر بره.
اما میتوان پا را از این فراتر گذاشت و آن چیزی جز روغن کاری کرنل و به اصطلاح فنی پچ کردن کرنل نیست. توزیعهای اصلی مث سوزه یا فدورا و اوبونتو از طریق پچ کردن تغییرات دلخواه و مطلوب خودشون رو بر روی کرنل اعمال میکنند.
یکی از بهترین پچهایی که به صورت تصادفی با ان اشنا شدم، پچی موسوم به BFS هست که نباید آن را با فایل سیستم bfs اشتباه بگیرید! این پچ مناسب کاربران خانگی، یعنی کسانی که سیستم دسکتاب دارند، میباشد. تا سقف ۱۶ هسته، این پچ جادو میکند. یعنی اگر شما ۱۶ هسته داشته باشید و بخواهید استفاده شخصی از سیستم داشته باشید، این پچ یکی از بهترینهای موجود در بازار است:) این اسم را سازنده آن آقای کولیواس، برای آن انتخاب کرده و اعلام کرده مناسب ماشینهای کوچک میباشد و نباید توقع داشته باشید بر روی ماشینهای سرور خوب جواب دهد. BFS دقیقا در مقابل CFS کرنل قرار میگیرد و به جای آن مینشیند. cfs یعنی (Completely Fair Scheduler) تقسیم کار به صورت عادلانه در یک ماشین.
برای یک دسکتاب به دلیل تک کاربره بودن، باید حداکثر قدرت پردازشگر به کاری اختصاص داده شود، که کاربر قصد انجام آن را دارد. دقیقا برعکس یک ماشین مخصوص سرور که باید برای انجام هر کار بار کمتری به پردازشگر اعمال شود تا بتوان تعداد بیشتری از درخواستها را مدیریت کرد. BFS به طعنه مخفف تقسیم کاری است که توسط یک مغز نابغه صورت میگیرد (Brain Fuck Scheduler). و اما مقایسه یک کرنل عادی (CFS) با کرنل پچ شده (BFS) میتونه جالب باشه.
برنامهای که من برای تست کارایی ازش استفاده میکنم گیگ بنچ هست. خوبی این برنامه اینه که در هر سه سیستم عامل میشه ازش استفاده کرد و دیگه اینکه حجم کمی داره و از اون مهمتر اینکه میشه امتیاز سیستم رو ثبت کرد.
نکتهی مهم اینکه بنچمارک سایت فرونیکس، با پچ نسخه ۲۱۱ بر روی کرنل ۲.۶.۳۱ انجام شده. در حالی که من از پچ جدیدتر (۳۱۳) استفاده کردهام و آن را بر روی کرنل ۲.۶.۳۲ اعمال کردهام. اگر به سیر صعودی امتیازها نگاه کنید می بینید که من با کرنل عادی توانستهام به امتیاز ۵۶۷۸ دست پیدا کنم و این بالاترین امتیازی بوده که توانستهام به آن دست پیدا کنم و به نوعی حد نهایی و خانه پر آن با کرنل عادی بوده است. اما با اعمال پچ BFS ناگهان ۱۵۰ امتیاز جهش داشتهام که این نشان از قدرت و توان بالای این پچ هست!
اما خبر خیلی مسرت بار اینکه سازنده این پچ آقای کان کولیواس مجددا حالی به ما دادهاند و نسخه جدید این پچ را (۳۱۵) برای کرنل ۲.۶.۳۳ که آن هم جدیدا بیرون آمده، منتشر کردهاند! بماند که ۱۲ پچ رنگارنگ دیگر نیز توسط آقای خوش قلب، برای روغن کاری کرنل منتشر شده است!
و اما نحوه اعمال پچ بر روی کرنل که کار خیلی راحتیه. بعد اینکه سورس کرنل رو گرفتید، و اون رو به نحو مطلوب کانفیگ کردید. در حالی که داخل دایرکتوری سورس کرنل هستید با دستور wget پچ BFS رو از اینجا (۲٫۶٫۳۳-sched-bfs-315.patch) دانلود میکنید و سپس با دستور زیر پچ رو اعمال میکنید و بعد هم به صورت معمول کرنل رو کامپایل میکنید.
patch < 2.6.33-sched-bfs-315.patch -p1
دیدگاهتان را بنویسید