سیستم عامل میکروکد پردازنده چه می دهد. تصحیح خطاهای CPU پردازنده های اینتل

ارائه دهنده BioStar A740G M2L+ (AMD 740G / SB710) و گیرنده BioStar A740G M2+ (AMD 740G / SB700). مادربرد با حرف L جدیدتر است و برخلاف مادربرد دیگر که فقط به پشتیبانی از پردازنده های AM2 + محدود می شود، رسماً از پردازنده های AM3 پشتیبانی می کند. التماس برای تحلیل مقایسه ایبایوس آنها
از دفتر فقط بارگذاری سایت اخرین بروزرسانیسیستم عامل BIOS برای هر یک از این مادربردها:
- برای A740G M2+ آخرین نسخه بتا A74GM916.BSSبرای سپتامبر 2009
- برای A740G M2L+ - فایل 74GCU511.BSS- می 2010

بعد، ما خود را با ابزار MMTOOL مسلح می کنیم (من از نسخه های 3.22، 3.23 و 3.26 استفاده کردم - هیچ تفاوتی در کار پیدا نکردم). برای کار با MMTOOL، پسوندهای فایل سیستم عامل BIOS باید به *.rom تغییر نام دهند.

اکنون دو MMTOOL را راه اندازی می کنیم و فایل های سیستم عامل را از دو تشک در آنها بارگذاری می کنیم. تخته ها ما به اندازه های مختلف در ستون "Source size" (و البته در "Size in Rom") ماژول 11 "P6 Micro Code" در هر یک از سیستم عامل ها توجه می کنیم.

برای مقایسه دقیق به بخش CPU PATCH بروید:

فایل اهداکننده 74GCU511.rom - cpu_list شامل 14 خط با پشتیبانی CPURev.ID + 1 خط خالی است (شکل 1).

نسخه بتا گیرنده A74GM916.rom - cpu_list شامل 13 خط با پشتیبانی از CPURev.ID + 1 خالی است (شکل 2).

پس از تجزیه و تحلیل لیست این دو BIOS، مشخص می شود که برای یک مادربرد جدیدتر، توسعه دهندگان از وصله های جدیدتری برای پردازنده های AMD، که در آن میکروکد دو خط با CPURev.ID 1043 و 1062 تصحیح شده است (تاریخ 2009/07/31) و یک خط با CPURev.ID 10A0 اضافه شده است (تاریخ 1389/02/17).

روش شماره 1 - اصلاح رشته های متمایز.
این سه خط متمایز از اهداکننده 74GCU511.rom استخراج شده اند - عمل "Extract a Patch Data" + "Apply" + 1 آخرین خط خالی و ذخیره در فایل های جداگانه.

قبلاً در قسمت CPU PATCH فایل گیرنده A74GM916.rom، دو خط با شماره های CPURev.ID 1043 و 1062 حذف می شوند (که میکروکد آنها قدیمی تر از چیزی است که بیشتر درج می کنیم) و آخرین خط خالی - اقدامات "Delete a Patch" Data" + "Apply" (شکل 3).

پس از آن، یک میکروکد جدیدتر به نوبه خود از چهار فایل پچ دریافتی قبلی برای CPURev.ID 1043، 1062، 10A0 و یک رشته خالی وارد می شود (شکل 4).

قبل و بعد از اعمال این تغییرات در فایل گیرنده به ابعاد ("اندازه منبع" و "اندازه در رام") ماژول 11 "P6 Micro Code" توجه کنید.
پس از اعمال، این ابعاد برای گیرنده (شکل 6) با ابعاد همان ماژول در فایل اهداکننده 74GCU511.rom (شکل 5) یکسان خواهد شد.
شایان ذکر است که درک نحوه تشکیل اندازه ماژول آسان است (هر خط در بخش CPU PATCH 2048 بایت طول می کشد).

بهتر است تغییرات را با نام فایل جدید ذخیره کنید.
در مرحله بعد، این فایل بررسی می شود تا MMTOOL دوباره بدون خطا باز شود.

روش شماره 2 - اصلاح با جایگزینی کل ماژول.
در واقع، این اوست که در اینترنت توصیف می شود (مثلاً تا حدی).

