نحوه راه اندازی گوشی های هوشمند و رایانه های شخصی. پرتال اطلاعاتی
  • خانه
  • ویندوز 10
  • دستورالعمل mmx sse sse2 sse3 sse4. پردازنده از SSE2 پشتیبانی نمی کند - چه باید کرد

دستورالعمل mmx sse sse2 sse3 sse4. پردازنده از SSE2 پشتیبانی نمی کند - چه باید کرد

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

AMD64 (x86-64)

EM64T (x86-64)

3DNow تمدید شد!

IA-32 (x86-32)

MIMD

MISD

SIMD

SISD

SSE2

SSE3

SSE4

SSE4.1

SSE4.2

SSE4A

SSSE3

MMX (افزونه‌های چند رسانه‌ای) نام تجاری مجموعه‌ای از دستورالعمل‌ها است که اقدامات معمولی برای رمزگذاری/رمزگشایی داده‌های صوتی/تصویری جریانی در یک دستورالعمل ماشین انجام می‌دهد. اولین بار در پردازنده های Pentium MMX ظاهر شد. در آزمایشگاه اینتل در حیفا، اسرائیل، در نیمه اول دهه 1990 توسعه یافت.

SIMD (Single Instruction، Multiple Data) یک اصل از محاسبات کامپیوتری است که امکان موازی سازی در سطح داده ها را فراهم می کند.

SSE (English Streaming SIMD Extensions, streaming SIMD extension of the processor) یک مجموعه دستورالعمل SIMD (English Single Instruction, Multiple Data, One instruction - many data) است که توسط اینتل توسعه یافته و برای اولین بار در پردازنده های سری Pentium III به عنوان پاسخی به مجموعه دستورالعمل مشابه 3DNow! از AMD که یک سال قبل معرفی شد. در ابتدا نام این دستورالعمل ها KNI بود که مخفف عبارت Katmai New Instructions بود (Katmai نام اولین نسخه از هسته پردازنده Pentium III است).

فن آوری SSE غلبه بر 2 مشکل اصلی MMX را امکان پذیر کرد - هنگام استفاده از MMX، استفاده همزمان از دستورالعمل های پردازنده غیرممکن بود، زیرا ثبات های آن برای MMX و کار با اعداد واقعی استفاده می شد.

SSE شامل هشت ثبات 128 بیتی (xmm0 تا xmm7) در معماری پردازنده است که هر کدام به عنوان 4 مقدار ممیز شناور تک دقیق متوالی در نظر گرفته می شود. SSE شامل مجموعه ای از دستورالعمل ها است که عملیات را بر روی انواع داده های اسکالر و جعبه ای انجام می دهد.

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

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

SSE2 (Streaming SIMD Extensions 2) یک مجموعه دستورالعمل SIMD (دستورالعمل تک، چند داده) است که توسط اینتل توسعه یافته و اولین بار در پردازنده های سری Pentium 4 معرفی شد.

SSE2 از هشت ثبات 128 بیتی (xmm0 تا xmm7) موجود در معماری x86 با ورودی برنامه افزودنی SSE استفاده می‌کند که هر کدام به عنوان 2 مقدار ممیز شناور با دقت دوگانه متوالی در نظر گرفته می‌شوند. SSE2 شامل یک مجموعه دستورالعمل است که عملیات را بر روی انواع داده های اسکالر و جعبه ای انجام می دهد. SSE2 همچنین حاوی دستورالعمل‌هایی برای پردازش جریانی داده‌های عدد صحیح در همان ثبات‌های 128 بیتی xmm است، که باعث می‌شود این پسوند برای محاسبات اعداد صحیح نسبت به استفاده از مجموعه دستورالعمل‌های MMX، که خیلی زودتر ظاهر شد، ترجیح داده شود.

مزیت عملکرد زمانی حاصل می شود که لازم باشد توالی مشابهی از اقدامات روی مجموعه بزرگی از داده های یک نوع انجام شود.

SSE3 (PNI - Prescott New Instruction) سومین نسخه از پسوند SIMD اینتل است که از نسل SSE، SSE2 و x87 است. اولین بار در 2 فوریه 2004 در هسته Prescott پردازنده Pentium 4 معرفی شد. در سال 2005، AMD اجرای SSE3 خود را برای پردازنده های Athlon 64 (هسته های Venice و San Diego) پیشنهاد کرد.

مجموعه SSE3 شامل 13 دستورالعمل است:

FISTTP (x87)

MOVSLDUP (SSE)

MOVSHDUP(SSE)

MOVDDUP (SSE2)

LDDQU (SSE/SSE2)

ADDSUBPD (SSE)

ADDSUBPD (SSE2)

HADDPS (SSE)

HSUBPS (SSE)

HADDPD (SSE2)

HSUBPD (SSE2)

- مانیتور (هیچ معادلی در SSE3 برای AMD وجود ندارد)

- MWAIT (هیچ معادلی در SSE3 برای AMD وجود ندارد).

SSE4 یک مجموعه دستورالعمل ریزمعماری Intel Core است که برای اولین بار در پردازنده های سری Penryn پیاده سازی شد (با SSE4A AMD اشتباه نشود). در 27 سپتامبر 2006 اعلام شد، اما توضیحات دقیق فقط در بهار 2007 در دسترس قرار گرفت.

