Memory-Pool-Allokator für ein eingebettetes Diagnose-Tool
Übersicht
Worum es bei diesem Projekt geht.
Sie erhalten das bestehende C-Modul (rund 800 Zeilen), eine Hardware-Test-Box mit ARM Cortex-M4 und ein realistisches Verbrauchs-Profil aus einer Feldmessung (Allokations-Größen-Verteilung). Implementieren Sie einen Pool-Allokator mit konfigurierbarer Block-Größe (8, 16, 32, 64, 128 Byte), Free-List-Management ohne Header-Overhead pro Block und O(1)-Allokation/Freigabe. Stellen Sie Header-Datei und Implementierung als wiederverwendbares Modul bereit. Schreiben Sie Unit-Tests (Unity-Framework) für Boundary-Conditions und einen Stress-Test, der das Verbrauchs-Profil 72 Stunden simuliert. Liefern Sie einen Benchmarking-Bericht mit Allokations-Latenz (in CPU-Zyklen) und Fragmentierungs-Metriken im Vergleich zu newlib-malloc.
Das Briefing
Was Du tust und was Du zeigst.
Wie sieht ein Pool-Allokator aus, der die malloc/free-Fragmentierungsprobleme im 72-Stunden-Dauerlauf eliminiert, ohne mehr als 5 Prozent RAM-Overhead zu verbrauchen?
Earning criteria — what you'll demonstrate
- Fixed-Size-Memory-Pool-Konzepte in C sauber implementieren
- Boundary-Conditions und Edge-Cases in Unit-Tests systematisch abdecken
- Allokations-Latenz und Fragmentierung als Performance-Metriken messen
- Embedded-Code-Module mit klarer API und ohne globalen Zustand entwerfen
Studienpassung
Wo dies in Dein Studium passt.
Schärft dieselben Fähigkeiten, die Dein Studium von Dir erwartet.
Fähigkeiten
Fähigkeiten, die Du unter Beweis stellst.
Jede taucht auf Deinem verifizierten Zertifikat auf.
Karrieren
Berufe, auf die dies Dich vorbereitet.
Echte Berufsbezeichnungen. Echte Skill-Brücken. Wähle die, die Deinem Werdegang am nächsten kommt.
Karrierewege, die das aufbaut
Kanonische RollenSoftware-Entwickler:in
Wer einen Pool-Allokator in C sauber implementiert und mit Benchmarks belegt, hat eine der härtesten Junior-Portfolio-Arbeiten für eingebettete oder systemnahe Stellen — besonders in Auto-, Maschinenbau- und Robotik-Firmen.
Dieses Projekt schärft
- c-programming
- memory-management
- embedded-systems
Systemarchitekt:in
Systemarchitekt:innen, die Memory-Management auf MCU-Niveau verstehen, treffen bessere Architekturentscheidungen für ressourcenbeschränkte Systeme.
Dieses Projekt schärft
- memory-management
- embedded-systems
- benchmarking
Backend-Entwickler:in
Backend-Entwickler:innen mit C-Erfahrung verstehen Latenz- und Speicherprobleme tiefer und sind besonders in latenzkritischen Diensten gefragt.
Dieses Projekt schärft
- c-programming
- memory-management
- benchmarking
Noch eine Sache