در MMTOOL دور فایل اهداکننده 74GCU511.rom، به تب "Extract" رفته و خط "P6 Micro Code" را جستجو می کنیم. سپس آن را انتخاب می کنیم، در فیلد "فایل ماژول" نام ncpucode.bin را به آن می دهیم و Extract module را "به صورت غیر فشرده" اجرا می کنیم.

اکنون در MMTOOL فایل گیرنده A74GM916.rom را بارگذاری می کنیم، به تب "Replace" رفته و دوباره خط "P6 Micro Code" را جستجو می کنیم. آن را انتخاب کنید، منتظر بمانید تا Browse و ماژول اهداکننده ما ncpucode.bin را انتخاب کنید. روی جایگزینی کلیک کنید و سپس با جایگزینی این ماژول موافقت کنید.

مجدداً به ابعاد (“اندازه منبع” و “اندازه در رام”) ماژول 11 “P6 Micro Code” قبل و بعد از تعویض این ماژول در فایل گیرنده توجه کنید.
پس از اعمال، این ابعاد برای گیرنده (شکل 7) با ابعاد همان ماژول در فایل اهداکننده 74GCU511.rom (شکل 5) یکسان خواهد شد.

اگر نتایج هر دو روش را مقایسه کنیم (شکل 6 و شکل 7)، در آدرس RomLoc ماژول "User Defined or Reserved" به دنبال ماژول "P6 Micro Code" به روز شده تفاوت 10 بایتی وجود دارد - شاید اینها ویژگی های MMTOOL باشد...

نتیجه‌گیری و پس‌گفتار.
به این ترتیب، از میان افزارهای مختلف بایوس از تشک های مختلف. بردهای روی سوکت AM2+ (و حتی AM3 برای مقایسه) می‌توانید آخرین میکروکدها را برای هر نوع CPURev.ID، هم در Award و AMI BIOS پیدا کنید، سپس آنها را در یک ncpucode.bin ترکیب کنید.
متعاقباً برای من با اندازه 32768 بایت 16 خط (میکروکد) با آخرین تاریخ ها از میان سیستم عامل های مورد مطالعه BIOS های مختلف مشخص شد: از 15th انواع مختلفویرایش‌های پردازنده برای سوکت AM2+ (040A, 0413, 0414, 041B, 0433, 0680, 0C1B, 1000, 1020, 1022, 1040, 1041, 1043, 1060, 1060, 1060, 1043, 1060, 1060, 1043, 1060, 1060, 1060, 1043, 1060, پردازنده هایی که در خطوط دیگر توضیح داده نشده اند - IMHO، به عنوان مثال، موارد آینده).

هنگامی که ncpucode.bin خود را با وارد کردن وصله های لازم (میکروکدها) برای هر بازبینی پردازنده ضروری ترکیب می کنید، می توانید کاملاً از هر سیستم عامل AMI BIOS با ماژول Micro Code P6 به عنوان یک آزمایشگاه استفاده کنید.

با این حال، هنگام ذخیره فایل سیستم عامل، یک ویژگی ناخوشایند MMTOOL مشاهده شد - به دلایلی این ابزار 8 صفر بایت به انتهای ماژول P6 Micro Code اضافه کرد - اندازه آن 32776 بایت است. هنگام استخراج همان MMTOOL از سیستم عامل آزمایشگاهی، فایل ncpucode.bin نیز 32776 بایت شد.
شما می توانید این را با ویرایشگرهای ساده ای که برای همه در دسترس است ویرایش کنید. اما من نیز (به طور تصادفی) کشف کردم راه جایگزین: هنگام استخراج ابزار جهانی BIOS_EXT.EXE از همه ماژول‌ها از میان‌افزار آزمایشگاهی، فایل ncpucode.bin قبلاً به اندازه صحیح 32768 بایت بود - خود ابزار BIOS_EXT.EXE هنگام ذخیره آن به درستی انتهای ماژول "P6 Micro Code" را تعیین کرد. یک فایل.

اگر چیپست و مادربرد LGA 775 از نظر تئوری می توانند از XEON 771 پشتیبانی کنند، اما بایوس اصلی از آن پشتیبانی نمی کند و هیچ تغییری وجود ندارد، می توانید خودتان بایوس را تغییر دهید.

مهم

1. تمام تغییرات در سیستم عامل BIOS (فایل ROM معمولا) شما با خطر و خطر خود انجام می دهید. در صورت بروز خطا، یک "آجر" تضمینی از مادربرد به دست می آید
2. اندازه فایل سیستم عامل اصلی و نسخه اصلاح شده باید تا یک بایت مطابقت داشته باشد.

3. سیستم عامل اصلاح شده فایل BIOSبازگشت به ریز مدار فقط با کمک یک ابزار اختصاصی از توسعه دهنده مادربرد انجام می شود (برای دانلود از وب سایت سازنده).
4. در بالا مادربردهاآه، خود BIOS دارای یک ماژول به روز رسانی سیستم عامل داخلی است (به عنوان مثال، ابزار EZ Flash 2 برای ASUS P5Q در بخش Tools) - بهترین گزینه.

چگونه آن را بهتر انجام دهیم:
1. آیا همچنان در اینترنت برای نسخه آماده با پشتیبانی XEON جستجو می کنید؟
2. از وب سایت رسمی دانلود کنید آخرین نسخهسیستم عامل و اضافه کردن میکروکد؟

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

در ابتدا، می توانید وجود میکروکدهای XEON را در سیستم عامل BIOS ارزیابی کنید.

- تصویر فعلی AMI BIOS را از طریق Universal BIOS Backup ToolKit 2.0 دریافت کنید
- به محتویات فایل رام دریافتی از طریق AMIBCP V 3.37 نگاه کنید

گزینه ای برای بایوس AMI (American Megatrends Inc.).

1. آخرین نسخه را دانلود کنید BIOSاز وب سایت سازنده مادربرد شما

3. دانلود میکروکد برای پردازنده های XEON 771: lga771_microcodes

4. با استفاده از CPUID پردازنده خود را بیابید AIDA64یا یک برنامه مشابه (به نظر می رسد cpu0001067Ah). اگر یک BIOSقبل از نصب پردازنده دوخته می شود، سپس از این مورد صرف نظر می کنیم.

5. آرشیو را از بسته بندی باز کنید MMToolو lga771_microcodesو از فایل های با پسوند خارج شوید .صندوقچهفقط آن دسته از فایل هایی که ابتدای آنها با CPUID رایانه شما مطابقت دارد (به عنوان مثال، cpu0001067a_plat00000044_ver00000a0b_date20100928.bin)

اگر ندانیم چه کدی، پس همه چیز را می دوزیم.

آ.راه اندازی می کنیم MMTool. دکمه (1) را فشار دهید رام را بارگذاری کنیدو آخرین بایوس مادربرد خود را در برنامه بارگذاری کنید. اگر آخرین BIOS را دارید، می توانید ابزار پشتیبان گیری بایوس را از رایانه شخصی ادغام کرده و آن را ویرایش کنید.

برفتن به برگه (2) پچ CPU، سپس دکمه (3) مرور کردن، فایل را باز کنید .صندوقچهمربوط به CPUID شما

سی.گزینه ها را به عنوان پیش فرض بگذارید. "درج یک پچ داده"و دکمه (4) را فشار دهید درخواست دادن.

پس از به روز رسانی با بایوس اصلاح شده باید ریست فکتوری انجام شوداز طریق دکمه ریست یا جامپرها، در صورتی که مادربرد از چنین تنظیم مجدد پشتیبانی می کند، یا با بیرون کشیدن باتری BIOS برای چند دقیقه. علاوه بر این، پردازنده قبلاً توسط رایانه به درستی درک شده است و همانطور که باید کار می کند.

سیستم خروجی ورودی پایه - سیستم پایه I/O که به اختصار BIOS نامیده می شود. یک تراشه کوچک روی مادربرد که اولین تراشه ای است که هنگام روشن شدن رایانه شخصی کنترل را دریافت می کند. ارائه شده: تنظیمات پایهکامپیوتر اجزای کامپیوتر را هنگام راه اندازی بررسی کنید...

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

