| Zeile 5: | Zeile 5: | ||
Heute arbeite ich als Programmierer/Entwickler im Embedded-Umfeld, vor allem mache ich µC-Software und FPGA-Programmierung. | Heute arbeite ich als Programmierer/Entwickler im Embedded-Umfeld, vor allem mache ich µC-Software und FPGA-Programmierung. | ||
| − | Zur OS-Entwicklung bin ich eigentlich gekommen (bzw. komme noch) weil ich meine eigene Plattform (mehrere ''andersartige'' CPUs zusammen mit einer Art "IO Hub") im FPGA entwickeln möchte und selbst die schönste CPU/Plattform ohne OS | + | Zur OS-Entwicklung bin ich eigentlich gekommen (bzw. komme noch) weil ich meine eigene Plattform (mehrere ''andersartige'' CPUs zusammen mit einer Art "IO Hub") im FPGA entwickeln möchte und selbst die schönste CPU/Plattform ohne OS eben gar nichts nützt. Als wichtiges Design-Ziel für meine Plattform, besser gesagt CPU, hab ich mir ''Segmentierung'' gesetzt. Ich weiß die meisten sagen bei diesem Wort "igit das kenn ich vom x86-Real-Mode und das ist scheiße", solche Aussagen sind zwar inhaltlich richtig aber zeugen auch davon das derjenige die Möglichkeiten der Segmentierung im 386-Protected-Mode gar nicht kennt. Auf meiner Plattform möchte ich über diese bescheidenen Möglichkeiten deutlich hinaus gehen um damit einen leistungsfähigen und zuverlässigen Speicherschutz, ohne den Performance-Verlust und Speicherverbrauch des Paging, zu realisieren. Darüber hinaus möchte ich Dinge wie Speicher-Defragmentierung zur Laufzeit (für den einen globalen linearen/virtuellen Adressraum) implementieren. |
Mein OS soll ein möglichst schlanker Micro-Kernel werden, der außer Speicher-Management, Prozess-Management und IPC kaum Dinge enthalten soll. Für die IPC eignet sich die Segmentierung hervorragend da man mit sehr wenig Aufwand Segmente von einem Prozess zum nächsten vererben/migrieren kann, unabhängig von der Größe des Segments, was auch über mehrere (Treiber-)Ebenen funktioniert. | Mein OS soll ein möglichst schlanker Micro-Kernel werden, der außer Speicher-Management, Prozess-Management und IPC kaum Dinge enthalten soll. Für die IPC eignet sich die Segmentierung hervorragend da man mit sehr wenig Aufwand Segmente von einem Prozess zum nächsten vererben/migrieren kann, unabhängig von der Größe des Segments, was auch über mehrere (Treiber-)Ebenen funktioniert. | ||
An Erfahrung in diesem Umfeld (ein richtiges OS hab ich noch nie programmiert) kann ich vor allem Teiber-Programmierung (für verschiedene RT-OSe + etwas Linux und etwas Windows) und die Entwicklung verschiedenster Low-Level-Software auf x86, ARM und einigen Micro-Controllern vorweisen, ich hoffe das reicht. Der entschiedene Vorteil, bei der OS-Entwicklung, auf einer eigenen Plattform ist das man nie vor einem undokumentierten Hardware-Feature steht und immer jemanden hat den man dazu befragen kann. | An Erfahrung in diesem Umfeld (ein richtiges OS hab ich noch nie programmiert) kann ich vor allem Teiber-Programmierung (für verschiedene RT-OSe + etwas Linux und etwas Windows) und die Entwicklung verschiedenster Low-Level-Software auf x86, ARM und einigen Micro-Controllern vorweisen, ich hoffe das reicht. Der entschiedene Vorteil, bei der OS-Entwicklung, auf einer eigenen Plattform ist das man nie vor einem undokumentierten Hardware-Feature steht und immer jemanden hat den man dazu befragen kann. | ||