Hallo Ich bin gerade dabei für eine sicherheitsrelevante Anwendung (SIL2) einen GALPAT RAM Test zu implementieren. Jetzt stellt sich die Frage, was mit dem Software Stack passieren soll. Mitprüfen ist nicht so einfach, weil hier ja temporäre Werte liegen, die auch während des RAM Tests entstehen. Aber gar nicht prüfen ist wohl auch nicht richtig. Hat jemand sowas schon mal gemacht? Gruß + Danke Michael
Der Link in der Anfrage ist NICHT von mir. Wo immer das auch her kommt. Sorry Michael
Ich kenne den GALPAT RAM Test nicht und habe nichts auf die schnelle bei google gefunden... Wenn du nur ein einzelnes Byte oder Wort testen musst, dann kannst du folgendermaßen den kompletten RAM prüfen, inklusive Stack. Du kopierst das einzelne Byte / Wort in ein Register und testet die Ramzelle. Danach kopierst du das Register wieder zurück auf die RAM-Zelle. Davor solltest du natürlich die Interrupts sperren, damit eine Interruptfunktion nicht mit den Testwerten in der Ramzelle arbeitet.
Der schrieb: > Ich kenne den GALPAT RAM Test nicht und habe nichts auf die schnelle bei > > google gefunden... "Einfach mal die Fresse halten?"
In der Regel wird der Stack nur auf Über- und Unterlauf geprüft. Ein eigentlicher RAM-Test ist nicht möglich, weil die Werte hochdynamisch sind. Und aus eben diesem Grund auch gar nicht notwendig. Falsche Parameter an eine Funktion erkennst du auf andere Arten, falsche Rücksprungadressen durch Ablaufkontrolle.
vom Dieter schrieb: > Der schrieb: >> Ich kenne den GALPAT RAM Test nicht und habe nichts auf die schnelle bei >> google gefunden... > > "Einfach mal die Fresse halten?" Einfach mal richtig LESEN? Der schrieb: > Wenn du nur ein einzelnes Byte oder Wort testen musst, ...
Michael schrieb: > Jetzt stellt sich die Frage, > was mit dem Software Stack passieren soll. Mitprüfen ist nicht so > einfach, weil hier ja temporäre Werte liegen Warum sollen sich nur Werte im Stack ändern? Der gesamte RAM enthält Variablen, die sich jederzeit änderen können. Man muß daher die gesamte Applikation wärend des Tests anhalten. Um das zu umgehen braucht man mindestens 2 physisch separate RAM-Bausteine. Ein Baustein wird getestet, mit dem anderen wird gearbeitet. War der Test erfolgreich, werden die Daten umkopiert und der andere getestet. Man braucht also die doppelte Menge an RAM, wie die Applikation.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.