mmu im uc und speicherverwaltung

OP #1603682
Lesenswert?

Hhuhu,

hab mal ne Frage, und zwar wie läuft das eigentlich mit der 
Speicherverwaltung in einem uc?? wie sorgt da die MMU dafür, dass die 
Daten in den ram geladen werden können.

Kann die MMU auch daten auf den flash auslagern?  woher weis ich, ob 
mein ram voll ist, wenn ich nicht per mallok alloziiere sondern statisch 
speicher reserviere?

Konkretes Beispiel, ich will einfach nur 512 bytes von einer SD Card 
lesen. mit 4kbyte ram  (mega128) sollte das ja kein problem sein. aber 
wo ist da schluss, heist das ich kann maximal dateien der Größe 4k in 
den ram legen??

Danke schonmal und Gruß
Gast #1604536
Lesenswert?

Das wird nicht vom uC verwaltet sondern vom Programm. Wenn avr-gcc 
verwendest, dann kümmern sich deren Funktionen um die 
Speicherverwaltung.
Es wird dabei einfach irgendein freies Register für den Breakpointer und 
irgendein anderes für den Stackpointer verwendet.
Dynamischer Speicher (malloc) verwendet den brk-pointer und wird 
vermutlich einfach mit einer doppelt verketteten Liste bewerkstelligt.

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