950 likes | 1.11k Views
Diplomarbeit Autor: Rade Bozic. Portierung eines LINUX Systems auf ein ARM Modul und Implementierung eines embedded Web Servers. Fernsystem. Zielsetzung. Universell einsetzbares System im Bereichen:. Fern - Wartung Fern - Diagnose. Gliederung des Vortrages. Einleitung
E N D
DiplomarbeitAutor: Rade Bozic Portierung eines LINUX Systems auf ein ARM Modul und Implementierung eines embedded Web Servers
Fernsystem Zielsetzung Universell einsetzbares System im Bereichen: • Fern - Wartung • Fern - Diagnose
Gliederung des Vortrages • Einleitung • Planung eines Fernsystems • Aufbau eines Linux- Systems • Hardware • Bootloader • Root Dateisystem • Entwicklungsumgebung • Web Server • Realisierung einer Anwendung
Einleitung Qualität entscheidet
Kunde Anforderungen Erwartungen Preise Qualität Unternehmen Produkte Eigenschaften Kosten Einleitung Spannungsfeld Qualität
Einleitung Qualität Beschaffenheit einer Einheit bezüglich ihrer Eignung, festgelegte und vorausgesetzte Erfordernisse zu erfüllen Beschaffenheit Gesamtheit der Merkmale und Merkmalswerte einer Einheit Einheit Materieller oder immaterieller Gegenstand der Betrachtung Begriffsdefinition „Qualität“ DIN 55350, Teil 1
Anwender Fernsystem Abstraktionsebene (Konfigurationsfenster) Was bedeutet Qualität in Bezug auf das Fernsystem? Einleitung
Einsatz eines Fernsystems Ziel: • Aktuellen Zustand der Technische Prozesse darstellen • Änderungen an den Technischen Prozess vornehmen
Planung eines Fernsystems • Steuerung eines Technischen Prozesses mit dem Fernsystem • Administration des Fernsystems Aufteilung in zwei Bereiche
Planung eines Fernsystems Anforderungen: • Konfigurationsfenster der Fernsysteme soll unabhängig von dem technischen Prozess sein • Der Aufbau der Konfigurationsfenster soll einheitlich sein • Leichte Integration eines technischen Prozesses in das Fernsystem • Eigener Konfigurationsfenster für den technischen Prozess
Welche Standardkomponente sollte das Konfigurationsfenster eines Fernsystems beinhalten? • Software - Programme • Netzwerkdienste • Hardware • System • Benutzer • Andere
Welche Standardkomponente sollte das Konfigurationsfenster eines Fernsystems beinhalten? • System Update • Software installieren • Software löschen • Andere Software – Programme:
Welche Standardkomponente sollte das Konfigurationsfenster eines Fernsystems beinhalten? • FTP • TFTP • HTTP • NFS • Remote Steuerung • Andere Netzwerkdienste:
Welche Standardkomponente sollte das Konfigurationsfenster eines Fernsystems beinhalten? • Hardware Information • LAN • CAN • RS232 • RS485 • Andere Hardware:
Welche Standardkomponente sollte das Konfigurationsfenster eines Fernsystems beinhalten? • Datum und Zeit • sysconfig • Flash Speicher • Integration einer Anwendung • Andere System:
Welche Standardkomponente sollte das Konfigurationsfenster eines Fernsystems beinhalten? • Benutzterverwaltung • Gruppenverwaltung • Andere Benutzer:
Administration eines Fernsystems Ziel: • Änderungen an den Fernsystem vornehmen • Aktuellen Zustand des Fernsystems darstellen
Administration eines Fernsystems • Aktuellen Zustand des Fernsystems ändern oder darstellen mit den System Programmen
Planung eines Konfigurationsfensters für eine Anwendung • Konfigurationsfenster wird an das technische Problem angepasst • Das Konfigurationsfenster sollte eigenständig funktionieren • Integration des Konfigurationsfensters in das Fernsystem
Beispiel eines technischen Prozesses • Aktuellen Zustand des Technischen Prozesses darstellen
Beispiel eines technischen Prozesses • Änderungen an den Technischen Prozess vornehmen
Aufbau eines Linux-Sytems • Hardware • Bootloader • Betriebsystem • Dateisystem
Hardware • Entwicklungsboard (Eval-Board) • DIMM Modul • Entwicklungsrechner
Bootloader • Durchsucht die Peripherie nach dem bootfähigen Programm • Lädt das Programm in den internen SRAM • Führt den „remap“ Befehl aus • Startet das Programm Interne Firmware (Bootloader)
Bootloader Funktion des „remap“ Befehls
Bootloader - Uploader Eigenschaften des Uploaders • Darf max. 12 KByte groß sein (4 KByte Stack) • Kann Programme die größer als 128 KByte sind nicht laden und starten
Bootloader - Uploader • SDRAM • Xmodem Protocol über DBGU Serial • SPI Flash Aufgaben des Uploaders Initialisierung : Laden und starten von Programmen in SDRAM
Bootloader -Uploader • aus dem SPI Flash lesen • in den Bootsektor des SPI Flash schreiben • den Bootsecktor im SPI Flash löschen • laden eines Programms mit Xmodem (z.B. U-Boot) in den SDRAM und startet das Programm Funktionen des Uploaders
Bootloader – U-Boot • Open-Source Projekt • Sehr gute Dokumentation • Portiert auf mehr als 100 Plattformen • Sehr flexibel • Viele Funktionen U-Boot => Universal Bootloader
Bootloader – U-Boot • Initialisierung des Boards • Ramdisk in SDRAM laden • Linux in SDRAM laden • bootargs an Linux übergeben • Linux starten Aufgaben von U-Boot
Bootloader – U-Boot U-Boot wurde auf die DIMM-RM9200 Plattform portiert • make DIMM_rm9200_config U-Boot wird für das DIMM-RM9200 Board konfiguriert • make U-Boot wird für das DIMM-RM9200 Board übersetzt
Bootloader – U-Boot • Starten aus dem parallelen Flash • Starten aus dem seriellen Flash Zwei Boot-Modi • Mit einem Jumper (Schalter) wird entschieden von wo gestartet wird. • Jumper hat eine ähnliche Funktion wie der „remap“ Befehl. Ist er aufgesetzt, wird die Adresse 0x00000000 auf die erste Adresse des parallelen Flashs gesetzt.
Bootloader – U-Boot • U-Boot für den parallelen Flash (PU-Boot) • U-Boot für den seriellen Flash (SU-Boot) Zwei U-Boot Programme
Bootloader – U-Boot • PU-Boot hat seine Umgebungsvariable im parallelen Flash, SU-Boot im seriellen Flash. • Uploader wird beim Start von PU-Boot nicht benötigt Unterschiede zwischen den beiden U-Boot Programmen
Bootloader – U-Boot Entwicklungablauf des Bootloaders
Bootloader – U-Boot Wie werden die zwei U-Boot Programme generiert? Konfigurationsdatei DIMM_rm9200.h Variable: #define CONFIG_BOOTBINFUNC 1 => PU-Boot //#define CONFIG_BOOTBINFUNC 1=> SU-Boot
Bootloader – U-Boot • über Uploader aus dem seriellen Flash (Jumper nicht aufgesetzt) • aus dem parallel Flash (Jumper aufgesetzt) • über Uploader mit dem XModem Protocol (Jumper nicht aufgesetzt) Es gibt drei Möglichkeit U-Boot zu starten:
Bootloader – U-Boot • Manipulation von Flash Speicher • boot Befehle (laden und starten von Programmen) • Netzwerk Befehle • informations- Befehle Arbeiten mit dem U-Boot U-Boot Befehle:
Bootloader – U-Boot • Mehrere Befehle in einem Befehl vereinen • Scripte werden mit dem Befehl „run“ gestartet • Ein Script startet das Betriebsystem U-Boot Scripte
Bootloader – U-Boot Startablauf von U-Boot