وجود دو نقص امنیتی در معماری تراشهی x86 اینتل خبری است که بازار آن در ماه اخیر داغ شده بود. این نقصها سایر ریزپردازندههای ساختهشده توسط AMD و طرحهای تحتلیسانس ARM را نیز تحت تأثیر خود قرار داده است. شاید بتوان گفت این نقصها، یکی از بدترین باگهای کامپیوتری درطول تاریخ باشند (اگر بدترین نباشند)؛ چراکه بهجای ایجاد شدن در ساختار نرمافزار، سختافزاری هستند و تعداد وسایلی را که با مشکل مواجه میکنند به میلیاردها میرسانند.
مقالهی مرتبط:
این نقصها که با نامهای ملتداون و اسپکتر از آن یاد میشود، بسیار عجیب هستند و تاحدی جدی و دوراز دسترس مینمایند که تنها راه برطرف کردنشان در آیندهی نزدیک، کارکردن روی نرمافزار مربوط به آنها است. مشکل اینجا است که حتی با کار کردن روی نرمافزارها، سرعت بعضی از بارگذاریها تا ۳۰ درصد کاهش مییابد.
درواقع نقصهایی که سیستمها را با مشکل مواجه میکند بهقدری همهگیر اهستند که در خود معماری سیستمهای پایهای تراشهها به نمایش گذاشته میشومد. احتمال داده میشود که این نقصها از سال ۱۹۹۵ وجود داشتهاند. این برههی زمانی وقتی است که مجموعهی تلویزیونی دوستان (Friends) پربینندهترین بود و تقریبا اکثر مردم از ویندوز ۳.۱ استفاده میکردند.
اوضاع باید کاملا تغییر کند
بدون اینکه وارد جزئيات این مسئله شویم که چنین نقصهایی چگونه باعث بروز مشکل میشوند (چراکه توضیح ماهیت این مسئله بسیار فنی است و شما باید در زمینهی تراشه خبره باشید تا بتوانید آن را کاملا درک کنید) بهطور ساده به این موضوع میپردازیم که این نقصها چگونه کار میکنند؛ درواقع این نقصها با بهرهگیری از برخی از عملکردهای پایهای مشخص ریزپردازندههای مدرن برای بهبود عملکرد کمک میگیرند.
شباهت کارکرد آنها شبیه به DNA است. DNA، طرح و سختافزار برنامهنویسی برای چگونگی کارکرد یک اندام را در سطوح پایهای مشخص میکند. اگر شما در DNA خود دچار مشکل شوید، بیماری شما مربوط به ژنتیک میشود. شما تلاش میکنید با استفاده از درمانها و داروهای مختلف آن را بهبود ببخشید؛ ولی مشخص است که نمیتوانید آن را بهطور کامل درمان کنید. درواقع شما کریسپری دارید که هیچ چیز دیگری همتای آن نیست که بتوانید جایگزین کنید. تنها راه درمانی (حداقل از لحاظ علم کنونی) این است که اجازه بدهید اندام بهطور کامل بمیرد و اندام دیگری جایگزین آن شود. درواقع باید سیستم کلی کاملا از بین برود. معماری تراشهی x86 اینتل، نقش اندام مبتلا به این بیماری ژنتیکی را ایفا میکند. در واقع این معماری، ساختار غالب سیستمهای کامپیوترهای شخصی، سرورهای مرکز داده و سیستمهای جاسازیشده است.
۱۰ سال پیش طرح پاکسازی معماری x86 اینتل را مطرح شد. زیرا در آن زمان لینوکس در حال مشهور شدن بود و نیاز به سازگاری با بارهای کاری مبتنی بر ویندوز در مرکز داده و روی دسکتاپ درحال کاهش بود.
در این ۱۰ سال چه اتفاقی افتاده است؟ لینوکس و سایر فناوریهای نرمافزار آزاد و متن باز که مجموعه کلی را تشکیل میدادند، اکنون یک سیستمعامل جریان اصلی هستند که اساس زیرساخت ابری عمومی و فناوری نرمافزار پایهای در موبایل و اینترنت اشیاء را تشکیل میدهند. مجازیسازی در حال حاضر به یک اقدام تجاری استاندارد و همهگیر برای مقیاسپذیری و طراحی سیستمهای شرکتهای بزرگ تبدیل شده است. ظرفیتسازی درحالحاضر به دنبال تقویت خودش است تا بتواند سرانجام جایگزین مجازیسازی شود و امنیت شبکههای میکرو و چندگانهی آینده را بهبود بخشد. این شبکهها توسط دواپس و اتوماسیون سیستمهای بزرگ هدایت میشوند.
در طول این سالها هر کاری که از دستمان برای رفع نقصهای x86 برمیآمده است، انجام دادهایم
مایکروسافت از سال ۲۰۰۸ با آغوشی باز از متن باز استقبال کرده و موفق شده است که خود را از کمپانی ویندوز به سیستم ابری آژور/آفیس ۳۶۵ که نرمافزارهای بهرهوری ابری را مدیریت میکند تبدیل کند؛ آن هم نهتنها برای ویندوز، بلکه برای لینوکس، آیاواس و اندروید.
تمامی این پیشرفتها لزوما مرتبط با قابلیت سازگاری با x86 نیست. آنها به دلیل سطوح انتزاع و سبکی که در اختیار داریم، ما را از دستِ نوشتن این کدهای مستقل خلاص میکنند. با وجود این پیشرفتها، تعهد ما نسبت به معماری قدیمی و دوستداشتنی سیستمهای x86 کاهش نیافته و در طول این سالها هر کاری که از دستمان برای رفع نقصهای آن برمیآمده است، انجام دادهایم و اکنون نزدیک به ۴ دهه است که سعی داریم آن را زنده نگه داریم. سؤال این نیست که تا چهاندازه باید آن را کنار بگذاریم؛ سؤال این است که چه چیزی را باید جایگزین آن کنیم؟ یک سیستم اصیل دیگر که هنوز هم مستعد داشتن نقصها است؛ یا موردی دیگر؟ باید از فکر کردن در مورد معماری سیستمهای ریزپردازندهای که در کمپانیهای عظیم مثل اینتل، AMD یا ARM ساخته میشوند، دست بکشیم؛ چراکه این سیستمها در خفا ساخته میشوند.
شرکت سانمایکروسیستمز ایده درستی داشت
در سال ۲۰۰۸ شرکت سانمایکروسیستمز که اکنون دیگر با این نام وجود ندارد و مالکیت معنوی آن به شرکت اوراکل رسیده است، تصمیم گرفت معماری تراشهای به نام OpenSPARC T2 را متن باز کند. این ایده در آن زمان با استقابل روبهٰرو نشد و کسی حاضر نشد آن را بپذیرد و از آنجا که داراییهای این شرکت در حال رسیدن به اوراکل بود و شرکت را با مشکلات دادگاهی روبهرو کرد، چندان هم دور از انتظار نبود که کسی بهسمت OpenSPARC نرود.
اما باوجود پیشینهی تاریخی که برای شرکت سان به وجود آمد، شاید این شرکت ایدهی درستی در سر داشت. در حال حاضر نیازمند ساخت و توسعهی یک پروژهی مدرن، همانند OpenSPARC هستیم تا هر سازندهی پردازندهای براساس آن کار کند و نیازی به آیپی نداشته باشد تا هزینههای ساخت پردازندهها برای فضای ابری، موبایل و اینترنت اشیاء را کاهش دهد.
این پروژه باعث به وجود آمدن گوشی هوشمند ۲۰۰ دلاری و همچنین مدیریت چرخهی عمر مرکز دادهی بزرگی میشود که هم مفیدتر است و هم هزینه کمتری دارد. لینوکس و سیستم متن باز، دیدگاه ما در مورد سیستمعاملها و نرمافزارها را تغییر دادند. باید در عرصهی ریزپردازندهها نیز از اینها الگو بگیریم و برای تبدیل مرکز دادهی خصوصی مشکلساز به سیستم ابری تلاش کنیم.
چنین کاری مزایای بیشتری نسبت به ارائهی صِرف معماریهای سیستمی دارد که ممکن است با پیشرفت فضای ابری تغییر کنند. باوجود چنین فناوریهای نرمافزاری بهراحتی میتوان از سختافزار و تراشه دل کند و این توانایی کمک میکند تا از طریق تلاش جمعی، تراشهها را نسبت به نیازهای جدید و روزافزون بهبود بخشیم و اصلاح کنیم.
باید گزینهی جدیدی خلق کنیم
اگرچه تهدیداتی مثل انشعاب، سیستمهای متن باز را تهدید میکنند؛ ولی همین انشعاب اکثر اوقات اکوسیستمی میسازد که سرشار از رقابت بین جوامع خوب و بد است و معمولا این جامعهی خوب است که در نهایت در رقابت استاندارد محبوب، مورد قبول بقیه واقع میشود.
نمیتوان بهطور دقیق گفت که این خانوادهی جدید از تراشه باید بر اساس کدام معماری باشد؛ ولی چیزی که مشخص است اینکه ARM و OpenSPARC آیپی خود را برای این کار صرف نمیکنند. شاید اپنپاور شرکت IBM مناسب باشد. اپنپاور قطعا مقلد خوبی از بیگبلو برای مطرح کردن مشخصات بدون هیچ مجوز اضافهای است و میتواند به حفظ و برقراری ارتباط کمپانی با پیشرفت ابری کمک کند.
RISC-V که توسط یوسیبرکلی توسعه یافته، کاملا متن باز است. واقعیت این است که ما باید چیز جدیدی خلق کنیم؛ پدیدهای که خالی از هرگونه وابستگی به اشخاص و نهادهای هدایتکنندهی این صنعت باشد که درطول این ۴۰ سال این کار را انجام میدادند.
آیا ما به یک معماری ریزپردازنده متن باز جدید برای جریان ابرمحور آینده نیاز داریم؟ نظر شما در این مورد چیست؟
ارسال دیدگاه