مقایسه لینوکس با اسنو و سون

نمی‌دونم چرا هی بند کردم به این کرنل! شاید چون فک می کنم خیلی راحته و خیلیا از رفتن به سمت و سوش ترس دارن!

uname -a می‌گیرم تا مشخصات کرنل رو بهتون نشون بدم.

Linux linux-19gz 2.6.33-ck1 #1 SMP PREEMPT Mon Mar 1 16:21:28 IRST 2010 x86_64 x86_64 x86_64 GNU/Linux

این یه خط چند تا نکته داره بهمون می‌گه. یکی اینکه پردازشگر  ۶۴ بیتی هست و همینطور کرنل.  دیگه اینکه  شماره کرنل ۲.۶.۳۳ هست. اون ck1 پسوندی هست که نشون می‌ده  با یه کرنل کامپایل شده از رو سورس سر و کار نداریم. بلکه ۱۳ تا وصله برای بالا بردن راندمان کرنل بهش اعمال کردیم. دیگه اینکه در تنظیمات کرنل،  SMP و PREEMPT فعال هستند.

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

شرایط سخت‌افزاری در هر سه سیستم عامل برابر و یکسان بوده و هر سه سیستم عامل‌ها ۶۴ بیتی هستند. فرکانس کاری پردازشگر هم سه گیگاهرتز بوده (توجهی به فرکانسی که برای آی‌مک ثبت شده نکنید!)‌ . و اما بر اساس امتیازی که گیگ بنچ داده، اسنو لئوپارد اپل قوی ترین سیستم عامل و ویندوز سون ۶۴ بیتی با اختلاف کمی از لینوکس رتبه سوم رو به خودش اختصاص داده. لینوکس با کرنل سفارشی و دست ساز هم تونسته رتبه دوم رو به خودش اختصاص بده. اما باید ریز بشیم و ببینیم لینوکس کجاها داره نسبت به مک و یا احتمالا نسبت به ویندوز می‌لنگه.

مقایسه بین لینوکس و لئوپارد و ویندوز سون
برای بزرگ شدن تصویر کلیک کنید

برنامه گیگ بنج ۴ دسته امتیاز کلی رو برای همه سیستم عامل‌ها در نظر می گیره. هر دسته شامل تعدادی تست می شه.

این ۴ دسته عبارتند از integer، Floating point، memory، stream . جالب اینجاست که هر کدام از سیستم عامل‌ها در یک دسته اول شده‌اند. به جز اسنو اپل که در دو دسته مقام اول رو کسب کرده است.

برنده قسمت integer سون، برنده floating point و stream اسنو و دسته memory نیز لینوکس اول شده است.

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

من تنها جایی که مشکل رو می بینم زمان خواندن و نوشتن اطلاعات بر روی پارتیشن هست! دوستان ببینید پارتیشن‌های من از نوع LVM هست و نوع آن هم ext4 هست. نمی دونم! اما یه جورایی احساس می کنم عملکرد پایین خیلی از نتایج در لینوکس همین موضوع می‌تونه باشه:)

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

نکته مهم اینکه از ۲۱ تست، لینوکس فقط در ۴ تست Blowfish، mandlebrot، Read sequential و stdlib copy اول شده و اختلاف پیروزی در stdlib copy با ویندوز و مک به حدی بالاست که می‌شه گفت لینوکس داره تو خیلی از قسمتا ( رو سخت افزار من) ضعیف عمل می کنه وفقط به دلیل خوب کار کردن در یک بخش، ضعف در بقیه قسمتا رو به نوعی جبران می کنه:)

به نتایج که نگاه می‌کنیم، می‌بینیم، ویندوز تو خیلی از تستا اول هست ( ده تست از ۲۱) ! فقط چون تو چند تا تست مث blur image یا sharpen image سوتی های بدی داده، نتیجه رو حتی به لینوکس هم واگذار کرده:)

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

و اما سه نکته برای کامپایل کرنل ۲.۶.۳۳ .

