AMD рдиреЗ AMD Zen 3 CPUs рдЪреНрдпрд╛ Specter-STL рд╣рд▓реНрд▓реНрдпрд╛рдЪреНрдпрд╛ рд╕рдВрднрд╛рд╡реНрдп рднреЗрджреНрдпрддреЗрдЪреА рдкреБрд╖реНрдЯреА рдХреЗрд▓реА рдЖрд╣реЗ

AMD рдиреЗ Zen 3 рдорд╛рд▓рд┐рдХрд╛ рдкреНрд░реЛрд╕реЗрд╕рд░рдордзреНрдпреЗ рд▓рд╛рдЧреВ рдХреЗрд▓реЗрд▓реНрдпрд╛ PSF (рдкреНрд░реЗрдбрд┐рдХреНрдЯрд┐рд╡ рд╕реНрдЯреЛрдЕрд░ рдлреЙрд░рд╡рд░реНрдбрд┐рдВрдЧ) рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рди рддрдВрддреНрд░рдЬреНрдЮрд╛рдирд╛рдЪреНрдпрд╛ рд╕реБрд░рдХреНрд╖реЗрдЪреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдгрд╛рд░рд╛ рдЕрд╣рд╡рд╛рд▓ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХреЗрд▓рд╛ рдЖрд╣реЗ. рдЕрднреНрдпрд╛рд╕рд╛рдиреЗ рдореЗ реирежрезрео рдордзреНрдпреЗ рдУрд│рдЦрд▓реНрдпрд╛ рдЧреЗрд▓реЗрд▓реНрдпрд╛ Spectre-STL (Spectre-v4) рд╣рд▓реНрд▓рд╛ рдкрджреНрдзрддреАрдЪреНрдпрд╛ рд▓рд╛рдЧреВ рд╣реЛрдгреНрдпрд╛рдЪреА рд╕реИрджреНрдзрд╛рдВрддрд┐рдХрд░рд┐рддреНрдпрд╛ рдкреБрд╖реНрдЯреА рдХреЗрд▓реА рдЖрд╣реЗ. PSF рддрдВрддреНрд░рдЬреНрдЮрд╛рди, рдкрд░рдВрддреБ рд╡реНрдпрд╡рд╣рд╛рд░рд╛рдд, рдЖрдХреНрд░рдордгрд╛рд╕ рдиреЗрддреГрддреНрд╡ рдХрд░рдгреНрдпрд╛рд╕ рд╕рдХреНрд╖рдо рдЕрд╕рд▓реЗрд▓реЗ рдХреЛрдгрддреЗрд╣реА рдХреЛрдб рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдЕрджреНрдпрд╛рдк рд╕рд╛рдкрдбрд▓реЗрд▓реЗ рдирд╛рд╣реАрдд рдЖрдгрд┐ рдПрдХреВрдг рдзреЛрдХреНрдпрд╛рдЪреЗ рдореВрд▓реНрдпрдорд╛рдкрди рдирдЧрдгреНрдп рдЖрд╣реЗ.

рдЖрдореНрд╣рд╛рд▓рд╛ рдЖрдард╡реВ рджреНрдпрд╛ рдХреА Specter-v4 (Speculative Store Bypass) рд╣рд▓реНрд▓рд╛ рд╣рд╛ рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рдкрддреНрддрд╛ рд╡рд╛рдкрд░реВрди рдкрд░реНрдпрд╛рдпреА рд▓реЗрдЦрди рдЖрдгрд┐ рд╡рд╛рдЪрди рдСрдкрд░реЗрд╢рдиреНрд╕рд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛рдирд╛ рдСрдкрд░реЗрд╢рдиреНрд╕рдЪреНрдпрд╛ рд╕рдЯреНрдЯреЗрдмрд╛рдЬ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдЪрд╛ рдкрд░рд┐рдгрд╛рдо рдХрд╛рдвреВрди рдЯрд╛рдХрд▓реНрдпрд╛рдирдВрддрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЕрд╢реЗрдордзреНрдпреЗ рд╕реЗрдЯ рдХреЗрд▓реЗрд▓рд╛ рдбреЗрдЯрд╛ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХрд░рдгреНрдпрд╛рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдЖрд╣реЗ. рдЬреЗрд╡реНрд╣рд╛ рд░реАрдб рдСрдкрд░реЗрд╢рди рд▓рд┐рд╣рд┐рдгреНрдпрд╛рдЪреНрдпрд╛ рдСрдкрд░реЗрд╢рдирдЪреЗ рдЕрдиреБрд╕рд░рдг рдХрд░рддреЗ (рдЙрджрд╛. mov [rbx + rcx], 0x0; mov rax, [rdx + rsi]), рд╡рд╛рдЪрд▓реЗрд▓реНрдпрд╛ рдкрддреНрддреНрдпрд╛рдЪрд╛ рдСрдлрд╕реЗрдЯ рдЕрд╢рд╛рдЪ рдСрдкрд░реЗрд╢рдиреНрд╕рдореБрд│реЗ рдЖрдзреАрдЪ рдУрд│рдЦрд▓рд╛ рдЬрд╛рдК рд╢рдХрддреЛ (рд╡рд╛рдЪрди рдСрдкрд░реЗрд╢рдиреНрд╕ рдЕрдзрд┐рдХ рд╡рд╛рд░рдВрд╡рд╛рд░ рдХреЗрд▓реЗ рдЬрд╛рддреЗ рдЖрдгрд┐ рдХреЕрд╢реЗрдордзреВрди рд╡рд╛рдЪрди рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ) рдЖрдгрд┐ рдкреНрд░реЛрд╕реЗрд╕рд░ рд░рд╛рдЗрдЯрдЪреНрдпрд╛ рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рдСрдлрд╕реЗрдЯрдЪреА рдЧрдгрдирд╛ рд╣реЛрдгреНрдпрд╛рдЪреА рдкреНрд░рддреАрдХреНрд╖рд╛ рди рдХрд░рддрд╛ рд░рд╛рдЗрдЯрдЪреНрдпрд╛ рдЖрдзреА рд╡рд╛рдЪрди рдХрд░реВ рд╢рдХрддреЛ.

рд╣реЗ рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рд╕реНрдЯреЛрдЕрд░ рдСрдкрд░реЗрд╢рди рдЕрджреНрдпрд╛рдк рдкреВрд░реНрдг рдЭрд╛рд▓реЗрд▓реЗ рдирд╕рддрд╛рдирд╛ рдХрд╛рд╣реА рдкрддреНрддреНрдпрд╛рд╡рд░ рдЬреБрдиреНрдпрд╛ рдореВрд▓реНрдпрд╛рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╡рд╛рдЪрди рд╕реВрдЪрдирд╛ рджреЗрддреЗ. рдЕрдВрджрд╛рдЬ рддреНрд░реБрдЯреА рдЕрд╕рд▓реНрдпрд╛рд╕, рдЕрдпрд╢рд╕реНрд╡реА рд╕рдЯреНрдЯрд╛ рдСрдкрд░реЗрд╢рди рдЯрд╛рдХреВрди рджрд┐рд▓реЗ рдЬрд╛рдИрд▓, рдкрд░рдВрддреБ рддреНрдпрд╛рдЪреНрдпрд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдЪреЗ рдЯреНрд░реЗрд╕ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЕрд╢реЗрдордзреНрдпреЗ рд░рд╛рд╣рддреАрд▓ рдЖрдгрд┐ рдкреНрд░рд╡реЗрд╢рд╛рддреАрд▓ рдмрджрд▓рд╛рдВрдЪреНрдпрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдгрд╛рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдХреЕрд╢реЗрдЪреА рд╕рд╛рдордЧреНрд░реА рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдкрджреНрдзрддреАрдВрдкреИрдХреА рдПрдХрд╛рджреНрд╡рд╛рд░реЗ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХреЗрд▓реА рдЬрд╛рдК рд╢рдХрддреЗ. рдХреЕрд╢реНрдб рдЖрдгрд┐ рдЕрдирдХреЕрд╢реНрдб рдбреЗрдЯрд╛рд╕рд╛рдареА рд╡реЗрд│.

AMD Zen 3 рдкреНрд░реЛрд╕реЗрд╕рд░рдордзреНрдпреЗ рдЬреЛрдбрд▓реЗрд▓реЗ, PSF STLF (рд╕реНрдЯреЛрдЕрд░-рдЯреВ-рд▓реЛрдб-рдлреЙрд░рд╡рд░реНрдбрд┐рдВрдЧ) рд▓рд╛ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЭ рдХрд░рддреЗ, рдЬреЗ рд╡рд╛рдЪрди рдЖрдгрд┐ рд▓реЗрдЦрди рдСрдкрд░реЗрд╢рдиреНрд╕рдордзреАрд▓ рдирд╛рддреЗрд╕рдВрдмрдВрдзрд╛рдЪрд╛ рдЕрдВрджрд╛рдЬ рдШреЗрдКрди рд╡рд╛рдЪрди рдСрдкрд░реЗрд╢рдиреНрд╕ рд╕рдЯреНрдЯреЗрдмрд╛рдЬрдкрдгреЗ рдХрд░рддреЗ. рдХреНрд▓рд╛рд╕рд┐рдХ STLF рд╡рд╛рдкрд░рддрд╛рдирд╛, рдкреНрд░реЛрд╕реЗрд╕рд░ рдорд╛рдЧреАрд▓ "рд╕реНрдЯреЛрдЕрд░" рдХрдорд╛рдВрдбрдордзреВрди рдереЗрдЯ рдлреЙрд░рд╡рд░реНрдб рдХреЗрд▓реЗрд▓реНрдпрд╛ рдбреЗрдЯрд╛рд╡рд░ "рд▓реЛрдб" рдСрдкрд░реЗрд╢рди рдХрд░рддреЛ, рдкрд░рд┐рдгрд╛рдо рдкреНрд░рддреНрдпрдХреНрд╖рд╛рдд рдореЗрдорд░реАрдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓рд╛ рдЬрд╛рдгреНрдпрд╛рдЪреА рд╡рд╛рдЯ рди рдкрд╛рд╣рддрд╛, рдкрд░рдВрддреБ "рд▓реЛрдб" рдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реЗрд▓реЗ рдкрддреНрддреЗ рдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░реВрди рдШреЗрддреЛ. рдЖрдгрд┐ "рд╕реНрдЯреЛрдЕрд░" рдХрдорд╛рдВрдб рдЬреБрд│рддрд╛рдд. PSF рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рди рдкрддреНрддреНрдпрд╛рдЪреА рддрдкрд╛рд╕рдгреА рд╕рдЯреНрдЯрд╛ рдмрдирд╡рддреЗ рдЖрдгрд┐ рдкрддреНрддреНрдпрд╛рдЪреНрдпрд╛ рдорд╛рд╣рд┐рддреАрдЪреА рдЧрдгрдирд╛ рд╣реЛрдгреНрдпрд╛рдкреВрд░реНрд╡реА рдПрдХ "рд▓реЛрдб" рдСрдкрд░реЗрд╢рди рдХрд░рддреЗ рдЬрд░ рдПрдХрд╛рдЪ рдкрддреНрддреНрдпрд╛рдордзреНрдпреЗ рдлреЗрд░рдлрд╛рд░ рдХрд░рдгрд╛рд░реЗ рд╕реНрдЯреЛрдЕрд░/рд▓реЛрдб рдЬреЛрдбреА рдпрд╛рдкреВрд░реНрд╡реА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЕрд╕реЗрд▓. рдЕрдВрджрд╛рдЬ рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реНрдпрд╛рд╕, рд╕реНрдерд┐рддреА рдкрд░рдд рдЖрдгрд▓реА рдЬрд╛рддреЗ, рдкрд░рдВрддреБ рдбреЗрдЯрд╛ рдХреЕрд╢реЗрдордзреНрдпреЗ рд░рд╛рд╣рддреЛ.

PSF рд╡рд░ рд╣рд▓реНрд▓рд╛ рдХреЗрд╡рд│ рдПрдХрд╛ рд╕реНрддрд░рд╛рд╡рд░реАрд▓ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░рд╛рдВрдЪреНрдпрд╛ рдЪреМрдХрдЯреАрддрдЪ рд╢рдХреНрдп рдЖрд╣реЗ, рдХреЗрд╡рд│ рд╡рд░реНрддрдорд╛рди рдкреНрд░рдХреНрд░рд┐рдпреЗрдЪрд╛ рд╕рдВрджрд░реНрдн рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рддреЛ рдЖрдгрд┐ рдЕреЕрдбреНрд░реЗрд╕ рд╕реНрдкреЗрд╕ рдЖрдпрд╕реЛрд▓реЗрд╢рди рдкрджреНрдзрддреА рдХрд┐рдВрд╡рд╛ рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░ рд╕рдБрдбрдмреЙрдХреНрд╕ рдпрдВрддреНрд░рдгреЗрджреНрд╡рд╛рд░реЗ рдЕрд╡рд░реЛрдзрд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд, рдкреНрд░рдХреНрд░рд┐рдпреЗрддреАрд▓ рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░ рд╕рдБрдбрдмреЙрдХреНрд╕рд┐рдВрдЧ рдкрджреНрдзрддреА рд╕рдВрднрд╛рд╡реНрдпрддрдГ рд╕рдорд╕реНрдпреЗрдореБрд│реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реЛрдК рд╢рдХрддрд╛рдд. рд╣рд╛ рд╣рд▓реНрд▓рд╛ рдмреНрд░рд╛рдЙрдЭрд░, рдХреЛрдб рдПрдХреНрдЭрд┐рдХреНрдпреБрд╢рди рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ рдорд╢реАрдиреНрд╕ рдЖрдгрд┐ рдПрдХрд╛ рдкреНрд░рдХреНрд░рд┐рдпреЗрдд рддреГрддреАрдп-рдкрдХреНрд╖ рдХреЛрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдгрд╛рд░реНтАНрдпрд╛ JIT рд╕рд╛рд░рдЦреНрдпрд╛ рдкреНрд░рдгрд╛рд▓реАрдВрдирд╛ рдзреЛрдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЛ (рд╣рд▓реНрд▓рд╛ рдЕрд╡рд┐рд╢реНрд╡рд╛рд╕реВ рд╕рдБрдбрдмреЙрдХреНрд╕ рдХреЛрдбрд▓рд╛ рдЗрддрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдбреЗрдЯрд╛рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдорд┐рд│рд╡реВ рд╢рдХрддреЛ).

AMD рдиреЗ PSF рдкреВрд░реНрдгрдкрдгреЗ рдХрд┐рдВрд╡рд╛ рдирд┐рд╡рдбрдХрдкрдгреЗ рдЕрдХреНрд╖рдо рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЕрдиреЗрдХ рдкрджреНрдзрддреА рдкреНрд░рджрд╛рди рдХреЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд, рдкрд░рдВрддреБ рдмрд╣реБрддреЗрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рдВрд╕рд╛рдареА рдирдЧрдгреНрдп рдзреЛрдХрд╛ рд▓рдХреНрд╖рд╛рдд рдШреЗрддрд╛, рд╣реЗ рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рди рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рдЕрдХреНрд╖рдо рдХреЗрд▓реЗ рдЬрд╛рдК рдирдпреЗ рдЕрд╢реА рд╢рд┐рдлрд╛рд░рд╕ рдХреЗрд▓реА рдЖрд╣реЗ. рдЕрд╡рд┐рд╢реНрд╡рд╛рд╕реВ рдХреЛрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдгрд╛рд▒реНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдВрдирд╛ рдирд┐рд╡рдбрдХрдкрдгреЗ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рд╡реИрдпрдХреНрддрд┐рдХ рдереНрд░реЗрдбреНрд╕рд╕рд╣, тАЬSSBDтАЭ рдЖрдгрд┐ тАЬPSFDтАЭ MSR рдмрд┐рдЯреНрд╕ рд╕реЗрдЯ рдХрд░реВрди PSF рдЕрдХреНрд╖рдо рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдЖрд╣реЗ. Linux рдХрд░реНрдирд▓рд╕рд╛рдареА тАЬpsfdтАЭ рдЖрдгрд┐ тАЬnopsfdтАЭ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдкрд░реНрдпрд╛рдпрд╛рдВрдЪреНрдпрд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд╕рд╣ рдкреЕрдЪреЗрд╕ рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗрдд рдЬреЗ PSF рдХрд╕реЗ рдЪрд╛рд▓реВ рдЖрдгрд┐ рдмрдВрдж рдХрд░рд╛рдпрдЪреЗ рд╣реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛рдд.

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