Lowlevel

Lowlevel => Lowlevel-Coding => Thema gestartet von: lobmann am 24. April 2004, 21:46

Titel: Trap oder Int Gate
Beitrag von: lobmann am 24. April 2004, 21:46
eigentlich sagt der Titel schon alles
Also wann benutzt man welche Art von Gate oder lässt sich das nich so pauschal sagen.
Titel: Trap oder Int Gate
Beitrag von: BigOlly am 24. April 2004, 23:22
hmmm..   Wenn ich das richtig verstanden hab wird beim Trap-Gate im Gegensatz zum Int-Gate das Interrupt-Flag nicht gelöscht....

...aber ich würde jetzt meine Hand dafür nicht in den Toaster halten...! ;)
Titel: Trap oder Int Gate
Beitrag von: lobmann am 24. April 2004, 23:35
Jo das ist richtig nur ich hab halt absolut keine Ahnung was ich jetzt z.B.
für Software Hardware Ints oder Exceptions verwenden soll.
Titel: Trap oder Int Gate
Beitrag von: TeeJay am 25. April 2004, 01:38
Bei Hardware Ints solltest du auf jedenfall Interrupt Gates nutzen, da mit dem setzen des IF-Flags verhindert werden soll, das wärend der Abarbeitung eines Hardware-Ints ein zweiter Interrupt ausgelöst wird.

Das ist daher wichtig da die meisten Interrupt-Routinen nich reentrant (schreibt man das so?) sind. Sprich es würde ärger geben wenn man diese Funktion in mehreren Thread zweimal (also gleichzeitig) ausführen würde.
Titel: Trap oder Int Gate
Beitrag von: lobmann am 25. April 2004, 09:23
thx
Nur wie ist das wenn ich jetz nen hardware int bearbeite stellen sich dann andere auftretende Ints in ne Warteschlange oder so
Titel: Trap oder Int Gate
Beitrag von: TeeJay am 25. April 2004, 11:10
Japp. Der PIC merkt sich das noch mehrere Ints aufgetreten sind.
Und meistens ist der Int Handler ja recht kurz, so das dieser in sehr kurzer Zeit abgearbeitet wird und der neue Int bearbeitet werden kann.
Wenn dem nicht so wäre, würde ja dein PC nur am stocken sein, weil der dem abarbeiten der Ints nichtmehr hinterherkommt :)
Titel: Trap oder Int Gate
Beitrag von: lobmann am 25. April 2004, 12:36
Thx
daran hats geharkt