Hallo, ich möchte gern die Position sowie die Größe des .text Segmentes ermitteln. Welche Möglichkeiten habe ich da bzw. bietet mir der Compiler (arm-linux-gnueabi) schon irgendwelche Direktiven a la "__TEXT__"/"__TEXTSIZE__" die ich da eventuell nutzen könnte? Vielen Dank im Vorraus, Markus Franke
objdump -h a.out bzw. eine spezifische Version für das jeweilige Zielsystem (avr-objdump etc.)
Vielen Dank für den Tip. Ich möchte nun genau dieses Text-Segment mittels des POSIX-Aufrufs mlock() in den Speicher pinnen. mlock() erhält als Parameter die Anfangsadresse sowie die Länge des zu sperrenden Speicherbereichs. Da sich nun bei jedem Compilerdurchlauf die Größe sowie die Position des Text-Segmentes ändern können bräuchte ich einen Weg diese beiden Werte dynamisch zu bestimmen. Vielen Dank im Vorraus, Markus Franke
Hallo, falls noch keine Markrn / Labels im Startupfile (oder da wo die Segmente angelegt werden) beim entsprechendem Segment anlegen und als Global definieren. Passende Deklaration im C Quelltext anlegen und drauf zu greifen. so mache ich das bei Renesas Prozessoren. ciao
Hmmm....an Marken hab ich auch schon gedacht. Allerdings stell ich mir grad die Frage wo ich diese genau definiere? Was ist mit Startupfile gemeint? An welcher Stelle der Codegenerierung von *.c -> a.out müssen denn die Marken eingefügt werden?
Hat wirklich keiner eine Idee wie obiges zu bewerkstelligen wäre? Vielen Dank im Vorraus, Markus Franke
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.