تمامی پردازنده‌های اینتل P6، که شامل خانواده‌های Pentium Pro، Pentium II & III، Celeron، Pentium II & III Xeon و Pentium II Overdrive می‌شوند، دارای ویژگی قابل‌توجه «میکروکد قابل برنامه‌ریزی مجدد» هستند. در این پردازنده ها امکان تغییر میکروکد یعنی. امکان تصحیح خطاها در اجرای نرم افزار و مدار پردازنده های خاص خانواده P6 و برخی از خطاهای داخلی تقریباً در سطح سخت افزار وجود دارد. خطاها می توانند در مرحله طراحی پردازنده ها ظاهر شوند و دقیقاً با تغییر میکروکد اصلاح می شوند. هر یک از زیرخانواده ها (PII، Celeron، PPro، Xeon) دارای مشخصاتی هستند. با انتشار هر مرحله جدید پردازنده (در داخل آن، همه دستگاه ها در چارچوب انحرافات فناوری یکسان هستند)، اینتل یک به روز رسانی مشخصات را برای آن منتشر می کند که نشان دهنده خطای شناسایی و تصحیح شده (انحراف از مشخصات) است.

این اشتباهات در اصل می توانند زندگی را پیچیده کنند. نرم افزار، که روی این پردازنده‌های معیوب (و کاربر ;-)) کار می‌کند.

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

به هر حال، پشتیبانی بایوس برای پردازنده های تازه منتشر شده، به ویژه با وجود سیستم عامل مناسب تعیین می شود. به عنوان مثال، زمانی که اولین Celeron ظاهر شد، عدم وجود یک نسخه میکروکد مناسب بود که مانع از شروع صحیح سیستم با این پردازنده شد.

خود به‌روزرسانی‌های میکروکد، بلوک‌های 2K داده‌ای هستند که در بایوس سیستم فلش می‌شوند. چنین بلوکی برای هر مرحله از پردازنده از خانواده P6 وجود دارد. اینتل آخرین نسخه های میکروکد را برای فروشندگان پیشرو BIOS ارائه می کند. پایگاه داده به روز رسانی با در دسترس قرار گرفتن مدل های جدید و نسخه های سیستم عامل به روز و به روز می شود. اینتل توصیه می‌کند هنگام نصب یک پردازنده جدید روی مادربرد یا برنامه‌ریزی مجدد حافظه فلش، نسخه‌های میان‌افزار را با استفاده از ابزار آن به‌روزرسانی کنید تا مطمئن شوید که بایوس بیشترین مقدار را دارد. نسخه تازهمیکروکد این برنامه پردازنده مورد استفاده (با استفاده از CPUID) را تعیین می کند و به دنبال به روز رسانی مربوطه در پایگاه داده خود می گردد. اگر نسخه جدیدی از میکروکد پیدا شود، ابزار به صورت محلی کد را در BIOS مجدداً نمایش می دهد بدون اینکه بر بقیه مناطق تأثیر بگذارد. که نیازی به برنامه ریزی مجدد کل فلش برای پشتیبانی از CPU جدید نیست، همانطور که قبلاً وجود داشت. اینتل به طور دوره ای به روز رسانی پایگاه داده را در وب سایت خود ارسال می کند.

آخرین پایگاه داده در دسترس ما دارای نسخه 5.01 است و شامل نسخه های میکروکد زیر است:

پردازندهپله پله پردازندهMicrocode Update Rev
پردازنده پنتیوم III0x6720x04
پردازنده پنتیوم III0x6730x02
پردازنده Pentium III Xeon0x6720x21
پردازنده Pentium III Xeon0x6730x22
پردازنده Pentium II0x6330x34
پردازنده Pentium II0x6340x35
پردازنده Pentium II0x6500x32
پردازنده Pentium II0x6510x30
پردازنده Pentium II0x6520x14
پردازنده Pentium II0x6530x01
پردازنده Pentium II Xeon0x6520x29
پردازنده Pentium II Xeon0x6530x04
پردازنده سلرون اینتل0x6500x32
پردازنده سلرون اینتل0x6510x30
پردازنده سلرون اینتل0x6600x09
پردازنده سلرون اینتل0x6650x02
پردازنده پنتیوم II OverDrivex16320x02
پردازنده پنتیوم پرو0x6120xC6
پردازنده پنتیوم پرو0x6160xC6
پردازنده پنتیوم پرو0x6170xC6
پردازنده پنتیوم پرو0x6190xD2

می توانید آخرین نسخه ابزار تعمیر میکروکد را مستقیماً از اینجا دانلود کنید: pupdt501.exe (115 کیلوبایت)

