Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Interrupts abschalten? (https://www.delphipraxis.net/26780-interrupts-abschalten.html)

Luckie 29. Jul 2004 12:01

Re: Interrupts abschalten?
 
Zitat:

Zitat von w3seek
Man kann lediglich Threads suspendieren.

Um w3seek zu ergänzen. Das ist nicht weniger ungefährlich. Hälts du einen Thread an, der gerade in einen kritischen Abschnitt eingetreten ist, blockierst du eventuell andere Threads, die auf die Ressourcen warten. Und das kann ebendso fatale und unkontrollierbare Folgen haben. Finger weg von so was, kann ich da nur sagen.

rantanplan99 29. Jul 2004 12:04

Re: Interrupts abschalten?
 
Hm, ich meine Interrupts zu 'deaktivieren' geht schon. zumindest ging es früher.

also in Assembler gibt es die Befehle CLI und STI, ersterer unterbindet Hardware-Interrupts, und STI das Gegenteil. Das verwendet man z.B. wenn man eine Routine zur Interrupt behandlung schreibt, und am Anfang ruft man CLI auf, am Ende der routine dann STI, um zu verhindern das während der Behandlung eines Hardware-Interrupts, die Routine durch einen Erneuten Interrupt unterbrochen wird. Zumindest war das bei den älteren Prozessoren so die im Real-Mode liefen, ob das bei den neuen Prozessoren so funktioniert, die im Protected-Mode arbeiten weiss ich nicht, ich bezweifel es aber.

Generell ist das unterbinden von Interrupts eine saublöde Idee, die fatal enden kann, bzw. wird, weil du die ja für längere Zeit unterbinden willst.

w3seek 29. Jul 2004 12:06

Re: Interrupts abschalten?
 
Zitat:

Zitat von Luckie
Das ist nicht weniger ungefährlich. Hälts du einen Thread an, der gerade in einen kritischen Abschnitt eingetreten ist, blockierst du eventuell andere Threads, die auf die Ressourcen warten. Und das kann ebendso fatale und unkontrollierbare Folgen haben.

Das ist so nicht ganz korrekt. Sofern sich der Thread gerade im kernel-mode bereich befindet wird er erst beim zurueck-eintreten in den usermode angehalten (sofern er von user-mode code suspendiert wird), wenn ich mich richtig erinnere. Ansonsten waere das eine sehr fatale Sicherheitsluecke!

Borti 31. Jul 2004 11:56

Re: Interrupts abschalten?
 
ok, also, wenn ich mal zusammenfassen darf:
alles in allem sollt ich die finger davon lassen, weil die Chancen, dass ich mein OS zum Abschmieren bring sehr, sehr groß sind.
gruß,
Borti

Tubos 31. Jul 2004 12:47

Re: Interrupts abschalten?
 
Und noch was: wenn du die Priorität eines Prozesses über "Normal" hinweg erhöhen willst, muss das Programm unter Windows NT (also NT, 2000, XP) mit Administratorrechten gestartet werden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:05 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz