Linux

linux & IT …

قلب توزیعتون رو روغن کاری کنید


قلب هر توزیع، میشه کرنل لینوکس. توی پستی به نحوه کامپایل کرنل لینوکس تا حدودی اشاره کرده بودم. از اون موقع تا حالا تجربه خودم خیلی زیاد شده و اینکه تونستم به کرنلی برسم که حتی یک پیغام خطا تولید نمی‌کنه. اما  اگه بهترین تنظیمات رو هم انجام بدید، امتیاز سیستم از حدی فراتر نمی‌ره. در اینجا یعنی به سقف و به بهترین کارایی که یک کرنل می‌تونه داشته باشه، رسیدین(بالاترین راندمان)! و تنها کاری که می‌شه از این به بعد کرد، انتظار برای نسخه جدید کرنل هست و دعا برای اینکه امتیاز سیستم بالاتر بره.

اما می‌توان پا را از این فراتر گذاشت و آن چیزی جز روغن کاری کرنل و به اصطلاح فنی پچ کردن کرنل نیست. توزیع‌های اصلی مث سوزه یا فدورا و اوبونتو از طریق پچ کردن تغییرات دلخواه و مطلوب خودشون رو بر روی کرنل اعمال می‌کنند.

یکی از بهترین پچ‌هایی که به صورت تصادفی با ان اشنا شدم، پچی موسوم به BFS هست که نباید آن را با فایل سیستم bfs اشتباه بگیرید! این پچ مناسب کاربران خانگی، یعنی کسانی که سیستم دسکتاب دارند، می‌باشد. تا سقف ۱۶ هسته، این پچ جادو می‌کند. یعنی اگر شما ۱۶ هسته داشته باشید و بخواهید استفاده شخصی از سیستم داشته باشید، این پچ یکی از بهترین‌های موجود در بازار است:)‌ این اسم را سازنده آن آقای کولیواس، برای آن انتخاب کرده و اعلام کرده مناسب ماشین‌های کوچک می‌باشد و نباید توقع داشته باشید بر روی ماشین‌های سرور خوب جواب دهد. BFS دقیقا در مقابل CFS  کرنل قرار می‌گیرد و به جای آن می‌نشیند. cfs یعنی (Completely Fair Scheduler)  تقسیم کار به صورت عادلانه در یک ماشین.

برای یک دسکتاب به دلیل تک کاربره بودن، باید حداکثر قدرت پردازشگر به کاری اختصاص داده شود، که کاربر قصد انجام آن را دارد. دقیقا برعکس یک ماشین مخصوص سرور که باید برای انجام هر کار بار کمتری به پردازشگر اعمال شود تا بتوان تعداد بیشتری از درخواست‌ها را مدیریت کرد. BFS  به طعنه  مخفف تقسیم کاری است که توسط یک مغز نابغه صورت می‌گیرد (Brain Fuck Scheduler). و اما مقایسه یک کرنل عادی (CFS)‌ با کرنل پچ شده (BFS) می‌تونه جالب باشه.

در اجرای بازی هر دو کرنل برابرند

کامپایل سریعتر با پچ

در سرعت فشرده سازی یک فایل، پچ راندمان کمتری رو داره

عملکرد بهتر پچ در تغییر اندازه تصویر

عملکرد فوق العاده در زمان ارائه یک صفحه وب ثابت از طریق آپاچی

در زمان نوشتن اطلاعات بر روی هارد این پچ امتیاز پایینتری رو می‌گیره

در زمان خواندن از روی هارد عملکرد پایینتری از خودش نشون می‌ده

بهبود پنج درصدی با BFS

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