پایگاه داده قدیمی (PEP15.PDB) را می توانید از اینجا دانلود کنید: pupdt461.exe (111 کیلوبایت)

پس از اتمام برنامه، باید برق رایانه را خاموش کنید. به روز رسانی در طول POST در هر راه اندازی سیستم برای پردازنده دانلود می شود. به طور طبیعی، برای کارکرد ابزار، لازم است اجازه دهید فلش مموری با یک جامپر یا در BIOS Setup بازنویسی شود. برنامه باید از زیر DOS "لخت" اجرا شود.

با این حال، این سناریوی ایده آل مستلزم آن است که بایوس از یک API به روز رسانی میکروکد پردازنده ویژه پشتیبانی کند که به ابزار به روز رسانی بایوس اجازه می دهد میکروکد جدید را بارگذاری کند. اگر نسخه بایوس سیستمی که استفاده می شود از API پشتیبانی نمی کند، کاربر چاره ای ندارد. اما برای دریافت نسخه جدید از سازنده مادربرد. با این حال، این اتفاق می افتد که پیدا کردن آن چندان آسان نیست، اگر غیرممکن نباشد. اغلب، پس از توقف تولید یک مدل مادربرد، سازنده به روز رسانی بایوس را برای آن متوقف می کند، اما در در همان زمان، پردازنده های جدید ممکن است در فروش ظاهر شوند و کاربر ممکن است بخواهد یک CPU جدید در سیستم شما نصب کند.

در این حالت، ابزار همچنان می‌تواند اصلاحات فنی را مستقیماً در پردازنده دانلود کند. در این مورد، ابزار برای بارگذاری تماس می گیرد سیستم عاملبلافاصله پس از به روز رسانی سیستم عامل با این حال، به روز رسانی سیستم عامل در راه اندازی مجدد نرم یا سخت سیستم از بین می رود.

این سوال پیش می آید که خطر به روز رسانی خود فریمور چیست؟ خوب، اول از همه، ابتدا باید مطمئن شوید که واقعاً به آن نیاز دارید. اگر نسخه سیستم عامل قدیمی است، اما سازنده مادربرد نسخه های جدید بایوس را ارائه نمی دهد، اما مهمتر از همه، با عملکرد ناپایدار برخی از برنامه ها مواجه هستید و انتظار دارید که تغییر میکروکد پردازنده به شما کمک کند. فقط در این مورد منطقی است که خود سیستم عامل را تغییر دهید. و در مورد آنچه مملو از آن است - به نظر من هیچ چیز خطرناکی نیست. اول از همه، فراموش نکنید که بارگذاری آپدیت میکروکد در پردازنده در تمام بایوس های بردهای P6 استفاده می شود و برای مدت طولانی استفاده می شود (بسیاری از افراد گزینه مرموز Microcode Update: Enable/Disable را در Setup مشاهده کردند). و هیچی! همه چیز کار می کند.

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

من تجربه شخصیکار با این برنامه تاکنون به 7 مورد محدود شده است که از این تعداد می توان میکروکد را تنها در یک مادربرد (Abit LX6 با PII 233) به روز کرد. در موارد دیگر، BIOS قبلاً حاوی نسخه های به روز شده میکروکد بود. همچنین، امکان ملاقات با BIOS که از به روز رسانی میکروکد پشتیبانی نمی کند، وجود نداشت.

در مورد امکان مشابه به روز رسانی میکروکد در پردازنده های دیگر سازندگان (AMD، Cyrix)، من نتوانستم اطلاعاتی در مورد این موضوع پیدا کنم. اما من تقریباً مطمئن هستم که این CPUها توانایی مشابهی برای تغییر میکروکد دارند.

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

برخی از باگ های CPU می توانند فایرفاکس را خراب کنند. به عنوان مثال، فایرفاکس 57 و نسخه‌های جدیدتر، گهگاهی در CPUهای Broadwell-U با میکروکد قدیمی خراب می‌شود، به نحوی که در نسخه‌های میکروکد Broadwell-U جدیدتر دیده نمی‌شود.

