[hydrixOS] : HydrixOS Newsletter - Kernel 0.2.3 fertig; HydrixOS-Handbuch in Arbeit

  • From: Friedrich Gräter <webmaster@xxxxxxxxxxx>
  • To: undisclosed-recipients:;
  • Date: Wed, 15 May 2002 16:29:03 +0200

HydrixOS Newsletter
=======================================================================

Themen:
-------
Vorwort

1. Kernel 0.2.3 ist fertig!
2. Das neue Demoprogramm
3. Neues HydrixOS Handbuch und Spezifikationen
4. Weite Releases des Kernels

Nachwort


----------------------------------------------------------------------

Hallo,
endlich ist er verfügbar: Der Kernel 0.2.3 - er enthält alle Features,
die ich in 0.2.5 erst möglich sah. Er ist nun so weit, dass wir Anfang
nächster Woche erste Treiber und Programme für HydrixOS schreiben
können.



-- 1. Kernel 0.2.3 ist fertig!

Doch zunächst einmal die Übersicht über die Neuerungen im Kernel:

1. Den Copy-On-Write-Mechanismus, der das schnellere Kopieren von
Prozessen ermöglicht, habe ich vorerst wieder entfernt, da er im Kernel
eigentlich nichts zu suchen hat, und Aufgabe eines User-Level-Prozesses
sein wird - somit wird einerseits dem Kernel ein Fehlerrisiko wieder
entzogen und anderseits die Bahn für einen schnellen und erweiterbaren
Copy-On-Write und Seitenauslagerungsmanager frei gemacht. Da derzeit
die Größe von Prozessen sicherlich nicht die 1 MB Grenze sprengen wird,
wird der Overhead bei den Aufrufen "read" "write" "send" und
"duplicate" nicht zu groß werden.

2. Ich habe ein Deskriptor-Cache-System eingeführt, das den schnelleren
Zugriff auf häufig benötigte lokale Ressourcen (Segmente) möglich
macht. Jeder Thread kann in diesem Cache-Modell sich bestimmte Segmente
auswählen, die er besonders häufig benötigt. Dies wird über seinen VPC
abgewickelt.
Der derzeitige i386-VPC 'v386' löst dies über die virtuellen i386-
Segmentregister seiner Tasks. Der Cache-Zugriff geht über die neu
hinzugefügten Speicheremulationsroutinen "lread" und "lwrite".

3. Den Zugriff auf Hardware-Speicherbereiche habe ich für root-Prozesse
freigegeben, so dass ein schneller ungebremster Zugriff möglich ist.
Derzeit besteht zwischen Hardware-Speicherbereichen noch kein
Speicherschutz (d.h. mehrere root-Prozesse können mehrere Hardware-
Speicherbereiche zugleich reservieren). Ob es im Sinne der Stabilität
und Sicherheit von HydrixOS nötig ist, wird sich zeigen.

4. Die Kernel-Funktionen "oread", "owrite", "kread", "kwrite" und die
von denen verwendeten Hintergrund-Funktionen ("kgetentry", "kvna_page",
"kvna_table") wurden zu sog. "inlines" gemacht. D.h. die Funktionen
werden beim kompilieren in die aufrufenden Funktionen integriert, so
wird enorm viel Zeit durch Funktionsaufrufe gespart.

5. Der i386-VPC 'v386' verfügt nun über fast alle Instruktionen. Nur
die String-Verarbeitenden Instruktionen und die Instruktionen "ENTER"
und "LEAVE" fehlen noch.

6. Natürlich wurden wieder eine Menge Programmierfehler behoben :-)



-- 2. Das neue Demoprogramm

Natürlich hat der aktuelle Kernel ein neues Demoprogramm. Dieses in
i386-Assembler und in C geschriebene Programm, erzeugt nach dem Start
eine Kopie von sich selbst und zeichnet ein farbiges HydrixOS-Logo auf
den Bildschirm. Damit man sehen kann, dass sowohl schneller Hardware-
Zugriff, wie auch Multitasking funktionieren, teilen sich nun die
Abläufe des Originalprogramms und der Programmkopie. Das Original gibt
eine blinkende Zeichenfolge aus - während die Kopie den Textcursor über
den Bildschrim rennen lässt.

Natürlich ist es ein primitives Programm, aber es zeigt, dass
wesentliche Funktionen verfügbar sind.



-- 3. Neues HydrixOS Handbuch und Spezifikationen

Die derzeitigen Spezifikationen sind in einer knappen Sprache verfasst
und nicht leicht verständlich. Zudem ist es schwierig aus dem Dokument
tatsächlich sich das Know-How zu bilden, um für HydrixOS Programme zu
schreiben.
Daher habe ich beschlossene ein "HydrixOS Handbuch" herauszugeben, das
einerseits die Spezifikationen für HydrixOS auf dem aktuellen Stand
enthält, aber auch Anleitungen zum Bau von Programmen und Treibern
unter HydrixOS.

Dieses Handbuch soll folgende Ziele erreichen:


Theoretischer Teil:
        - Einführung eindeutiger Begriffe
        - Klare Spezifikationen des Kernels
        - Klare Spezifikationen des Treiber und Software-Modells

'Praktischer' Teil:
        - Einführung in HydrixOS' Aufbau
        - Erläuterung der einzelnen Abstraktionen (Prozesse etc.)
        - Erklärung der Systemaufrufe
        - Anleitung zum Bau von Treibern und Software

Der theoretische Teil wird ähnlich den jetzigen Spezifikationen werden
-
vielleicht sogar noch knapper. Er soll eher als Referenz und als klare
Beschreibung für HydrixOS dienen. Der praktische Teil hingegen soll in
HydrixOS einführen und Programmierern den Einstieg in HydrixOS
ermöglichen.

Wie lange dieses Projekt dauern wird, weiß ich leider nicht, allerdings
hängt die weitere Entwicklung des Kernels u.a. davon ab.



-- 4. Weitere Releases des Kernels

Gleich zu Anfang möchte ich mich für die gestiftete Verwirrung
entschuldigen. Ich wollte bereits am letzten Wochenende eine Release
0.2.2-a mit Bugfixes herausgeben - jedoch bin ich wieder einen Schritt
weiter gekommen, als ich erwartet habe und so habe ich 0.2.2-a
ausgesetzt und auf 0.2.3 hingearbeitet.

Der HydrixOS Kernel 0.2.3 ist der erste Kernel, mit dem man bereits
komplexe Programme starten kann und ist sozusagen "Das Tor für die
Zukunft". Er enthält alles, was ich vor einiger Zeit in Kernel 0.2.5
verwirklichen wollte.
Derzeit denke ich, den Kernel und den i386-VPC ausreichend zu testen,
so dass er die ersten Kinderkrankheiten überwinden kann. In nächster
Zeit werden also hauptsächlich Bug-Fix-Releases erscheinen, da
wirkliche Neuerungen erst mit dem neuen HydrixOS Handbuch sein werden.


Bis bald,


Friedrich Gräter


-------------------------------------------------------------- Impressum
Kritik / Abmeldung / Anmeldung:  newsletter@xxxxxxxxxxx

Vielen Dank an TheMasterz.de für den technischen Support des
Newsletters. Ebenfalls vielen Dank an freelists.org für den technischen 
Support der Mailingliste.

---
This is not SPAM! You can unsubscribe sending an e-mail to 
hydrixos-request@xxxxxxxxxxxxx with subject "unsubscribe". If
you've got questions contact webmaster@xxxxxxxxxxxx

hydrixOS kernel: http://www.hydrixos.de/downl.htm


Other related posts:

  • » [hydrixOS] : HydrixOS Newsletter - Kernel 0.2.3 fertig; HydrixOS-Handbuch in Arbeit