نکته‌ی مهم اینکه بنچمارک سایت فرونیکس، با پچ نسخه ۲۱۱  بر روی کرنل  ۲.۶.۳۱ انجام شده. در حالی که من از پچ جدیدتر  (۳۱۳) استفاده کرده‌ام و آن را بر روی کرنل ۲.۶.۳۲ اعمال کرده‌ام. اگر به سیر صعودی امتیازها نگاه کنید می بینید که من با کرنل عادی توانسته‌ام به امتیاز ۵۶۷۸ دست پیدا کنم و این بالاترین امتیازی بوده که توانسته‌ام به آن دست پیدا کنم و به نوعی حد نهایی و خانه پر آن با کرنل عادی  بوده است. اما با اعمال پچ BFS ناگهان ۱۵۰ امتیاز جهش داشته‌ام که این نشان از قدرت و توان بالای این پچ هست!

اما خبر خیلی مسرت بار اینکه سازنده این پچ آقای کان کولیواس مجددا حالی به ما داده‌اند و نسخه جدید این پچ را (۳۱۵) برای کرنل ۲.۶.۳۳ که آن هم جدیدا بیرون آمده، منتشر کرده‌اند! بماند که ۱۲ پچ رنگارنگ دیگر نیز توسط آقای خوش قلب، برای روغن کاری کرنل منتشر شده است!

و اما نحوه اعمال پچ بر روی کرنل که کار خیلی راحتیه. بعد اینکه سورس کرنل رو گرفتید، و اون رو به نحو مطلوب کانفیگ کردید. در حالی که داخل دایرکتوری سورس کرنل هستید با دستور wget پچ BFS رو از اینجا (2.6.33-sched-bfs-315.patch)  دانلود می‌کنید و سپس با دستور زیر پچ رو اعمال می‌کنید و بعد هم به صورت معمول کرنل رو کامپایل می‌کنید.

patch < 2.6.33-sched-bfs-315.patch -p1

Advertisements

8 پاسخ به “قلب توزیعتون رو روغن کاری کنید

  1. حسن حبیبی 2010/02/27 در 9:36 ب.ظ.

    این یعنی یه پست عالی !

  2. javad33 2010/02/28 در 1:53 ق.ظ.

    W0o0o0o0o0o00oW
    هی من نمیخوام برم سراغ کرنل کامپایل کردن هی تو با این پستات ما رو وسوسه کن!

  3. امير 2010/03/02 در 7:09 ب.ظ.

    فقط اين راهنماي كامپايل كرنل نيست
    https://ilinux.wordpress.com/2008/02/10/%D8%A7%DB%8C%D9%86%D8%AA%D8%B1%D9%86%D8%AA-%D9%85%D8%A7/

    بايد اين ادرس منظورتون باشه

    https://ilinux.wordpress.com/2009/12/07/each-a-kernel/

    اگر معرفتون ممنون

  4. بهرام 2010/03/05 در 4:25 ب.ظ.

    عالیه !
    یکی از بهترین پست‌هایی که تا حالا دیدم
    موفق باشی

  5. royaflash 2010/03/06 در 6:26 ب.ظ.

    سلام دوست عزیز با LFS کار کردین من میخوام نصبش کنم سورسشو گرفتم .

    موفق و لینوکسی باشید .

  6. بازتاب: دویست خط پچ کرنل لینوکس که باعث شگفتی می‌شود « Linux

پاسخی بگذارید

در پایین مشخصات خود را پر کنید یا برای ورود روی شمایل‌ها کلیک نمایید:

نشان‌وارهٔ وردپرس.کام

شما در حال بیان دیدگاه با حساب کاربری WordPress.com خود هستید. بیرون رفتن / تغییر دادن )

تصویر توییتر

شما در حال بیان دیدگاه با حساب کاربری Twitter خود هستید. بیرون رفتن / تغییر دادن )

عکس فیسبوک

شما در حال بیان دیدگاه با حساب کاربری Facebook خود هستید. بیرون رفتن / تغییر دادن )

عکس گوگل+

شما در حال بیان دیدگاه با حساب کاربری Google+ خود هستید. بیرون رفتن / تغییر دادن )

درحال اتصال به %s

%d وب‌نوشت‌نویس این را دوست دارند: