uC/OS-III und Cortex M3

OP #2547646
Lesenswert?

Hallo,
ich habe mir mal uC/OS-III runtergeladen. Für Privatgebrauch darf man 
das ja verwenden.
Ich habe es nun auf Cortex M3 portiert, und soweit läuft auch alles 
bestens!
Nur habe ich jetzt  2 offene Punkte.

1. Bei uC/OS-III muss man dem OS über einen API-Aufruf mitteilen, wann 
man eine ISR beginnt und wann sie aufhört. Das ist nötig, damit 
verschachtelte Interrupts richtig gehandhabt werden. Oder so...
Auf ARM7 war das relativ einfach, da es dort nur einen Vektor gibt für 
alle Interrupts. Dort konnta man dann zuerst OSIntEnter() aufrufen, 
danach die auszuführende ISR, und anschliessend OSIntExit(). Beim Cortex 
hingegen hat man für jeden Interrupt einen eigenen Vektor. Muss ich also 
tatsächlich in jeder ISR die ich schreibe, selber daran denken, zuerst 
OSIntEnter() und am Schluss OSIntExit() aufzurufen, oder kann ich das 
vielleicht irgendwie automatisieren?

2. Einige ARMe haben eine MMU oder MPU. Damit könnte man doch den 
Speicherbereich jedes Tasks schützen, oder? Dazu muss aber ständig diese 
MMU umkonfiguriert werden, denn irgendwie muss ich ihr ja mitteilen, 
welcher Task gerade aktiv ist. Wo könnte man das einbauen? Hat da jemand 
vllt. ein Beispiel?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren