ΠΠ»Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ² Π½Π° ΡΠΈΡΠΎΠΊΠΎΠΌ ΡΠΏΠ΅ΠΊΡΡΠ΅ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡ Armv8-A (Cortex-A)
ΠΠ°ΠΉΠ΄Π΅Π½Π½Π°Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠ°ΠΌΠΈ Google ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ Π² Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°Ρ ARM ΠΏΠΎΠ»ΡΡΠΈΠ»Π° ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Straight-Line Speculation (SLS) ΠΈ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ΅ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΠ΅ CVE-2020-13844. ΠΠΎ ΡΠ»ΠΎΠ²Π°ΠΌ ARM, ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ SLS β ΡΡΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠΎΡΠΌ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Spectre, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ (Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΡ Meltdown) ΡΡΠ°Π»ΠΎ ΡΠΈΡΠΎΠΊΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ Π² ΡΠ½Π²Π°ΡΠ΅ 2018 Π³ΠΎΠ΄Π°. ΠΠ½Π°ΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, ΡΡΠΎ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ Π² ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ°Ρ ΡΠΏΠ΅ΠΊΡΠ»ΡΡΠΈΠ²Π½ΠΎΠ³ΠΎ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Ρ Π°ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎ Π±ΠΎΠΊΠΎΠ²ΡΠΌ (ΠΏΠΎΠ±ΠΎΡΠ½ΡΠΌ) ΠΊΠ°Π½Π°Π»Π°ΠΌ.
Π‘ΠΏΠ΅ΠΊΡΠ»ΡΡΠΈΠ²Π½ΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΡΠ΅Π±ΡΡΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ Π·Π°ΡΠ°Π½Π΅Π΅ ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌ Π²Π΅ΡΠ²ΡΠΌ, Ρ ΠΎΡΡ Π²ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΈ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΎΡΠ±ΡΠΎΡΠ΅Π½Ρ ΠΊΠ°ΠΊ Π½Π΅Π½ΡΠΆΠ½ΡΠ΅. ΠΡΠ°ΠΊΠΈ ΠΏΠΎ ΠΏΠΎΠ±ΠΎΡΠ½ΡΠΌ ΠΊΠ°Π½Π°Π»Π°ΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΊΡΠ°ΡΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π΄ΠΎ ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΡΠ½ΠΈΡΡΠΎΠΆΠ΅Π½ΠΈΡ. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΌΡ ΠΈΠΌΠ΅Π΅ΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ ΠΈ ΡΠΈΡΠΊ ΡΡΠ΅ΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ .
ΠΡΠ°ΠΊΠ° Straight-Line Speculation Π½Π° ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΎΠΉ ARM Π·Π°ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ Π²ΡΡΠΊΠΈΠΉ ΡΠ°Π· ΠΏΠΎΡΠ»Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΏΠΎΡΠΎΠΊΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΡ Π½Π° ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² ΠΏΠ°ΠΌΡΡΠΈ, Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌ Π² Π½ΠΎΠ²ΠΎΠΌ ΠΏΠΎΡΠΎΠΊΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄. ΠΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ Π½Π΅ ΡΠ°ΠΌΡΠΉ Π»ΡΡΡΠΈΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π²ΡΠ±ΠΎΡΠ° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΡΠ΅ΠΌ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ.
Π ΡΠ΅ΡΡΠΈ ARM, ΠΎΠ½Π° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π²ΡΠΏΡΡΡΠΈΠ»Π° ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΠΈΡΠΊΠ° ΡΡΠ΅ΡΠΊΠΈ ΡΠ΅ΡΠ΅Π· Π°ΡΠ°ΠΊΡ Π½Π° Straight-Line Speculation, Π½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΠ»Π° ΠΏΠ°ΡΡΠΈ Π΄Π»Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ FreeBSD, OpenBSD, Trusted Firmware-A ΠΈ OP-TEE ΠΈ Π²ΡΠΏΡΡΡΠΈΠ»Π° ΠΏΠ°ΡΡΠΈ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠ² GCC ΠΈ LLVM.
Π’Π°ΠΊΠΆΠ΅ Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π·Π°ΡΠ²ΠΈΠ»ΠΈ, ΡΡΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠ°ΡΡΠ΅ΠΉ Π½Π΅ ΡΠΊΠ°ΠΆΠ΅ΡΡΡ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ARM-ΠΏΠ»Π°ΡΡΠΎΡΠΌ, ΠΊΠ°ΠΊ ΡΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ Π½Π° x86-ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°Ρ Intel Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ Spectre ΠΈ Meltdown. ΠΠΏΡΠΎΡΠ΅ΠΌ, ΠΎΠ± ΡΡΠΎΠΌ ΠΌΡ ΡΠΌΠΎΠΆΠ΅ΠΌ ΡΠ·Π½Π°ΡΡ ΠΎΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ², ΡΡΠΎ Π΄Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΈΠ²Π½ΡΡ ΠΊΠ°ΡΡΠΈΠ½Ρ ΠΎ Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: 3dnews.ru