intterupt handler



  • Ja Halli Hallo.
    Mein Lehrer in Programmieren will mir einfach nicht glauben das es Interrupts gibt(!). Er denkt das im hintergrund schleifen ablaufen die die ganze Ziet überwachen ob etwas passiert. Dem entsprechend sehen auch seine Programme abfragt in denen er auf eine Eingabe wartet. (Enflosschleifen DX)
    Leider konnte ich ihn bis jetzt noch nicht das gegenteil beweisen, da er unsere 8085 CPUs(die wir in einem anderen Fach zur grundlegenden Erläuterung von CPUs benutzen) zur erklärung nicht annimmt und ich es bis Heute nicht geschafft habe ein in C++ geschriebenes und vor allem unter Windows XP funktionsierendes Programm zu schreiben. (kann es sein das mir XP einen großteil der assembly befehle sperrt? hat natürlich allen grund dazu, aber mich behinderts grade etwas^^)

    Ich such jetzt seit Wochen Foren und die spannensten geGoogelten Seiten ab, aber auf den meisten Seiten wird nur die Theorie erklärt.... die kannte ich aber auch schon vorher.

    Weis hier vielleicht jemand wie man einen Interrupt Handler schreibt? dat wär suuuuber.
    Danke schon im Voraus! (euer Filter ist komisch... der läst "vor raus"(zusammen geschriebende) nicht durch... verrückt)



  • hi,

    willst du ihm nicht lieber ein x-beliebiges buch zeigen, in dem das erklärt ist. es wäre wesentlich einfacher und (wichtiger) er würde es vermutlich eher glauben. schließlich kann es ja sein, dass dein code in wirklichkeit "nur auf eine schleife wartet"...



  • ich hab schon ne halbes stunde mit ihm diskutiert und auch andere Lehrer darauf angesprochen das sie ihm das Erklären sollten...
    Ausserdem will ich das auch für mich selbst wissen.



  • Für mich hört sich das fast so an, als wenn dein Lehrer nur die Windowsprogrammierung kennt, wo die Programme ja wirklich eine Ereignisschleife laufen lassen um dann auf Events zu reagieren.
    Du kannst dir ja ein Assemblerbuch holen und in den meisten Büchern die den Real-Mode behandeln wirst du sowieso viel mit Interrupts arbeiten und kannst dann auch einen Interrupthandler schreiben und ihm vorlegen. Muss ja wohl nicht zwingend in C++ sein.

    Btw: Voraus wird mit einem r geschrieben.



  • Unter Windows XP solltest du eingentlich nur Interrupt Handler in Kernel Treibern benutzten dürfen... Desswegen geht das nicht. Du könntest als alternative auch ein DOS Programm schreiben... Da sollte das klappen.

    Als Alternative kannst du deinem Lehrer mal ne Dokumentation über DMA Zeigen oder ihn fragen, wie preemptives Multitasking ohne Timer Interrupt funktionieren soll.



  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Rund um die Programmierung verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Gibt es irgendwo eine gute Doku zum Treiber schreiben... dieser ganze MSDN mist gefällt mir garnicht.



  • binky schrieb:

    Gibt es irgendwo eine gute Doku zum Treiber schreiben... dieser ganze MSDN mist gefällt mir garnicht.

    Von Microsoft gibt es das Driver Development Kit (DDK). Da sind bestimmt Beispiele bei.



  • lrdk0a496 ßi a wtj afpokg schrieb:

    hi,

    [...] schließlich kann es ja sein, dass dein code in wirklichkeit "nur auf eine schleife wartet"...

    😃 👍



  • Lass die Finger von Kernel Treibern, hast du nicht genug Ahnung von. Kauf dir ein Buch oder wurschtel mit Bochs rum.

    MfG,
    *Ranner*



  • das ich mal keine ahnung hatte hat mich noch nie aufgehalten.
    Dann wird halt nachgeguckt was das alles zu bedeuten hat. Und wenn ich eins kann ist das kaputt machen. Und es macht mir Spaß!
    Also, warum nicht mal mit nem eigenen Treiber das System zerstören? ^^
    Hab hier eh noch einen lustigen Jog Shuttle für JVC Videorekorder zu den es noch keine Windows Treiber gibt... vielleicht krieg ichs ja hin ^^
    sonst halt nicht.



  • das ganze nennt sich bei mir ehrgeiz.



  • bei DOS ist der meist genutzte interrupt 21h
    bei den BIOS interrupts ist es schon anders ... aber ja es läuft alles über interrupts/ports ... BIOS ist ne software und es stellt die BIOS/grund interrupts dar und ports sind directe hardware anschße


Anmelden zum Antworten