Autor Thema: Neuling braucht Hilfe!  (Gelesen 14532 mal)

nooooooooos

  • Beiträge: 734
    • Profil anzeigen
Gespeichert
« Antwort #20 am: 25. July 2006, 08:40 »
Also was ich dann vor den Treibern noch machen würd:
- Interrupts aktivieren (IDT....)
- Taskverwaltung
- Paging (sonst musst du nacher alles ändern)

Wenn du nicht Grub verwenden willst, kannst du auch mal den Bootloader des aktuellen Magazins anschauen...Der schaltet in den PM und aktiviert Paging.


Nooooooooooooooos

Noobtotal

  • Beiträge: 54
    • Profil anzeigen
Gespeichert
« Antwort #21 am: 25. July 2006, 12:00 »
Also ich würde mal Interrupts und Tasking aussen vor lassen. Das wär ungefähr so, wie wenn ich im Sitzen ein exzellenter Fussballer wäre, aber nicht in der Lage bin aufzustehen. Soll heissen: was nutzen mir die ganzen Sachen, die von Anwenderprogrammen genutzt werden, wenn ich dem Kernel nicht sagen kann, was er tun soll. Und dazu ist halt heutzutage ein Tastaturtreiber von nöten!

hannibal

  • Host
  • Beiträge: 400
    • Profil anzeigen
    • brainsware - the rock.
Gespeichert
« Antwort #22 am: 26. July 2006, 06:23 »
Dir ist schon klar, dass du Interrupts/IRQs fuer einen Tastaturtreiber brauchst? :) Abgesehen davon, sobald du einmal Interrupts aktivierst (sti), ist es sehr hilfreich funktionierende Exception-Routinen zu haben - hilft beim Debuggen.

Lg, Alex
\\o
o//
\o/

bluecode

  • Beiträge: 1 391
    • Profil anzeigen
    • lightOS
Gespeichert
« Antwort #23 am: 26. July 2006, 06:46 »
Was auch immer sti mit Exceptions zu tun hat...  :wink:
lightOS
"Überlegen sie mal 'nen Augenblick, dann lösen sich die ganzen Widersprüche auf. Die Wut wird noch größer, aber die intellektuelle Verwirrung lässt nach.", Georg Schramm

hannibal

  • Host
  • Beiträge: 400
    • Profil anzeigen
    • brainsware - the rock.
Gespeichert
« Antwort #24 am: 26. July 2006, 06:54 »
Zitat von: bluecode
Was auch immer sti mit Exceptions zu tun hat...  :wink:


Es hat durchaus was damit zu tun - meiner Meinung nach. Sobald du die Interrupts aktivierst koennen bei kleinen Fehlern in der GDT oder IDT diverse Exceptions ausgeloest werden, die, wenn sie nicht behandelt werden, ganz schnell einen Triplefault hervorrufen, und man kann sich brausen gehen.
;)
\\o
o//
\o/

bluecode

  • Beiträge: 1 391
    • Profil anzeigen
    • lightOS
Gespeichert
« Antwort #25 am: 26. July 2006, 07:15 »
Zitat von: hannibal
...kleinen Fehlern in der GDT oder IDT diverse Exceptions...

Für so zeugs verwendet man normalerweise bochs (unter Windows: bochs_dbg, unter Linux selberkompiliert). Das zeigt dir jede Exception die geschmissen wird. Wenn das noch nicht hilft im singlestep durch und evtl. registerdumps machen... Aber Recht hast du trotzdem. Du zwingst mich nur so spät Abends noch um fünf Ecken zu denken & irgendwelcheHieroglyphen ( :arrow: j/k ;) ) zu entschlüsseln  :lol: Wie soll ich da noch mitkommen :?:
lightOS
"Überlegen sie mal 'nen Augenblick, dann lösen sich die ganzen Widersprüche auf. Die Wut wird noch größer, aber die intellektuelle Verwirrung lässt nach.", Georg Schramm

hannibal

  • Host
  • Beiträge: 400
    • Profil anzeigen
    • brainsware - the rock.
Gespeichert
« Antwort #26 am: 26. July 2006, 07:20 »
So spaet? Es ist frueh...ich sitz seit 1 1/2 Stunden in der Arbeit! :?

Aber auch du hast recht. Bochs Debug ist sicher auch eine nette Loesung.
\\o
o//
\o/

bluecode

  • Beiträge: 1 391
    • Profil anzeigen
    • lightOS
Gespeichert
« Antwort #27 am: 26. July 2006, 07:27 »
Zitat von: hannibal
So spaet? Es ist frueh...ich sitz seit 1 1/2 Stunden in der Arbeit! :?

:P Ich hab mein ABI in der Tasche und hab jetzt erstmal frei bis zum Zivi ;) Und ich bin seit gestern 11Uhr früh am PC ;) => jetzt ist spät

und bochs ist wirklich hammer, wenn man weiß wie man ihn benutzt.

@noobtotal: Ich würd auch erst mit interrupt, paging, multitasking anfangen, bevor ich viele treiber schreiben würde. Große ausnahme ist natürlich ne möglichkeit strings/ints auszugeben.
lightOS
"Überlegen sie mal 'nen Augenblick, dann lösen sich die ganzen Widersprüche auf. Die Wut wird noch größer, aber die intellektuelle Verwirrung lässt nach.", Georg Schramm

Noobtotal

  • Beiträge: 54
    • Profil anzeigen
Gespeichert
« Antwort #28 am: 26. July 2006, 13:28 »
OK, Interrupts und Paging: ja, Multitasking: nein!
Ich hab nähmlich nicht vor, in nächster Zeit überhaupt irgendwelche Anwenderprogramme oder Unterstützung für die rauszugeben!
Und wenn, dann lass ichs daweil noch Singletaskewd!
Aber apropos Multitasking:
Ist dieses Tutorial für Multitasking auf TSS Basis gut? Ich meine, ist TSS antiquiert oder darf man das noch nutzen in einem OS was möglichst modern sein soll?

nooooooooos

  • Beiträge: 734
    • Profil anzeigen
Gespeichert
« Antwort #29 am: 26. July 2006, 15:13 »
Ich finde es geht einfacher wenn du Softwaremultitasking verwendest. Da musst du nicht für jeden Task einen Eintrag in der GDT usw. anlegen.

ST-225

  • Beiträge: 43
    • Profil anzeigen
Gespeichert
« Antwort #30 am: 26. July 2006, 15:52 »
Multitasking auf hardwarebasis funktioniert meines wissens nach auf 64-bit PC-Architekturen eh nicht mehr. Ich würde also Softwaretasking verwenden.

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« Antwort #31 am: 26. July 2006, 18:27 »
Zitat von: ST-225
Multitasking auf hardwarebasis funktioniert meines wissens nach auf 64-bit PC-Architekturen eh nicht mehr. Ich würde also Softwaretasking verwenden.
Da liegt dein Wissen genau richtig. Im Long-Mode ist nichts mehr mit Hardwaremultitasking.

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

 

Einloggen