SSE4 از 54 دستورالعمل تشکیل شده است که 47 مورد از آنها به عنوان SSE4.1 طبقه بندی می شوند (آنها فقط در پردازنده های Penryn یافت می شوند). انتظار می رود مجموعه دستورالعمل کامل (SSE4.1 و SSE4.2، یعنی 47 + 7 دستورالعمل باقیمانده) در پردازنده های Nehalem در دسترس باشد. هیچ یک از دستورالعمل های SSE4 با ثبات های mmx 64 بیتی کار نمی کند (فقط با xmm0-15 128 بیتی).

کامپایلر Intel C از نسخه 10 دستورالعمل های SSE4 را زمانی که گزینه -QxS مشخص شده است تولید می کند.

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

SSE4.1 توسعه مجموعه دستورالعمل SSE4 از اینتل است.

در زیر دستورالعمل های موجود در SSE4.1 آمده است:

- افزایش سرعت ویدیو (3 دستورالعمل)

- وکتورهای اولیه (5 دستورالعمل)

- درج/استخراج (4 دستورالعمل)

- ضرب برداری اسکالر (2 دستورالعمل)

- مخلوط کردن (4 دستورالعمل)

بیت چک

- گرد کردن (2 دستورالعمل)

خواندن حافظه WC

SSE4.2 از 7 دستورالعمل تشکیل شده است.

- پردازش رشته (4 دستورالعمل)

شمارش CRC32

- شمارش جمعیت بیت های واحد

- وکتورهای اولیه

SSE4A توسعه دستورالعمل های SSE4 AMD است که نه به عنوان افزودنی، بلکه به عنوان جایگزینی برای دستورالعمل های SSE4 اینتل طراحی شده است.

SSSE3 (Supplemental Streaming SIMD Extension 3) نامی است که توسط اینتل به چهارمین پسوند مجموعه دستورالعمل داده شده است. مورد قبلی SSE3 تعیین شد و اینتل به جای افزایش تعداد برنامه افزودنی، یک "S" دیگر اضافه کرد، احتمالاً به این دلیل که آنها SSSE3 را یک اضافه ساده به SSE3 می دانستند. اغلب، قبل از استفاده از نام رسمی SSSE3، این تیم های جدید SSE4 نامیده می شدند. آنها همچنین با اسم رمز Tejas New Instructions (TNI) و Merom New Instructions (MNI) به نام پردازنده هایی که اینتل قصد داشت برای اولین بار از این دستورالعمل های جدید پشتیبانی کند، نامگذاری شدند. SSSE3 که در ریزمعماری Intel Core معرفی شده است، در پردازنده های سری Xeon 5100 (نسخه های سرور و ایستگاه کاری) و همچنین در پردازنده های Core 2 اینتل (نسخه های نوت بوک و دسکتاپ) موجود است.

در SSSE3، در مقایسه با SSE3، 16 دستور منحصر به فرد وجود دارد که بر روی اعداد صحیح بسته بندی شده عمل می کنند. هر یک از آنها می توانند با هر دو رجیستر 64 بیتی (MMX) و 128 بیتی (XMM) کار کنند، بنابراین اینتل به 32 دستورالعمل جدید در مواد خود اشاره می کند.

در اینجا به برخی از آنها اشاره می کنیم:

- کار با علامت (2 دستورالعمل)

شیفت می کند

- به هم زدن بایت

- ضرب (2 دستورالعمل)

- جمع/تفریق افقی اعداد صحیح (4 دستورالعمل)

3DNow! - افزونه MMX اضافی برای پردازنده های AMD، که با AMD K6 3D شروع می شود. دلیل ایجاد 3DNow! با تمایل به برتری نسبت به پردازنده های اینتل در زمینه پردازش داده های چند رسانه ای هدایت شد. اگرچه این افزونه یک توسعه AMD است، IBM، Cyrix و دیگران نیز آن را در پردازنده های خود ادغام کرده اند.

تکنولوژی 3DNow! 21 دستور پردازنده جدید و توانایی کار با انواع واقعی 32 بیتی در رجیسترهای استاندارد MMX را معرفی کرد. دستورالعمل های ویژه ای نیز برای بهینه سازی تغییر به MMX/3DNow اضافه شده است! (femms که جایگزین دستورالعمل استاندارد emms شد) و کار با حافظه پنهان پردازنده. بنابراین، 3DNow! قابلیت‌های فناوری MMX را بدون نیاز به معرفی حالت‌های عملکرد پردازنده جدید و رجیسترهای جدید گسترش داد.

بررسی پشتیبانی 3DNow! پردازنده

قبل از شروع کار با 3DNow! باید مطمئن شوید که CPU از آنها پشتیبانی می کند. برای این کار از دستور CPUID استفاده می شود. روش کلی برای بررسی به شرح زیر است:

1. مطمئن شوید که پردازنده از دستورالعمل CPUID پشتیبانی می کند. اگر نه، پس CPU از 3DNow پشتیبانی نمی کند.

2. دستور cpuid را با EAX = 0 اجرا کنید - این برای مرحله بعدی ضروری است.

3. CPUID را با مقدار EAX = 80000000h اجرا کنید. اگر بعد از اجرای دستور در EAX مقدار آن کمتر از 1 باشد، 3DNow! پشتیبانی نشده.

4. CPUID را با EAX = 80000001h اجرا کنید. اگر پس از اجرا، بیت 31 رجیستر EDX روی 1 تنظیم شود، 3DNow! پشتیبانی. در غیر این صورت - نه.

SSE2به طور قابل توجهی قابلیت های پردازش چند عملوند را با استفاده از اصل SIMD گسترش می دهد. 144 دستورالعمل جدید برای اجرای همزمان عملیات بر روی چندین عملوند که در حافظه و رجیسترهای 128 بیتی XMM قرار دارند استفاده می شود. رجیسترها می توانند دو عدد ممیز شناور را در فرمت دوگانه دقت (64 بیت) یا 4 عدد در فرمت تک دقیق (32 بیت) ذخیره و پردازش کنند، هر نوع داده عدد صحیحی که می تواند در ثبات های 128 بیتی قرار گیرد. دستورات SSE2 کارایی پردازنده را در اجرای برنامه های گرافیکی سه بعدی و اینترنتی، فشرده سازی و رمزگذاری داده های صوتی و تصویری و تعدادی از برنامه های کاربردی دیگر به میزان قابل توجهی افزایش می دهد.

SSE3شامل 5 عملیات جدید با اعداد مختلط، 5 عملیات پخش با اعداد ممیز شناور، 2 دستورالعمل برای همگام سازی استریم ها و یک دستورالعمل ویژه برای استفاده در رمزگذاری ویدئو.

پسوندهای AES-NI و AVX

AES-NI– مجموعه ای از ۶ دستورالعمل جدید SIMD که روند رمزگذاری و رمزگشایی اطلاعات را طبق استاندارد AES سرعت می بخشد. استاندارد AES یک استاندارد رمزگذاری ایالات متحده است که در سال 2000 به تصویب رسید. این الگوریتم Rijndael را مشخص می کند که یک رمز بلوک متقارن است که روی بلوک های 128 بیتی کار می کند و از کلیدهای 128، 192 و 256 بیتی استفاده می کند.

AVX– گسترش مجموعه دستورالعمل x86 برای ریزپردازنده ها با ریزمعماری جدید Intel Sandy Bridge و پردازنده های AMD Buldozer. بهبودهای مختلف، دستورالعمل‌های جدید و یک طرح رمزگذاری کد ماشین جدید را معرفی می‌کند. اندازه رجیسترهای برداری SIMD از 128 به 256 بیت افزایش می یابد. دستورالعمل های 128 بیتی موجود فقط از نیمه پایین ثبات های جدید YMM استفاده می کنند. مجموعه دستورات AVX به شما این امکان را می دهد که از هر دستور XMM دو عملوندی به شکل سه عملوندی بدون تغییر 2 رجیستر منبع، با یک ثبات جداگانه برای نتیجه استفاده کنید. دستورالعمل هایی با بیش از سه عملوند اضافه شده است. سیستم جدید رمزگذاری کد ماشین VEX مجموعه جدیدی از پیشوندهای کد را ارائه می دهد که فضای کدهای ماشین ممکن را گسترش می دهد.



ویژگی های معماری پردازنده x86-64

یک پردازنده ساخته شده بر روی x86-64 می تواند برنامه های 32 بیتی موجود را بدون هیچ مشکلی اجرا کند و این برنامه ها می توانند بدون افت عملکرد اجرا شوند. ثبات های عمومی موجود در x86 از 32 به 64 بیت افزایش یافته و 8 رجیستر 64 بیتی جدید به آنها اضافه شده است.

در حالت 64 بیتی، پشتیبانی برای موارد زیر ارائه می شود:

آدرس های مجازی 64 بیتی؛

8 رجیستر 64 بیتی جدید و توسعه یافته با هدف عمومی.

نشانگر دستورالعمل RIP 64 بیتی؛

یک فضای آدرس پیوسته با یک فضای واحد برای دستورالعمل ها، داده ها و پشته.

عملیات حسابی و منطقی 64 بیتی روی اعداد صحیح.

معماری AMD64 فرض می‌کند که پردازنده‌ها از 2 حالت پشتیبانی می‌کنند: حالت طولانی، که دارای دو حالت فرعی است - حالت 64 بیتی و حالت سازگاری، و حالت Legacy. آنچه هستند را می توان از جدول فهمید. 2.2.

بنابراین، در حالت 64 بیتی پشتیبانی ارائه می شود:

  • آدرس های مجازی 64 بیتی؛
  • 8 رجیستر 64 بیتی جدید و توسعه یافته با هدف عمومی.
  • نشانگر دستورالعمل RIP 64 بیتی؛
  • فضای آدرس پیوسته با یک فضای واحد برای دستورالعمل ها، داده ها و پشته.
  • عملیات حسابی و منطقی 64 بیتی روی اعداد صحیح.

این حالت محدودیت اندازه فضای آدرس رم را که در سیستم های 32 بیتی x86 مدرن 232 = 4 گیگابایت است، از بین می برد.

برای آدرس دادن به رجیسترهای جدید، به اصطلاح "پیشوندهای پسوند ثبت" در دستورات معرفی شده اند که با استفاده از کدهای مورد استفاده برای دستورات INC کدگذاری می شوند.<регистр>و دسامبر<регистр>در حالت های 32 و 16 بیتی دستورالعمل های INC و DEC در حالت 64 بیتی باید به صورت کلی تر و دو بایتی کدگذاری شوند.

اینتل 64