به‌روزرسانی‌های میکروکد را می‌توان توسط سیستم عامل (که معمولاً BIOS نامیده می‌شود، حتی در رایانه‌هایی که از نظر فنی به جای بایوس قدیمی دارای سیستم عامل UEFI هستند) یا توسط سیستم عامل بر روی CPU بارگذاری می‌شوند. به‌روزرسانی‌های میکروکد در طول راه‌اندازی مجدد ادامه پیدا نمی‌کنند، بنابراین در مورد سیستم بوت دوگانه، اگر به‌روزرسانی میکروکد از طریق BIOS ارائه نشود، هر دو سیستم عامل باید به‌روزرسانی را ارائه دهند.

در مک، برای داشتن یک سیستم به‌روز، همه به‌روزرسانی‌های سیستم OS X و به‌روزرسانی‌های میان‌افزار Apple ارائه‌شده در صفحه به‌روزرسانی‌ها را اعمال کنید. اپ استوربرنامه

برای اینکه به ویندوز اجازه دهید میکروکد به روز شده را روی CPU بارگذاری کند، مطمئن شوید به روز رسانی ویندوزفعال است و برای نصب به روز رسانی تنظیم شده است.

برای مشاهده ریزمعماری پردازنده و اینکه کدام ویرایش میکروکد در حال استفاده است، دستور reg query HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor\0 را در خط فرمان ویندوز اجرا کنید. ( تو می توانیخط فرمان را با فشار دادن Windows + R باز کنید، cmd را تایپ کنید و Return را فشار دهید.) خط با برچسب "VendorIdentifier" فروشنده CPU را نشان می دهد (GenuineIntel برای Intel یا AuthenticAMD برای AMD). خط با برچسب "Identifier" ریزمعماری را به عنوان سه عدد نشان می دهد: "خانواده"، "مدل" و "گام". اینها برای شناسایی اینکه آیا یک اشکال CPU خاص ممکن است مربوط به CPU در رایانه شما باشد، مرتبط هستند. خط با برچسب "به روز رسانی ویرایش" ویرایش میکروکد فعلی (برای ریزمعماری خاص) را با صفر در دو طرف نشان می دهد. به عنوان مثال، به روز رسانی ویرایش REG_BINARY 000000001E000000 به این معنی است که نسخه 1E (هگزا دسیمال) است. خطی که با عنوان "Previous Update Revision" نامگذاری شده است، ویرایش میکروکد بارگیری شده از BIOS را نشان می دهد.

اگر فروشنده GenuineIntel، خانواده 6، مدل 61 و پله 4 است، برای جلوگیری از خرابی با فایرفاکس 57 یا جدیدتر، ویرایش میکروکد باید 1A یا بالاتر باشد.

اینکه آیا به‌روزرسانی‌های میکروکد به‌طور پیش‌فرض استفاده می‌شوند به توزیع لینوکس بستگی دارد و می‌تواند برای پردازنده‌های Intel و AMD متفاوت باشد.

  • در توزیع‌های مبتنی بر دبیان، از جمله اوبونتو، به‌روزرسانی‌های میکروکد برای پردازنده‌های اینتل توسط بسته intel-microcode و به‌روزرسانی‌های میکروکد برای پردازنده‌های AMD توسط بسته amd64-microcode ارائه می‌شوند.
  • در Arch، به‌روزرسانی‌های میکروکد AMD به‌طور پیش‌فرض نصب می‌شوند، اما به‌روزرسانی‌های میکروکد اینتل به مراحل خاصی نیاز دارند.
  • در فدورا، به‌روزرسانی‌های میکروکد به‌طور پیش‌فرض نصب می‌شوند.

برای مشاهده ریزمعماری پردازنده و اینکه کدام ویرایش میکروکد در حال استفاده است، دستور less /proc/cpuinfo را در ترمینال اجرا کنید. خط با برچسب "vendor_id" فروشنده CPU را نشان می دهد (GenuineIntel برای Intel یا AuthenticAMD برای AMD). ریزمعماری به صورت سه عدد در خطوط با برچسب "خانواده cpu"، "model" و "stepping" آورده شده است. اینها برای شناسایی اینکه آیا یک اشکال CPU خاص ممکن است مربوط به CPU در رایانه شما باشد، مرتبط هستند. خط با برچسب "microcode" شماره ویرایش میکروکد (برای ریزمعماری خاص) را به صورت هگزا دسیمال نشان می دهد.