اول اینکه شما می‌تونید ۱۳ پچ اقای کولیواس را یک جا به کرنل پچ کنید. یکی از این پچ‌ها BFS است. یکی دیگه از پچ‌های خیلی مهم مربوط به  Timer frequency از زیر مجموعه Processor type and features هست. که بعد از پچ کردن کرنل، می‌شه مقدارش رو از هزار هرتز هم بالاتر برد. مقدار نهایی ده هزار هست!! این  فرکانس از نقاط اختلاف بر انگیز بین علما هست. یک سری می‌گن این عدد هر چی بالاتر باشه بهتره. یه سری می‌گن اگه این عدد بالا باشه، برق بیشتری مصرف می شه. پس تو لب‌تابا باید این عدد رو کمتر از هزار هرتز انتخاب کرد. یه سری هم می‌گن خیلی بزرگ انتخاب کردن این عدد می‌تونه منجر به ناپایداری سیستم شه:)) یکی  از وصله‌ها باعث می‌شه پسوند ck به انتهای شماره کرنل اضافه شه :-D  . یکی هم باعث بهبود در عملکرد preempt لینوکس خواهد شد.

برای اعمال پچ هم کافیه، پچ و سورس کرنل در یک دایرکتوری قرار داشته باشن(بعد از خارج شدن از حالت فشرده) . با اعمال دستور زیر هر ۱۳ تا پچ به کرنل وصله خواهند شد.

patch < patch-2.6.33-ck1 -p1

بعد هم به صورت عادی می‌شه کرنل رو کانفیگ و کامپایل کرد(اضافه کردن زمانبندی فرکانس یادتون نره) .

اما نکته مهمتر در مورد کرنل ۲.۶.۳۳ اینکه شما همه کارا رو درست انجام دادید. کار تموم شده. نوبت می‌رسه به نصب درایور کارت گرافیکی انویدیا.

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

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

nvidia-190.53-2.6.33.patch.txt
nvidia-195-2.6.33.patch.txt

بعد از اینکه مطمئن شدید که پچ و درایور رسمی انویدیا در یک دایرکتوری قرار دارند، با یکی از دو دستور زیر (بسته به نسخه درایور) پچ رو اعمال کنید. توجه کنید درایور رسمی انویدیا باید مجوز اجرا شدن را نیز داشته باشد(chmod 777 NVidia.run)

./NVIDIA-Linux-x86-190.53-pkg1.run –apply-patch nvidia-190.53-2.6.33.patch.txt
./NVIDIA-Linux-x86-195.30-pkg1.run –apply-patch nvidia-195-2.6.33.patch.txt

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

./NVIDIA-Linux-x86-190.53-pkg1-custom.run
./NVIDIA-Linux-x86-195.30-pkg1-custom.run

که از این به بعد می‌شه با این درایور به صورت معمول کار کرد(sudo ./NVIDIA-Linux-x86_64-195.30-pkg2-custom.run).

و اما نکته آخر اینکه آخرین نسخه از درایور رسمی انویدیا ( NVIDIA-Linux-x86_64-195.36.08-pkg2.run ) به صورت رسمی منتشر شده! اما همچنان فک نکنم بشه رو کرنل ۲.۶.۳۳ نصبش کرد و باید منتظر پچ اصلاحیش باشیم:)

دیدگاه‌ها