معماری Intel 64 (فناوری EM64T) همراه با نرم افزارهای مرتبط از برنامه های کاربردی 64 بیتی در سرورها، ایستگاه های کاری، دسکتاپ و لپ تاپ ها پشتیبانی می کند. مانند x86-64 از AMD، توسعه رجیستر 64 بیتی، حالت های عملکرد پردازنده یکسان، سازگاری نرم افزاری مشابه با برنامه های 16 و 32 بیتی را پیاده سازی می کند و از همه مهمتر این فناوری فضای آدرس حافظه مجازی و فیزیکی را گسترش می دهد. .

معماری Intel 64 از ویژگی های زیر پشتیبانی می کند:

  • فضای آدرس مجازی پیوسته 64 بیتی؛
  • اشاره گرهای 64 بیتی؛
  • رجیسترهای هدف عمومی 64 بیتی؛
  • پشتیبانی از عدد صحیح 64 بیتی؛
  • تا 1 ترابایت فضای آدرس پلت فرم .

· 44. فرمت دستور عمومی x86

· مجموعه دستورات پایه عملیات روی عملوندهایی را که در یک ثبات، حافظه یا مستقیماً در دستورالعمل قرار دارند، ارائه می دهد. این مجموعه شامل دستورات بدون آدرس، یک، دو و سه آدرس است. پردازنده انواع دستورالعمل های دو آدرسی زیر را پیاده سازی می کند: register - register; حافظه - ثبت نام؛ عملوند فوری – ثبت؛ ثبت - حافظه؛ حافظه - حافظه؛ عملوند فوری حافظه است.

· عملوندها می توانند 8، 16 یا 32 بیت باشند. برای پیاده سازی انواع مختلف دستورات، فرمت هایی تعریف شده است که ترتیب قرار گرفتن اطلاعات مربوط به عملیات در حال انجام و نحوه انتخاب عملوندها را مشخص می کند. فرم تعمیم یافته فرمت فرمان فیلدهای زیر را اجازه می دهد: کد عملیات (1 یا 2 بایت). آدرس دهی بایت (0، 1 یا 2 بایت)؛ بایت های افست (0، 1، 2 یا 4 بایت)؛ بایت داده های فوری - عملوندها (0، 1، 2 یا 4 بایت).

· هدف از فیلدهای اصلی کد دستوری:

· کد عملیات تعیین کننده نوع عملیاتی است که باید انجام شود. برخی دستورالعمل ها حاوی بیتی در بایت اول هستند که عرض عملوندها را مشخص می کند.

· در تعدادی از دستورات، اولین بایت COP حاوی فیلدهای reg یا sreg است که آدرس رجیسترهای مورد استفاده را تعیین می کند. فیلد reg سه بیتی، ثباتی را که باید مطابق با عمق بیت عملوندهای در حال پردازش انتخاب شود، مشخص می کند. فیلد sreg (دو یا سه بیت) آدرس رجیسترهای سگمنت را تعیین می کند. بایت آدرس دهی MOD R/M شامل سه فیلد است. فیلدهای MOD و R/M آدرس یکی از عملوندها را مشخص می کنند که می تواند در یک رجیستر یا سلول حافظه ذخیره شود. رمزگذاری این فیلدها روش آدرس دهی انتخابی را تعیین می کند.

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

در مورد SSE، من حتی نمی دانم در کجای زندگی به آن نیاز است، شاید برای بازی ها؟ من می دانم Hyper-threading چیست (اگرچه دستورالعمل پردازنده نیست، یک فناوری است)، VT-x، VT-d چیست، می دانم EM64T چیست، اما نمی دانم SSE چیست! خب، بچه ها اینها پای هستند

به طور خلاصه، بچه ها، من بلافاصله به شما می گویم که این موضوع یک مشکل کوچک وجود دارد، منظور من این است که با استفاده از ابزارهای استاندارد ویندوز، چیزی مانند SSE نمی توان فهمید که وجود دارد یا نه. در اینجا شما نیاز به دانلود یک برنامه خاص دارید. اما نگران نباشید، این برنامه super duper رایگان است، وزن بسیار کمی دارد، کامپیوتر را اصلا لود نمی کند، اما در عین حال MEGA USEFUL است و نام آن CPU-Z است (در ضمن می توانید دانلود کنید اینجا: cpuid.com/softwares/cpu-z.html، این وب سایت رسمی است).

بنابراین بچه ها، CPU-Z را دانلود کرده، آن را نصب کرده و سپس آن را راه اندازی کنید. و فوراً همه چیز را خواهید فهمید، این تعداد از SSE های من است:

نه یک، نه دو، بلکه شش، وای بچه ها!

به هر حال، همانطور که می بینید، هنوز اطلاعات مفید زیادی در اینجا وجود دارد، ببینید؟ اگر فوراً نیاز دارید که چیزی در مورد فرآیند خود بدانید، سپس به سرعت CPU-Z را راه‌اندازی می‌کنید و اوه، هر چیزی که نیاز دارید در دسترس شماست! من به شما می گویم که برنامه CPU-Z در نوع خود بی نظیر است! باور نمی کنی؟ خوب، اشکالی ندارد، همین الان به شما ثابت می کنم. ببین، آیا می‌دانی این یا آن کارت حافظه کی منتشر شد؟ خب، به اصطلاح، تاریخ عرضه آن در کارخانه است. یا علاقه ای ندارید؟ خب بعضیا خیلی علاقه دارن ولی مثلا من خیلی علاقه دارم! و برنامه CPU-Z می تواند چنین اطلاعاتی را نشان دهد! پس بچه ها، نگاه کنید، ما CPU-Z را راه اندازی کردیم، به برگه SPD بروید، در آنجا شکاف را با براکت (در سمت چپ) انتخاب کنید، یعنی کانکتوری که در آن نصب شده است و به اطلاعات براکت انتخاب شده نگاه کنید. من یک چوب 8 گیگ در اسلات چهارم دارم و این اطلاعاتی است که برنامه CPU-Z نشان داد:

