Lukas Büchele Alfred OlschnöggerAtanas Dimitrov Sebastian QuandtSandra Mayer Bojan Zarkovic
Projektpräsentation
Projektpräsentation
• Aufgabenstellung / Ziel
• Architektur
• Prozessmanagement
• IPC
• MMU
• HAL
• FAT
• Scrum
Übersicht
Projektpräsentation
• Single-User Betriebssystem
• Präemptives Betriebssystem
• Multi-Prozess
• Single-Threaded
• Verwendungszweck
• Webserver
• Zielplattform
• AVR32-AP7000 (UC3)
Aufgabenstellung / Ziel
Projektpräsentation
• Webserver
• TCP/IP-Stack
• SD-Karte
• Remote command line zum Konfigurieren
Aufgabenstellung / Ziel
Architektur
Projektpräsentation
• Die Prozessdatenstruktur
besteht im Wesentlichen aus dem PCB und zusätzlichen Informationen für Scheduling / Kommunikation
Prozessmanagement
Projektpräsentation
• Prozesswechsel– Round Robin– FCFS– SPN– Priority Scheduling
• Zustandsdiagramm
Prozessmanagement
Projektpräsentation
• Shared Memory• IPC mit Pipes• Monitors• Message Passing• Message Queue• Semaphoren
IPC
Projektpräsentation
• Paging mit 64 KB Seiten• Page Table
– Einstufige Page Table• Einträge im TLBELO Format• Virt. Adresse als Index
– Mehrstufige Page Table– Inverted Page Table
• Virtueller Speicher begrenzt auf 64 MB• Adressumsetzung mit MMU
– Segmentation und Paging– TLB mit 64 Einträgen– Private Virtual Memory Mode
Memory Management
Projektpräsentation
• Virtueller Speicher
Memory Management
Projektpräsentation
• Translation Lookaside Buffer• Seitenersetzungsalgorithmen
– Zufällige Seitenersetzung– Not Recently Used
• Memory Manager– Frame Table– Referenzen auf alle Page Tables (nicht Verwendung des
PTBR)– Globale Page für SRAM in ersten TLB Eintrag schreiben
Memory Management
Projektpräsentation
• ELF-Parser
Interpretiert Elf und Programm Headers
• Prozess-Lader
Lädt abhängig von Informationen des Elf Parsers in den virtuellen Speicher bzw. setzt Prozessinformationen
Memory Management
Projektpräsentation
PowerManager• Initialisiert und startet
Hardwarekomponenten• Bietet Soft-Reset an
SystemClock / Timer• SystemClock für
Prozesswechsel• Timer verfügbar (sleep / wait)
USART• Für Shell- und Debug-
Ausgaben
HAL
Projektpräsentation
LED• Statusanzeigen
SDRAM• Für DMA und virtuellen
Speicher für Prozesse
SDCard• Laden von Dateien/
Programmen (Shell)
Ethernet• Senden / Empfangen von
Paketen
Probleme• Fehler im Software Framework• Unterstützte maximale Taktung• SDRAM
• Größe/ Vorbelegung
• SDCard • Lese-/Schreibfehler• Dateigröße
• Netzwerk
HAL
Projektpräsentation
Lösungen
Register falsch ausgelesen
120MHz statt 150MHz Einheitenverwechslung
32MB da 256Mbit (Manual) Erste vier Bytes ignorieren
Delay zwischen Kommandos ermitteln
Reduktion der Dateigrößen
Zeit: 832
Anweisungen: 333
(Mittelwerte aus 200 Messungen)
Performance-Messung bei Prozesswechsel
Projektpräsentation
Erweiterungen
SDCard über DMA
Generische Device Treiber
Netzwerk (Pakete senden/ empfangen)
TCP/IP Stack integrieren/ implementieren
Weitere Ein- /Ausgabegeräte unterstützen (Keyboard, LCD, Sound,…)
HAL
Projektpräsentation
Fertiges Framework: „FAT File System Module“
http://elm-chan.org/fsw/ff/00index_e.html
Lizenz:
FAT
Projektpräsentation
The FatFs module is a free software opened for education, research and development. You can use, modify and/or redistribute it for personal, non-profit use or commercial products without any restriction under your responsibility. For further information, refer to the application note.
• Vorteile– Taskboard– Jeder weiß, woran der andere arbeitet– Jeder weiß zu Beginn, was ungefähr getan werden muss– Tolle Tools für Umsetzung
• Nachteile– Wenn Team verteilt, dann schlecht durchzuführen– Zeitaufwändig– Besser, wenn man die ganze Woche zusammen arbeitet– Projekt zu kurz für Scrum (nur 3 Sprints)
Scrum
Projektpräsentation
• Speicheradressierung• Beschränkte Debugmöglichkeiten• Sparsame Ressourcennutzung• Sinnvolle Modularisierung • Modulkommunikation über Register• Linkerskript und Elf-Aufbau• AVR Studio • AVR Dokumentation unvollständig und sehr kompakt
– z. B. ASID in TLBEHI bei Prozesswechsel
Lesson‘s Learned
Projektpräsentation
Vielen Dank
für eure Aufmerksamkeit!
Projektpräsentation