Autor Thema: Multitasking in meinem OS einbauen.  (Gelesen 25122 mal)

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« Antwort #20 am: 04. December 2005, 22:18 »
@Legend: Hast du zufälligerweise noch irgendwo auf deiner Festplatte (oder sons wo) dein Tutorial, was du mir schicken könntest?

Das wäre sehr nett.
In the Future everyone will need OS-64!!!

Legend

  • Beiträge: 635
    • Profil anzeigen
    • http://os.joachimnock.de
Gespeichert
« Antwort #21 am: 04. December 2005, 23:09 »
Ja, auf meiner Platte ist das noch. Das wären schon zwei die das wollen, wenn ich dann eure Email-Addressen haben könnte? *g*
*post*

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« Antwort #22 am: 05. December 2005, 07:42 »
Zitat von: Legend
Ja, auf meiner Platte ist das noch. Das wären schon zwei die das wollen, wenn ich dann eure Email-Addressen haben könnte? *g*
privat@osm-page.de

danke!!!
In the Future everyone will need OS-64!!!

nooooooooos

  • Beiträge: 734
    • Profil anzeigen
Gespeichert
« Antwort #23 am: 05. December 2005, 12:13 »

nooooooooos

  • Beiträge: 734
    • Profil anzeigen
Gespeichert
« Antwort #24 am: 05. December 2005, 12:16 »
Zitat von: Legend
Bevor du irgend etwas laden kannst muss ich schon die Rücksprungaddresse gesichert werden.


Wie meinst du das jetzt ????

Ginge es rein theoretisch Software-Multitasking ohne TSS zu realisieren ???? Dann wäre das System ja noch schneller ?????

Legend

  • Beiträge: 635
    • Profil anzeigen
    • http://os.joachimnock.de
Gespeichert
« Antwort #25 am: 05. December 2005, 15:12 »
Die Rücksprungaddresse, sprich z.B. EIP vom Prozess der unterbrochen wurde (und noch ein paar Dinge mehr) werden von der CPU gesichert bevor dein Code im ISR zum Zuge kommt. Und diese werden auf dem Stack von dem Ziel-ISR gesichert, weil der Stack wohl vom Betriebssystem verwaltet wird.

Du kannst Software Task Switching ohne TSS machen, solange du keine sog. Ring Transisitions hast, also Sprünge von Ring zu Ring (z.B. von Ring 3 durch einen ISR der in Ring 0 behandelt wird). Das bedeutet jedoch das dann dein ganzes System im Ring 0 laufen müsste.
*post*

nooooooooos

  • Beiträge: 734
    • Profil anzeigen
Gespeichert
« Antwort #26 am: 05. December 2005, 16:20 »
Ah, jetzt ist alles klar. Danke vielmals!!!!!

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« Antwort #27 am: 05. December 2005, 16:40 »
Schade das ich nichts bekommen habe. Aber ich werde es mit Hardwaremultitasking machen, indem ich das ptl vom IRQ0 ändere.
In the Future everyone will need OS-64!!!

Legend

  • Beiträge: 635
    • Profil anzeigen
    • http://os.joachimnock.de
Gespeichert
« Antwort #28 am: 05. December 2005, 17:07 »
Ich habe auch noch gar nichts verschickt. In der Uni hab ich das Dokument irgendwie nicht rumliegen.
*post*

nooooooooos

  • Beiträge: 734
    • Profil anzeigen
Gespeichert
« Antwort #29 am: 05. December 2005, 17:28 »
Also ich würde dir Software MT empfehlen: Einfacher, schneller und du hast die voller Kontrolle über alles was abläuft.

Gruss
Noooooooos

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« Antwort #30 am: 05. December 2005, 17:34 »
Zitat von: nooooooooos
Also ich würde dir Software MT empfehlen: Einfacher, schneller und du hast die voller Kontrolle über alles was abläuft.

Gruss
Noooooooos
Wie kommst du darauf das es einfacher ist? Hardwaremultitasking ist auch nicht sonderlich schwer (nachdem ich es verstanden habe). Ich brauche ja nur einen TSS-Deskriptor anzuspringen. Wieso unter Software MT volle Kontrolle? Das hat man doch unter Hardware MT auch. Ob Softwaremultitasking wirklich schneller ist, ist auch eine Frage. Und selbst wenn es schneller ist, wird es wohl so gering sein das man es gar nicht merkt.

