بر اساس مستندات چرا افتضاح صفحه آبی مرگ تقصیر مایکروسافت است و چرا تقصیر گنو نیست؟ پاسخ به غوزمیت

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

خب بیخیالش شید دیگه چرا ول نمیکنید؟!

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

من در این فرسته میخوام با مدرک بگم که در اون فاجعه مایکروسافت یا همون ویندوز مقصره ولی زمانی که این اتفاق برای گنو افتاد، تنها کاربر مقصره و گنو هیچ نقشی نداشته. با مدرک!!!!!!!!!!!!!!

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

این پایگاه ها نقش زیادی در روی نیاوردن مردم به نرم افزار آزاد و جاگری عادت های بد زیادی در ذهن مردم هستند.





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




ویندوز

اول بریم ماجرارو شرح بدیم،


بروز‌رسانی سنسور فالکون برای مایکروسافت ویندوز در ساعت ۰۴:۰۹ یوتی‌سی در ۱۹ ژوئیه ۲۰۲۴ شامل *درایور* هسته معیوب csagent.sys بود که باعث شد دستگاه‌های آسیب‌دیده وارد صفحه آبی مرگ با کد توقف PAGE_FAULT_IN_NONPAGED_AREA شوند. این باعث شد که ماشین‌ها در یک حلقه بوت یا در حالت بازیابی گیر کنند. میزبان‌هایی که از ویندوز ۷ یا ویندوز سرور ۲۰۰۸ آر۲ استفاده می‌کنند تحت تأثیر قرار نمی‌گیرند.

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

اگه یک شرکت نرم افزار فاکون کراوداستریک نصب کنه این درایور به کرنل ویندوز این شرکت اضافه میشه و بعد از اون این درایور از طریق بخش Windows Updates خود ویندوز بروزرسانی هاشو دریافت میکنه.

در مستندات درایور های ویندوز اومده که برای نگارش های ۶۴ بیتی ویندوز از ویندوز ویستا به بعد تمام نرم افزار هایی که به خود هسته اضافه میشوند و در هسته اجرا میشوند *از جمله‌ی درایور ها* برای بارگذاری شدن بر روی کرنل باید درای امضای دیجیتال باشند. این درایور ها هم باید درای امضای خود مایکروسافت و هم امضای سازنده‌ی اون باشن و وقتی یک سازنده‌ی درایور، یک درایور جدید رو میسازه یا یک بروزرسانی برای اون ارائه میده قبل از انتشار عمومی، سازنده‌ی اون درایور باید اون درایورو به مایکروسافت معرفی کنه و برای اون یک درخواست امضا ثبت کنه، بعد از اینکه مایکروسافت * آزمایشاتی* رو روی اون انجام داد و سازنده‌ی اون درایور تونست چندین مرحله رو بگذرونه و گواهی انتشارو بگیره مایکروسافت اونو با کلید خودش امضاء میکنه، اگه این درایور امضاء مایکروسافتو نداشته باشه اصلا کرنل اونو بارگذاری نمیکنه و اصلا قابل استفاده نیست.

بعد از اینکه این اتفاقات افتاد این درایور میتونه از طریق بخش Windows Updates به کرنل اضافه بشه.


تمام مراحل زیرو برید در پیوند های پایین خودتون بخونید.....

مستندات امضاء درایور های ویندوز در وبگاه مستندات خود مایکروسافت:

https://learn.microsoft.com/en-us/windows-hardware/drivers/install/windows-driver-signing-tutorial


مراحل و شرح دریافت گواهینامه‌ی انتشار و بروزرسانی درایور:

https://learn.microsoft.com/en-us/windows-hardware/drivers/dashboard/get-started-dashboard-submissions


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

آیا مایکروسافت نباید به گفته‌ی خودش اونو آزمایش میکرده؟ پس قصور از کی بودهههههههههه؟ بله درسته مشکل از مایکروسافت بوده.



گنو

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

خب حالا برای گنو مشکل از کی بوده؟

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

دستگاه های گنویی که این اتفاق براشون رخ داده بود دستگاه های عادی نبودند.

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

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


حتی ماژول هایی هم که جزو خود کرنل لینوکس هستن هم برای رفتن در نگارش پایدار کرنل چندین بار آزمایش میشن ولی نرم افزار شرکت فالکون که نه جزو رسمی خود کرنل بوده و نه حتی آزاده که بتونه به کرنل اضافه بشه پس مقصر کاربران اون دستگاه ها هستند.



پ.ن: به وبگاه غوزمیت و غوزمیتیا بگید که اینقدر حق نگن.


با تمام اینها میفهمیم که شرکتی به این بزرگی اصلا برای کاربرانش هیچ ارزشی قائل نیست و شاید دیگه وقتش شده باشه که ما برای خودمون ارز قائل بشید و تنها از نرم افزار های آزاد استفاده کنیم.