Dynamische Speicherallokation auf Mikrocontrollern ist normalerweise eine schlechte Idee. Langsam, benötigt größere Mengen Flash für die Speicherverwaltung und ist anfällig für Speicherfragmentierung.
Also besser schon beim Compillieren den max. benötigten Speicher einplanen. Verstehe.

Was du mit dem zweiten Teil der Frage meinst, erschließt sich mir leider nicht.
Nun ja - aus einem FIFO kann ich ja nur den aktuell ältesten Datensatz (First Out) lesen. Ich möchte aber Frames nicht im Buffer lassen, nur weil es zur Zeit nicht an erster Position verfügbar ist, sondern möchte an beliebigen Stellen im Buffer zugreifen können. Das sollte aber mit einer verketteten Liste kein Problem sein, oder?

LG aus Graz.