از ابتدای ژانویه، به سختی می‌توان اخبار مربوط به آسیب‌پذیری‌های سخت‌افزاری Spectre و Meltdown را از دست داد - موضوع بسیار جدی و جامع بود. اگرچه سازندگان از تابستان گذشته از این مشکلات آگاه بودند، اما به نظر می رسد اکثر آنها تنها پس از انتشار جزئیات توسط کارشناسان شروع به واکنش کرده اند. تیم های گوگلپروژه صفر.

به عنوان مثال، در ماه ژانویه، اینتل، در میان سایر وصله‌ها، به‌روزرسانی‌های میکروکد ضد اسپکتر را برای پردازنده‌های Broadwell، Haswell، Skylake منتشر کرد. دریاچه کبیو دریاچه قهوه. اما تقریباً بلافاصله مشخص شد که آنها منجر به شکست و. در ابتدا، اینتل اعلام کرد که این مشکل فقط بر روی تراشه‌های Broadwell و Haswell تأثیر می‌گذارد، اما بعداً به وجود خرابی در رایانه‌هایی با پردازنده‌های Skylake، Kaby Lake و Coffee Lake اعتراف کرد و شرکا و کاربران از نصب وصله‌ها فعلاً خودداری کردند. سرانجام، در اوایل فوریه، یک نسخه اصلاح شده از میکروکد، اما فقط برای تراشه های مصرف کننده موبایل و دسکتاپ از خانواده Skylake.

اکنون، پس از یک ماه آزمایش و وصله فشرده توسط اینتل و شرکای آن، زمان دیگر پردازنده‌های کم و بیش مرتبط فرا رسیده است: به‌روزرسانی‌های میکروکد برای تراشه‌های مبتنی بر معماری Kaby Lake و Coffee Lake و همچنین Skylake- منتشر شده است. پلتفرم های مبتنی بر به روز رسانی قبلی تحت تأثیر قرار نگرفته اند. ما در مورد پردازنده های نسل 6، 7 و 8 صحبت می کنیم. اینتل Core i، و همچنین آخرین خانواده های Core X، Xeon Scalable و Xeon D.

نوع جدید سیستم عامل در اکثر موارد از طریق نسخه های OEM سیستم عامل جدید مادربرد و لپ تاپ در دسترس خواهد بود. اینتل همچنان مردم را تشویق می کرد که سیستم های خود را به روز نگه دارند نسخه های فعلیو همچنین سندی را منتشر کرد که وضعیت اصلاحات میکروکد مشابه را برای محصولات دیگر، از جمله تراشه‌های قبلی که با 45 نانومتری Core 2 شروع می‌شوند، نشان می‌دهد. ، برای سوم - در حال حاضر در قالب یک نسخه بتا وجود دارد. به عنوان یک قاعده، هرچه معماری قدیمی‌تر باشد، دیرتر سیستم‌افزاری با محافظت در برابر Spectre دریافت می‌کند. با این حال، به‌روزرسانی‌های میکروکد برای معماری‌های کم و بیش فعلی Sandy Bridge، Ivy Bridge، Haswell و Broadwell در حال آزمایش بتا هستند. همچنین تعدادی از تراشه‌های Atom و حتی شتاب‌دهنده‌های Xeon Phi قبلاً پچ‌هایی را دریافت کرده‌اند.

اینتل یادآور شد که روش های دیگری برای مبارزه با آسیب پذیری های کشف شده بلوک پیش بینی شاخه در پردازنده های مدرن وجود دارد. به عنوان مثال، Retpoline که توسط گوگل در برابر Spectre CVE-2017-5715 (تزریق هدف شاخه یا تزریق هدف به یک شاخه) توسعه یافته است. برای کسانی که علاقه مند به کسب اطلاعات بیشتر در مورد Retpoline و نحوه عملکرد آن هستند، این شرکت کاغذ سفید ویژه ای را منتشر کرده است.

به‌روزرسانی‌های میکروکد Anti-Spectre منتشر شده توسط اینتل در روزها و هفته‌های آینده در قالب یک سیستم عامل جدید بایوس برای مادربردهای مختلف آغاز می‌شود. کنجکاو است که آیا آنها تأثیر بیشتری بر کاهش عملکرد سیستم های نهایی خواهند داشت؟