PS: Wo steht eigentlich das Windows und Linux Software MT verwenden?
In the Future everyone will need OS-64!!!

Osbios

  • Beiträge: 247
    • Profil anzeigen
Gespeichert
« Antwort #31 am: 05. December 2005, 18:27 »
Auf die PS-Frage habe ich mal ein bisel gesucht und einen sehr interessanten Artikel gefunden: http://neworder.box.sk/newsread.php?newsid=10562

Dort wird auch über fast alle hier gestellten Fragen geschrieben.

Sehr lesenswert!!!
db 0x55AA

nooooooooos

  • Beiträge: 734
    • Profil anzeigen
Gespeichert
« Antwort #32 am: 05. December 2005, 18:44 »
Ich habe das Gefühl, wenn die Hälfte von der CPU erledigt wird, kann man selbst einfach nicht mitmischen. Denn bei Hardware-MT werden viele Sachen gesichert, die man gar nicht braucht.

Angenommen die TSS-Variante braucht 30 Takte mehr dann ist das bei einem Timer von 100 Herz (etwa nötig für MT) 3 000 Takte pro Sekunde, pro Minute 180 000. Und das ist dann nicht mehr wenig. (finde ich :) )

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« Antwort #33 am: 05. December 2005, 18:49 »
Zitat von: nooooooooos
Denn bei Hardware-MT werden viele Sachen gesichert, die man gar nicht braucht.
Was denn zum Beispiel?
In the Future everyone will need OS-64!!!

nooooooooos

  • Beiträge: 734
    • Profil anzeigen
Gespeichert
« Antwort #34 am: 05. December 2005, 18:52 »
Vieleicht kann es sein, dass man manche Register nicht braucht, oder dass das OS nur die Ringe 0 und 3 braucht ????

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« Antwort #35 am: 05. December 2005, 21:48 »
@Legend: Danke für das Tutorial. Aber ich werde Hardwaremultitasking in meinem OS benutzen.

Danke!!!
In the Future everyone will need OS-64!!!

Osbios

  • Beiträge: 247
    • Profil anzeigen
Gespeichert
« Antwort #36 am: 06. December 2005, 06:18 »
Zitat von: nooooooooos
Angenommen die TSS-Variante braucht 30 Takte mehr dann ist das bei einem Timer von 100 Herz (etwa nötig für MT) 3 000 Takte pro Sekunde, pro Minute 180 000. Und das ist dann nicht mehr wenig. (finde ich :) )


Naja, bei einer 3 GHz CPU haste 180.000.000.000 Takte pro Minute.
db 0x55AA

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« Antwort #37 am: 06. December 2005, 07:06 »
Zitat von: Osbios
Zitat von: nooooooooos
Angenommen die TSS-Variante braucht 30 Takte mehr dann ist das bei einem Timer von 100 Herz (etwa nötig für MT) 3 000 Takte pro Sekunde, pro Minute 180 000. Und das ist dann nicht mehr wenig. (finde ich :) )


Naja, bei einer 3 GHz CPU haste 180.000.000.000 Takte pro Minute.
Hä? Wie kommst du denn darauf?
In the Future everyone will need OS-64!!!

nooooooooos

  • Beiträge: 734
    • Profil anzeigen
Gespeichert
« Antwort #38 am: 06. December 2005, 12:24 »
Hab ich auch herausgefunden. Aber in dieser Zeit kann man immerhin sehr viel machen. Aber es kann sein, dass das OS auf einem älteren PC läuft... Oder vieleicht sogar mal auf nem GameBoy oder iPod ??...???

Osbios

  • Beiträge: 247
    • Profil anzeigen
Gespeichert
« Antwort #39 am: 06. December 2005, 14:20 »
Zitat von: bitmaster
Hä? Wie kommst du denn darauf?

Nur zum Vergleich wie viel es von der Gesammtleitung eines "aktuellen" Prozessors beansprucht. Daher kann man sich seine gedanken machen wie sehr es sich lohnt da zu optimieren. Nicht dass ich jetzt was gegen Optimierung hätte. :wink:

Zitat von: nooooooooos
Hab ich auch herausgefunden. Aber in dieser Zeit kann man immerhin sehr viel machen. Aber es kann sein, dass das OS auf einem älteren PC läuft... Oder vieleicht sogar mal auf nem GameBoy oder iPod ??...???

GameBoy oder iPod mit x86 Technik?
db 0x55AA

 

Einloggen