13 پاسخ به “مقایسه لینوکس با اسنو و سون”

  1. میثم نیم‌رخ

    سلام
    سیستم من : Linux meysam-desktop 2.6.31-14-generic #48-Ubuntu SMP Fri Oct 16 14:04:26 UTC 2009 i686 GNU/Linux
    البته سیستم من ۶۴ بیتی هست که من دارم روش از مینت ۳۲ بیتی استفاده میکنم و پروفایل من در گیک‌بنچ: http://browse.geekbench.ca/geekbench2/view?id=225832
    نظرت چیه؟

    1. erghezi نیم‌رخ

      حتما امتیازت بالا می‌ره اگه مینت ۶۴ بیتی نصب کنی . و باز بالاتر می ره اگه کرنل دستی داشته باشی:) و بالاتر می‌ره اگه از پچ bfs استفاده کنی :دی

  2. بهرام نیم‌رخ

    دیگه دارم کم کم ازت می‌ترسم !! :D
    آخرش این سیستمتو می‌ترکونی !! :D
    عالی بود مثل همیشه.

  3. محمود نیم‌رخ

    بسیار خوب و جامع و مفید بود.فکر نمیکنم با خوندن دقیق این پست دیگه نکته مبهمی در این زمینه برای کسی بمونه.پس پیش به سوی ۲.۶.۳۳ (:

  4. HoseinHZ نیم‌رخ

    مرسی ، جالب بود

  5. فرهاد فرامرزی نیم‌رخ
    فرهاد فرامرزی

    عالی بود . خیلی استفاده بردم

  6. فرهاد فرامرزی نیم‌رخ
    فرهاد فرامرزی

    آپدیت نمی کنی ؟

    1. erghezi نیم‌رخ

      چه شور و اشتیاقی:) نصفه شبی بیدار شدی، ببینی وبلاگ به روز شده؟:دی کارت درسته رفیق

  7. یک دوست نیم‌رخ
    یک دوست

    سلام٬ دوست عزیز سوالی داشتم٬ اصولا مزیت کرنل ویندوز و یا مک به کرنل لینوکس در چیست؟

    1. erghezi نیم‌رخ

      چون کرنل لینوکس اپن‌سورس هست. شما می‌تونید هر تغییری روی اون ارائه بدی. شما فرضا یه شرکت می‌زنی برای جمع کردن یه سیستم با سخت افزار مشخص و معین. یه چیزی تو مایه های ای مک اپل.

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

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

  8. یک دوست نیم‌رخ
    یک دوست

    دو سوال دیگر هم دارم :)
    آيا کرنل های مک و ویندوز به صورت bfs عمل می‌کنند یا cfs ؟
    آیا قابلیت تطبیق بیشتر با سخت افزارهای مختلف باعث ضعیف شدن نتایج مربوط به لینوکس نشده؟ ممنون

    1. erghezi نیم‌رخ

      سوال اول که باید بگم این دو روش مختص لینوکس هستند و اصلا ارتباطی به مک و ویندوز ندارند. بماند که bfs داخل کرنل اصلی وجود نداره و ما با پچ اون رو به کرنل وصله می‌کنیم.

      اما سوال دوم. دقیقا. کاملا رابطه عکس این دو با هم دارند. سیستم عامل اپل برای هر سخت افزاری طراحی نشده. شما اون رو روی پنتیوم تری یا دو و حتی یک نمی‌تونید نصب کنید. لئوپارد اپل یا سون برای سخت افزار با قدرت بالا طراحی شده اند. به خصوص اسنو که فقط مخصوص پردازنده‌های اینتل (دو هسته ای و ۴ هسته ای ) طراحی شده و تازه روی هر پی‌سی با هر مادربوردی به راحتی نصب نمی‌شه و کاملا سفارشی مخصوص سخت‌افزارهای اپل (یعنی برای آی‌مک و مک‌بوک پرو ) طراحی‌ می‌شه.

      نقطه مقابل لینوکس رو داریم با طیف کاملا متنوعی از سخت‌افزارها. توزیعی مث فدورا یا اوبونتو دارن توزیعی رو ارائه می‌دن که مخاطب همه افراد هستند. نتیجه پشتیبانی از طیف خیلی زیادی آدم هست اما در عوض عملکرد تا حدود زیادی پایین خواهد اومد(در سخت افزارهای قوی اختلاف بیشتر هم می‌شه). و اصلا برای همین کرنل رو می‌یایم در لینوکس سفارشی می‌کنیم. و به نوعی قدرت لینوکس همین سفارشی سازی هست. شما یک سخت افزاری رو دارید. می ياید بر این اساس کرنل رو تنظیم می‌کنید

  9. يك دوست نیم‌رخ
    يك دوست

    واو ممنون بله سفارشي سازي خيلي مهم هست. :)

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

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