Diskussion:RMW-Befehl

aus Wikipedia, der freien Enzyklopädie
Dies ist die aktuelle Version dieser Seite, zuletzt bearbeitet am 12. April 2016 um 21:36 Uhr durch imported>CopperBot(644363) (Bot: Signaturnachtrag für Beitrag von 91.23.28.72: "AZ: Die Seite wurde neu angelegt: https://de.wikipedia.org/wiki/RMW-Befehl Ich möchte mal auf einen schwere…").
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

https://de.wikipedia.org/wiki/RMW-Befehl

Ich möchte mal auf einen schweren Fehler bei Wikipedia hinweisen: Das betrifft die Beschreibung der Read/Modify/Write Befehle

Laut Wikipedia: Ein Read-Modify-Write-Befehl bezeichnet in der Informatik einen atomaren Prozessorbefehl.....

Ein Wunschtraum, aber leider falsch. Bei den Cortex M3 Prozessoren ist ein RMW Befehl "leider" NICHT atomar. Mit diesem Problem habe ich ständig zu kämpfen.

Ein Interrupt während des RMW kann zu katastrophalen Folgen führen. Nicht umsonst wurden dazu spezielle Mnemonics und Maßnahmen bereit gestellt.

Selbst ein Bit Setzen oder Löschen ist mit normalem Code nicht atomar. Dafür hat man das recht umständliche Bitbanding eingeführt.

Der Hinweis mit dem 6502 Prozessor bei Wiki ist aber absolut richtig, dieser konnte nämlich Speicherstellen inc bzw. decrementieren und zwar atomar. Das kann ein Cortex M3 "leider" nicht.

Die hochgelobte Arm Architektur hat hier leider massive Probleme. (nicht signierter Beitrag von 91.23.28.72 (Diskussion) 23:06, 12. Apr. 2016 (CEST))