در اینجا می توانید ببینید که نوار من در هفته سی ام سال 2014 منتشر شد. همچنین نوشته شده که سازنده من هیوندای الکترونیک است، خوب، نوار Hynix به این می‌گویند

خوب، به طور خلاصه، CPU-Z فوق العاده است، اگر شما نیاز به دیدن سریع مهم ترین اطلاعات در مورد سخت افزار یک کامپیوتر یا لپ تاپ داشته باشید، همه آن را بدون وقفه نشان می دهد! به طور خلاصه، من آن را توصیه می کنم بچه ها!

و همچنین، فراموش کردم چیزی در مورد SSE بنویسم. SSE را نمی توان فعال یا غیرفعال کرد. زیرا این دستورالعمل یا وجود دارد یا ندارد. به عنوان مثال، Hyper-threading را می توان فعال/غیرفعال کرد، اما SSE نمی تواند!

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

09.12.2016

No-EXecute (NX)

No-eXecute (NX) یک ویژگی پردازنده است که به صفحات حافظه اجازه می دهد تا به عنوان فاقد کد اجرایی علامت گذاری شوند. این ویژگی به CPU اجازه می دهد تا از سیستم در برابر حملات بدافزار محافظت کند. NX از قرار دادن کدهای مخرب در مناطق قابل دسترس حافظه جلوگیری می کند. ویندوز 8 به سیستم‌ها نیاز دارد که پردازنده‌هایی داشته باشند که NX را پشتیبانی می‌کنند و NX باید برای اطمینان از امنیت مناسب و جلوگیری از آسیب‌پذیری‌های احتمالی فعال باشد.

در این بخش اصطلاح NXبه طور مستقیم به بیت پردازنده NX، که توسط AMD تعریف می شود، یا بیت پردازنده XD معادل، که توسط اینتل برای پشتیبانی از ویژگی پیشگیری از اجرای داده ها (DEP) مایکروسافت ویندوز تعریف شده است، اشاره دارد.

DEP به جلوگیری از اجرای کدهای مخرب از صفحات حافظه کمک می کند. حاوی داده ها نسخه 32 بیتی ویندوز از یکی از ویژگی های زیر برای پشتیبانی از DEP استفاده می کند:

    ویژگی پردازنده برای محافظت از صفحات در برابر اجرای کدهای اجرایی (NX)

    تابع بیت eXecute Disable (XD) که توسط اینتل تعریف شده است.

برای استفاده از این ویژگی های پردازنده، پردازنده x86 (32 بیتی) باید در حالت Physical Address Extension (PAE) اجرا شود. نسخه 64 بیتی ویندوز از ویژگی پردازنده NX برای پسوندهای 64 بیتی و مقادیر فیلد مجوز خاص PTE برای خانواده پردازنده Intel Itanium (IPF) استفاده می کند.

علاوه بر DEP، Address Space Layout Randomization (ASLR) تصاویر اجرایی را هنگام بوت شدن سیستم به مکان های تصادفی منتقل می کند و اجرای عمدی کدهای مخرب را دشوارتر می کند. ASLR و DEP تنها زمانی موثر هستند که با هم استفاده شوند. برای اینکه این دو اقدام مهم امنیتی ویندوز به طور موثر کار کنند، NX باید فعال باشد. برای اطلاعات بیشتر، به کنترل‌های امنیتی نرم‌افزار ویندوز توسط فروشندگان مستقل نرم‌افزار مراجعه کنید.

پسوند آدرس فیزیکی (PAE)

برای استفاده از ویژگی پردازنده NX، پردازنده باید در حالت Extension آدرس فیزیکی (PAE) اجرا شود. PAE یک ویژگی پردازنده است که به پردازنده های x86 اجازه می دهد تا به بیش از 4 گیگابایت حافظه فیزیکی در نسخه های ویندوزی که از این ویژگی پشتیبانی می کنند دسترسی داشته باشند. معماری های پردازنده Intel Itanium و x64 به طور طبیعی می توانند به بیش از 4 گیگابایت حافظه فیزیکی دسترسی داشته باشند و بنابراین معادل PAE ندارند. PAE در نسخه های 32 بیتی ویندوز که منحصراً بر روی سیستم های x86 اجرا می شوند پشتیبانی می شود.

اگر عملکرد DEP در سیستمی فعال باشد که دارای پردازنده ای است که از عملکرد NX پشتیبانی می کند، عملکرد PAE به طور خودکار فعال می شود.

پسوندهای SIMD (SSE2)

تمامی پردازنده هایی که از NX پشتیبانی می کنند از پسوندهای SIMD 2 (SSE2) نیز پشتیبانی می کنند. SSE2 یک مجموعه دستورالعمل اختیاری پردازنده SIMD است. AMD همچنین پشتیبانی از SSE2 را در خطوط Opteron و Athlon 64 پردازنده های AMD64 خود دارد. تمامی پردازنده هایی که از NX پشتیبانی می کنند از SSE2 نیز پشتیبانی می کنند. بسیاری از برنامه های کاربردی ویندوز 8 دارای مسیرهای کد با مجموعه دستورالعمل SSE2 هستند. SSE2 یک الزام برای ویندوز 8 است.

