AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Interrupts abschalten?

Ein Thema von Borti · begonnen am 29. Jul 2004 · letzter Beitrag vom 31. Jul 2004
Antwort Antwort
Seite 1 von 2  1 2      
Borti

Registriert seit: 11. Okt 2003
151 Beiträge
 
#1

Interrupts abschalten?

  Alt 29. Jul 2004, 11:33
Hallo!
ich muss ein Delphi-Programm so schnell wie möglich laufen lassen. hierfür wollte ich, damit dieses Programm die ungeteilte Aufmerksamkeit des Prozessors hat, alle anderen Interrupts deaktivieren: Ist das überhaupt mit Delphi möglich?
Gruß,
Borti
Ich hab's versucht
(auch wenn's nicht so aus sieht)
  Mit Zitat antworten Zitat
neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#2

Re: Interrupts abschalten?

  Alt 29. Jul 2004, 11:37
Nein!

Das einzigste was möglich wäre, aber gefährlich, ist die Prozessprior... auf Realtime zu stellen.
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Interrupts abschalten?

  Alt 29. Jul 2004, 11:46
aber davon rate ich wirklcih ba. Denn dann hat dein Prozess eine höhere Priorität wie wichtige Systemprozsse. Selbst der Taskmamnger läuft nur mit der Priorität hoch. Ich glaube kaum, dass das Verhalten deines Programmes dem Benutzer gefallen würde. Optimiere lieber den Code und versuche, wenn mögloch eine Anpassung der Priorität nach oben zu vermeiden. Windows findet bei der Zuteilung der Rechenzeit meist einen guten Kompromiss, den man eigentlich nur ver "schlimmbessern" kann.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Borti

Registriert seit: 11. Okt 2003
151 Beiträge
 
#4

Re: Interrupts abschalten?

  Alt 29. Jul 2004, 11:47
Zitat:
Prozessprior... auf Realtime
die prozessorpriorität auf realtime zu stellen?
Was ist damit gemeint?
Ich hab's versucht
(auch wenn's nicht so aus sieht)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Interrupts abschalten?

  Alt 29. Jul 2004, 11:50
Les dir hiermal mein Threading Tutorial durch, dann wird es dir klarer: http://tutorials.luckie-online.de Was ich da mit Threads mache kann man auch mit Prozessen machen -> MSDN-Library durchsuchenSetPriorityClass.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
w3seek
(Gast)

n/a Beiträge
 
#6

Re: Interrupts abschalten?

  Alt 29. Jul 2004, 11:51
Zitat von Borti:
die prozessorpriorität auf realtime zu stellen?
Was ist damit gemeint?
Ok, wenn du das schon nicht weisst, traue ich dir schon gar nicht zu, zu wissen, was es mit den interrupts auf sich hat...
  Mit Zitat antworten Zitat
Borti

Registriert seit: 11. Okt 2003
151 Beiträge
 
#7

Re: Interrupts abschalten?

  Alt 29. Jul 2004, 11:52
ok, mach ich mal mit den tutorials.
aber gint's nicht die möglichkeit alle anderen prozesse anzuhalten ohne die priorität meines programms zu verändern?
Ich hab's versucht
(auch wenn's nicht so aus sieht)
  Mit Zitat antworten Zitat
neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#8

Re: Interrupts abschalten?

  Alt 29. Jul 2004, 11:52
Tschuldigung!

Nicht Processor sondern Process!

Leider habe ich nur MSDN-Library durchsuchenSetThreadPriority gefunden. Wie man die Priorität des Process im allgemeinen Ändern *mmmh*???

Aber ich warne nochmal: dieses Vorgehen ist in einem Multitask OS nicht gerade gut. Der Rechner könnte sich bei Programmierfehlern schnell aufhängen.

EDIT: Man bin ich heute schlecht in der Reschschreibung
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat
w3seek
(Gast)

n/a Beiträge
 
#9

Re: Interrupts abschalten?

  Alt 29. Jul 2004, 11:55
Zitat von Borti:
aber gint's nicht die möglichkeit alle anderen prozesse anzuhalten ohne die priorität meines programms zu verändern?
Prozesse kann man nicht anhalten. Man kann lediglich Threads suspendieren. Und wenn ueberhaupt auch nur wenn du die entsprechenden Rechte dazu hast, System-Threads kannst du jedenfalls nicht anhalten. Ausserdem wuerd ich lieber den code deiner Anwendung optimieren, als solche sehr kritischen dinge zu tun...
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Interrupts abschalten?

  Alt 29. Jul 2004, 11:59
Zitat von Borti:
aber gint's nicht die möglichkeit alle anderen prozesse anzuhalten ohne die priorität meines programms zu verändern?
Das widerspricht zum einem der Philosphie eines preemtiven Multitasking Betriebssystemes zum anderen ist es sehr gefährlich für die anderen Anwendungen und für die Stabilität des Betriebssystems überhaupt.

Bei einem koorperativen Multitsaking geht das. Dort ist jeder Prozess selber dafür verantwortlich Rechenzeit abzugeben. Und wenn er das nicht tut, dann "verhungern" die anderen Threads. Da waren die anderen Anwendungen im wahrsten Sinne des Wortes auf die Koorparationsbereitschaft der anderen Prozesse angewiesen. da dies wie schon erwähnt gefährlich ist, gibt es ab 32-Bit Window snur das preemptive, also dass das windows die Zuteilung der Rechenzeit übernimmt. Wie man die noch etwas beeinflussen kann, was das für auswirkungen hat und wie es umgesetzt wird, steht in meinem Tutorial.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz