Login
Newsletter
Werbung

Thema: JavaScript-Engine V8 ein Jahr nach Spectre

10 Kommentar(e) || Alle anzeigen ||  RSS || Kommentieren
Kommentare von Lesern spiegeln nicht unbedingt die Meinung der Redaktion wider.
1
Von Ghul am Fr, 26. April 2019 um 15:20 #

Ich hatte noch keine Zeit das im Text angegebene Paper "Spectre is here to stay" zu lesen, daher stelle ich mal folgende Frage:

Ist es prinzipiell möglich, CPUs mit Out-of-order execution zu bauen, die gegen Spectre immun bzw. sicher sind?

Und falls ja, was muss dafür getan werden?
Welche Lösungsansätze plant man hierfür in der Hardware?

  • 1
    Von ManInTheMiddle am Fr, 26. April 2019 um 15:42 #

    Ja.

    Man muß nur für den Out-of-order Code dieselben Maßstäbe wie für den normalen Code anlegen.

    Dann würde ein Spectre-Ausnutzen-Versuch eine Access Violation verursachen und der Process vom OS abgebrochen.

    • 1
      Von Ghul am Fr, 26. April 2019 um 16:28 #

      In der Out-of-order execution CPU läuft normaler Code.

      0
      Von arce am Sa, 27. April 2019 um 12:42 #

      > Man muß nur für den Out-of-order Code dieselben
      > Maßstäbe wie für den normalen Code anlegen.

      > Dann würde ein Spectre-Ausnutzen-Versuch eine Access
      > Violation verursachen und der Process vom OS
      > abgebrochen.

      Access Violations treten bei speculativen Cde dauernd auf, weil es letztendlich eben kein gültiger Code ist, sondern etwas was sich die CPU ausgedacht hat. Aber die Access Violation muss geprüft und die Speculative Codeausführung muss abgebrochen werden bevor der Speicher-Zugriff stattfindet, die Caches geladen werden oder andere Seiteneffekte stattfinden.

      Bedeutet aber, dass die CPU für jeden Befehl jederzeit den passenden Prozess kennen muss und vor jedem Speicherzugriff/Seiteneffekt prüfen muss, ob das für den Prozess zulässig ist. Das ist aufwändig und langsam gegenüber dem bisherigen Mantra, dass die CPU überall zugreifen darf, was ihr in den Sinn kommt.

      Dann kann man auch gleich über Prozesslokale Caches nachdenken, das heisst der zugreifende Prozess ist Teil der Speicheradresse und ein Zugriff unterschiedlicher Prozesse auf die selbe Speicheradresse führt damit zu einem Cache-Miss.

      Grüße
      arce

    1
    Von Jan2 am So, 28. April 2019 um 17:20 #

    Ja, es gibt Prozessoren die haben diese Probleme nicht.
    ZB. die Sparc-Prozessoren von Sun, oder die IBM-Prozessoren.
    Die sind aber auch wesentlich kostenintensiver als der Intel-Ramsch.

    Intel könnte durchaus schon den Unsinn abstellen, aber warum der Ramsch
    verkauft sich ja auch so.

Pro-Linux
Unterstützer werden
Neue Nachrichten
Werbung