منطقه برنامه

تمام پردازنده های مدرن از عملکرد NX پشتیبانی می کنند. ویژگی NX را می توان در بایوس غیرفعال کرد. بر اساس داده‌های تله‌متری موجود، یک درصد از تمام سیستم‌های دارای Windows® 7 به دلیل تنظیم نادرست BIOS، NX غیرفعال شده‌اند.

NX برای اجرا در نسخه های 32 بیتی ویندوز به پردازنده هایی نیاز دارد که از PAE پشتیبانی می کنند. تمام پردازنده های 64 بیتی از NX پشتیبانی می کنند زیرا از AWE پشتیبانی می کنند. بنابراین، استفاده از پردازنده‌های 32 بیتی قدیمی‌تر که از PAE پشتیبانی نمی‌کنند، بر WOA یا سرور ویندوز تأثیر نمی‌گذارد (ویندوز سرور 2012 فقط یک سیستم 64 بیتی است). نیاز پردازنده بر مشتریانی که از سیستم‌ها یا سیستم‌های مدرن استفاده می‌کنند که الزامات لوگوی ویندوز 7 را برآورده می‌کنند تأثیر نمی‌گذارد، زیرا این سیستم‌ها دارای پردازنده‌های 32 بیتی با قابلیت PAE هستند که از ویژگی NX و فعال‌سازی آن نیز پشتیبانی می‌کنند. این تنها بر تعداد کمی از مشتریانی که ویندوز 7 را روی پردازنده های 32 بیتی بسیار قدیمی بدون پشتیبانی PAE/NX اجرا می کنند، تأثیر می گذارد.

برای ویندوز 8 و ویندوز سرور 2012، PAE مورد نیاز است. این الزام بر تعداد کمی از کاربرانی که از سخت افزار قدیمی استفاده می کنند که از PAE پشتیبانی نمی کنند، تأثیر می گذارد. هنگامی که ویندوز 8 روی ماشین های مجازی (VM) با پیکربندی نادرست نصب می شود، خطاها رخ می دهد. نصب ویندوز با خطای 0xc0000260 انجام نمی شود و به ویندوز 7 برمی گردد.

ویژوال استودیو دستورالعمل های SSE2 را به طور پیش فرض ارائه می دهد. برنامه‌هایی که به این دستورالعمل‌ها دسترسی دارند، در سیستم‌هایی با پردازنده‌های قدیمی‌تر که از SSE2 پشتیبانی نمی‌کنند، شکست می‌خورند، همانطور که در دستورالعمل‌های SSE2 توضیح داده شده است، زمانی که گزینه /arch:SSE مشخص شده باشد، تولید می‌شوند.

الزامات پشتیبانی

این بخش اقداماتی را تشریح می‌کند که تأیید می‌کند پردازنده‌های سیستم‌های دارای ویندوز 8 از الزامات PAE، NX و SSE2 پشتیبانی می‌کنند.

الزامات لوگوی ویندوز 8

الزامات گواهی سخت افزار ویندوز 8 مستلزم آن است که همه درایورها در ارتباط با حفاظت از اجرای Data Execution Prevention کار کنند تا از رفتار صحیح دستگاه و سیستم درایور اطمینان حاصل کنند. درایورها نباید کد را از پشته، استخر صفحه شده یا استخر جلسه اجرا کنند. هنگامی که حالت PAE فعال است، درایورها نباید بوت شوند. سیستم عامل سیستم باید NX را فعال کرده باشد و خط مشی DEP باید روی آن تنظیم شود همیشه خاموش. یک آزمایش گواهی برای تأیید اینکه سیستم با این نیاز پشتیبانی NX مطابقت دارد، گنجانده شده است.

برای اطلاعات بیشتر، الزامات گواهی سخت افزار ویندوز را ببینید.

بررسی سازگاری سخت افزار هنگام نصب ویندوز

Windows Setup شامل یک بررسی کننده سازگاری سخت افزاری برای بررسی پشتیبانی PAE، NX و SSE2 در سیستمی است که نصب می کنید. سیستم‌هایی که الزامات پشتیبانی پردازنده برای PAE، NX و SSE2 را برآورده نمی‌کنند، به‌عنوان بلوک‌های سخت‌افزاری برای ویندوز 8 در گزارش مشکلات سازگاری علامت‌گذاری می‌شوند و پیامی را نمایش می‌دهند. پردازنده کامپیوتر شما با ویندوز 8 سازگار نیست.

برنج. 1. پیغام خطا مربوط به ناسازگاری پردازنده

توجه داشته باشید

این بررسی الزامات پشتیبانی فقط در دستیار راه‌اندازی و ارتقاء ویندوز جدید موجود است. ویندوز 8 شامل یک نسخه جایگزین از Setup در پوشه Sources در رسانه نصب است که این بررسی را انجام نمی دهد. مشتریانی که سعی می‌کنند از این نسخه جایگزین Windows Setup در سیستمی استفاده کنند که الزامات پشتیبانی PAE/NX/SSE2 را برآورده نمی‌کند، در حین نصب یک پیام خطا مشاهده می‌کنند و به نسخه قبلی سیستم عامل بازگردانده می‌شوند.

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

بهبود کرنل

برای اطمینان از اینکه ویندوز 8 برای پشتیبانی از دستورالعمل‌های SSE2 و ویژگی‌های NX مورد نیاز است، هسته ویندوز 8 وجود این ویژگی‌ها را در طول مقداردهی اولیه بررسی می‌کند. سیستم‌هایی که از NX یا SSE2 پشتیبانی نمی‌کنند، نمی‌توانند هسته ویندوز 8 را مقداردهی اولیه کنند. در سیستم‌هایی که می‌توانند NX را در میان‌افزار غیرفعال کنند، این تنظیم لغو می‌شود تا سیستم‌افزاری که به درستی پیکربندی نشده است باعث خرابی بوت نشود. تلاش برای بوت کردن یک سیستم بدون پشتیبانی NX یا SSE2 منجر به یک خطای بحرانی می شود. در یک سیستم 32 بیتی، کاربران کد خطا UNSUPPORTED_PROCESSOR (0x0000005D) را به همراه 4 خط اطلاعات دریافت می کنند:

    خط 1 - کدی که عملکرد گم شده و شناسه CPU را نشان می دهد

    خطوط 2 - 4 - خطوط شناسه تامین کننده

در یک سیستم 64 بیتی، خطای بحرانی همان کد UNSUPPORTED_PROCESSOR را در یک سیستم 32 بیتی به همراه چهار خط اطلاعات زیر نشان می دهد:

    خط 1 - محتویات ثبت تابع استاندارد

    خط 2 - محتویات ثبت توابع توسعه یافته

    خطوط 3 - 4 - هر دو با مقدار 0

پرسش و پاسخ

چگونه بفهمم که سیستم من از NX یا SSE2 پشتیبانی می کند؟

می توانید از ابزار خط فرمان Coreinfo برای به دست آوردن اطلاعات در مورد پردازنده سیستم و مشاهده ورودی های PAE، NX و SSE2 در لیست خروجی استفاده کنید. سمبل * در کنار نام ویژگی پشتیبانی شده ظاهر می شود. سمبل - اگر عملکرد پشتیبانی نشود نمایش داده می شود. مثلا:

Coreinfo نسخه 3.04 - اطلاعات رونوشت در مورد CPU سیستم و توپولوژی حافظه حق چاپ (C) 2008-2012 Mark Russinovich Sysinternals - www.sysinternals.com AMD Athlon(tm) 64 X2 Dual Core Processor 4600+ x86 Family 15 Model 75 Stepping AMD 2, Aut HTT* Hyperthreading فعال HYPERVISOR - Hypervisor موجود است VMX - از مجازی سازی به کمک سخت افزار اینتل SVM پشتیبانی می کند * از مجازی سازی به کمک سخت افزار AMD EM64T پشتیبانی می کند * از حالت 64 بیتی SMX پشتیبانی می کند - از اجرای مورد اعتماد اینتل پشتیبانی می کند SKINIT - پشتیبانی از AMD SpeedSpeed ​​- SKINIT ENSP. * پشتیبانی از محافظت از صفحه بدون اجرا PAGE1GB - پشتیبانی از صفحات بزرگ 1 گیگابایتی PAE * پشتیبانی از > آدرس های فیزیکی 32 بیتی PAT * پشتیبانی از جدول صفات صفحه PSE * پشتیبانی از صفحات 4 مگابایتی PSE36 * پشتیبانی از > آدرس 32 بیتی 4 مگابایت صفحات PGE * پشتیبانی از جهانی bit in page table SS - پشتیبانی از bus snooping برای عملیات حافظه نهان VME * پشتیبانی از حالت Virtual-8086 FPU * پیاده سازی دستورالعمل های ممیز شناور i387 MMX * پشتیبانی از مجموعه دستورات MMX MMXEXT * پیاده سازی برنامه های افزودنی AMD MMX 3DNOW * پشتیبانی از 3DNow! دستورالعمل 3DNOWEXT * از 3DNow پشتیبانی می کند! دستورالعمل های برنامه افزودنی SSE * پشتیبانی از برنامه های افزودنی SIMD پخش جریانی SSE2 * پشتیبانی از پخش جریانی برنامه های افزودنی SIMD 2 SSE3 * پشتیبانی از پخش جریانی برنامه های افزودنی SIMD 3 SSSE3 - پشتیبانی از برنامه های افزودنی SIMD 3 SSE4.1 - پشتیبانی از پخش برنامه های افزودنی SIMD SIMD -SMD4. ……. .……..

اگر PAE به عنوان یک ویژگی پشتیبانی نشده در خروجی فرمان Coreinfo نشان داده شود، پردازنده سیستم از PAE پشتیبانی نمی کند و نمی تواند NX را پشتیبانی کند. اگر PAE به عنوان پشتیبانی نشان داده شود، اما ویژگی NX در خروجی فرمان Coreinfo پشتیبانی نمی شود:

    اگر پردازنده از NX پشتیبانی کند، ممکن است تنظیمات بایوس آن سیستم برای پشتیبانی از NX به درستی پیکربندی نشده باشد.

اگر NX در سیستم پشتیبانی می شود، چگونه NX را فعال کنم؟

با راهنمای سازنده سیستم مشورت کنید و به بایوس سیستمی که از NX پشتیبانی می کند بروید تا گزینه NX یا XD را در زیر پیدا کنید. ایمنیو سپس پشتیبانی NX را فعال کنید. اگر سیستم شما تنظیمات BIOS را ندارد که پشتیبانی NX را فعال می کند، ممکن است لازم باشد برای به روز رسانی BIOS با سازنده تماس بگیرید.

توجه داشته باشید

اگر NX در یک سیستم 64 بیتی پشتیبانی می شود، تنظیمات پیکربندی سیستم به شما اجازه نمی دهد که خط مشی DEP را روی آن تنظیم کنید. همیشه خاموش. برای اطلاعات بیشتر در مورد پیکربندی سیستم DEP، نگاه کنید.

برای بوت موفقیت آمیز ویندوز 8، پردازنده های سیستم باید از NX و SSE2 پشتیبانی کنند. اگر سیستم از این ویژگی ها پشتیبانی می کند اما تنظیمات به درستی پیکربندی نشده اند، این تنظیمات قبل از بوت شدن سیستم توسط هسته لغو می شوند.

اگر به دلیل خطای 0x0000260 نتوانستید ویندوز 8 را روی ماشین مجازی نصب کنید، چه باید کرد؟

اگر ماشین مجازی روی سیستمی میزبانی می‌شود که از NX پشتیبانی می‌کند، باید PAE/NX را در تنظیمات VM یا Configuration Manager هنگام راه‌اندازی ماشین مجازی Windows 8 فعال کنید. راهنمای نصب محصول مجازی سازی

توجه داشته باشید

اگر می‌خواهید ویندوز 8 را روی یک ماشین مجازی نصب کنید که روی یک سیستم مبتنی بر ویندوز میزبانی می‌شود و NX غیرفعال است، باید قبل از فعال کردن PAE/NX برای ماشین مجازی، دستورالعمل‌های داخل و فعال کردن NX را در سیستم دنبال کنید.

دستورالعمل های SSE2 مخفف Streaming SIMD Extensions 2 است. فقط در خط پردازنده های Pentium 4 ظاهر می شود. فناوری SSE2 مجموعه ای از دستورالعمل ها است که شامل 144 دستورالعمل است و برای همه برنامه های مدرن ضروری است.

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

نحوه فعال کردن SSE2

اگر پردازنده شما از این فناوری پشتیبانی نمی کند، نمی توانید آن را فعال کنید. مطمئن شوید که مدل شما جدیدتر از موارد زیر است:

  • IA-32
  • تمام پردازنده های AMD تا Athlon 64 از sse2 پشتیبانی نمی کنند
  • پنتیوم 1، 2، 3. همانطور که در بالا گفته شد، پشتیبانی فقط در 4 ظاهر شد.
  • ترانس متا کروزوئه
  • VIA C3

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

همچنین، برای اطمینان از در دسترس بودن پشتیبانی، برنامه "CPU-Z" را نصب کنید. برای استفاده از برنامه برای درک اینکه آیا sse2 پشتیبانی می شود، به ستون "دستورالعمل ها" توجه کنید. باید فناوری هایی را که پردازنده شما پشتیبانی می کند فهرست کند.

برای فعال کردن آن در بایوس، موارد زیر را انجام دهید:

کامپیوتر را مجددا راه اندازی کنید و در لحظه ای که تازه روشن می شود، Del یا F1 را چندین بار فشار دهید (بسته به مادربرد). بعد از اینکه موفق شدید وارد BIOS شوید، به "SSE Tweaks" بروید و سپس باید "SSE Enable" را تنظیم کنید. F10، Y، Enter را فشار دهید.

پردازنده از SSE2 پشتیبانی نمی کند

البته اگر قابلیت های برنامه هایی که تحت ویندوز XP ساخته شده اند را در نظر نگیرید، کامپیوتر شما دیگر به درد نمی خورد. لازم نیست بقیه موارد را نصب کنید.

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

با این حال، اگر نمی‌توانید رایانه دیگری بخرید، همچنان می‌توانید روی آن کار کنید.

نحوه دور زدن چک sse2

این کار قابل انجام است، اما برای هر برنامه لازم است که بای پس جداگانه انجام شود. اطلاعات نادرست زیادی در اینترنت "شبیه ساز SSE2" وجود دارد - وجود ندارد. شما فریفته دانلود ویروس ها، اشتراک در پیامک و غیره می شوید. برای دور زدن چک، باید بیشتر کدهای هر برنامه را بازنویسی کنید، پس از آن به درستی کار نخواهد کرد. همانطور که متوجه شدید، نیازی به انجام این کار نیست، زیرا این اتلاف وقت است.

مرورگرهای پردازنده بدون پشتیبانی از SSE2

برای مدت طولانی، مانند شما، من نمی خواستم لپ تاپ خود را به دلیل SSE2 تغییر دهم، اما آنها مرا شکست دادند (خطاها و اعلان ها). من هنوز مرورگرهایی دارم (گوگل کروم، موزیلا فایرفاکس و اپرا) که به این مجموعه دستورالعمل ها نیاز ندارند. در اینجا من با شما به اشتراک می گذارم - دانلود کنید

توجه داشته باشید، اخیراً، اسپمرها در نظرات، ظاهراً از طرف من، می نویسند که نسخه قدیمی است و پیوندی باقی می گذارد - من این کار را انجام نمی دهم. اگر فایل را دوباره آپلود کنم، لینک موجود در مقاله را تغییر می دهم. بنابراین می توانید بدون ترس دانلود کنید.

برنامه هایی که نیازی به پشتیبانی ندارند را از کجا می توان دریافت کرد

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

بهترین مقالات در این زمینه