[hydrixOS] : HydrixOS Newsletter - Kernel 0.2.2 mit dem i386-VPC ist endlich draußen

  • From: Friedrich Gräter <webmaster@xxxxxxxxxxx>
  • To: undisclosed-recipients:;
  • Date: Sat, 04 May 2002 00:55:29 +0200

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

Hallo,
endlich ist es soweit: Nach fast zwei Monaten arbeiten ist der
HydrixOS Kernel v 0.2.2 ab Samstag 0:45 im Internet erhältlich.

Mit dem neuen Kernel ist endlich ein großer Teil des
virtuellen 80386 Prozessors enthalten. Dieser i386-Emulator
imitiert einen Intel-80386-Prozessor (der noch ein paar 80486
und 80586 Instruktionen kennt) für  32-bit Anwendungsprogramme
(Systeminstruktionen wie LGDT werden nicht unterstützt, da er ja
ausschließlich Anwendungsprogramme verarbeitet).

Die in diesem Kernel enthaltene Version enthält immerhin
von 186 geplanten Instruktions-Emulatoren schon 145. U.a. fehlen
derzeit noch die String-verarbeitenden Instruktionen.

In diesem v386 sind von der Planung bisher die FPU, MMX, 3d-now u.ä.
Erweiterungen nicht vorgesehen. Da ich doch erst einen funktions-
tüchtigen i386-Emulator entwickeln wollte. MMX-Erweiterungen sind
einfach in diesem Zustand von HydrixOS noch nicht wirklich notwendig.


Der v386 ist in zweierlei Hinsicht nicht fertig: Es fehlen noch einige
Instruktionen und er arbeitet derzeit noch etwas langsam. Es geht noch
an mehreren Stellen zu viel Rechenzeit verloren. U.a. will ich ein
Cache-System für das emulierte Speichersystem errichten und einige
Kernel-interne Dinge umändern, um den Kernel einfach weiter zu
optimieren. Intern arbeitet der Emulator zwar (für einen Emulator)
sehr schnell, jedoch werden Systemaufrufe nicht schnell genug
ausgeführt und hier und da sind einfach noch Dinge, die ich
schneller machen kann. (Da es mein erster selbstgebastelter
Emulator ist bitte ich um Verständnis :-) )


Da der v386-Emulator einen HydrixOS-optimierten Prozessor simuliert,
habe ich eine Instruktion "erfunden", die der i386 nicht kennt. Sie
nennt sich "HSCLL" (HydrixOS System call), die Instruktion ermöglicht
das schnellere Ausführen von HydrixOS Systemaufrufen. (Für alle i386-
Maschinensprache-Freaks: Die Instruktion liegt an 0x0F-0xB9-0x20
und belegt eine der vielen unnützen Aliases der unnützen
UD2-Instruktion - ist also in der OP-Code-Gruppe #11 zu finden).

Der v386-Emulator kann aber alle i386-Programme ausführen, die die
Instruktionen enthalten, die er bereits unterstützt. Wer den Kernel
runterlädt und das Betriebssystem sich auf Diskette schreibt und
ausführt, sieht ein kleines Demoprogramm, dass in normalen
i386-Assembler geschrieben worden ist und von dem Emulator
korrekt verarbeitet wird. Zugegeben, das Demo ist primitiv, aber
jeder kann es umprogrammieren - man findet es in der Datei
"init/prc1.s", allerdings benötigt man Assemblerkentniss
für den GNU Assembler GAS (und etwas Überblick über meinen
Quelltext :-) )


Ebenfalls wurde von mir einiges an den Spezifikationen verändert.
Die Systemaufrufe "welcome" "dismiss" und "logoff" wurden entfernt.
Der Kernel übernimmt in Zukunft nur noch die Trennung von Benutzern,
aber nicht die Benutzerverwaltung - somit habe ich die einzige
Schwachstelle in der Systemkompatibilität geschlossen.


In der Mailingliste habe ich angekündigt, neue Systemaufrufe für
schnelleren Zugriff auf Hardware-Speicher einzuführen. Vorerst lege
ich diese Idee auf Eis, da ich das Problem ohne Einführung neuer
Systemaufrufe vielleicht besser lösen kann.


Der im Internet verfügbare Kernel hat die Version 0.2.2 und die neu
verfügbaren Spezifikationen die Version 1.2.2. Die nächste
Version 0.2.3 wird in erster Linie eine Version mit
Geschwindigkeitserweiterungen sein. Version 0.2.5 soll dann soweit
sein, dass man bereits kleinere nützliche Programme unter HydrixOS
laufen lassen kann. Bis v 0.2.5 werde ich aber noch die
Versionen 0.2.4 und 0.2.3 und eine Menge Bug-Fix-Releases ausgeben
müssen :-).


Ich hoffe, dass ich in Zukunft wieder öfters den Newsletter
senden kann. In letzter Zeit gab es nicht sehr viel zu berichten, da
das Programmieren des Emulator nach sehr festen Strickmustern geht
und jeder Bericht nichts aussagt.

Unter anderem möchte ich dem Autor von www.sandpile.org für die
übersichtliche i386-Dokumentation danken und Christian Diefer, für
das Link auf www.sandpile.org. (Und ich bitte die Firma Intel in
Zukunft ihre Dokumentation an mancher Stelle etwas übersichtlicher
zu machen)

Bis bald,

Friedrich Gräter


---
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.2 mit dem i386-VPC ist endlich draußen