INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

startup.rtexe auf cRIO-904x mit "RT" Priorität ausführen



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

22.11.2018, 14:34 (Dieser Beitrag wurde zuletzt bearbeitet: 22.11.2018 14:37 von rolfk.)
Beitrag #6

rolfk Offline
LVF-Guru
*****


Beiträge: 2.305
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
RE: startup.rtexe auf cRIO-904x mit "RT" Priorität ausführen
(26.10.2018 15:46 )RoK schrieb:  Agiert der Linux-Scheduler nicht unabhängig von der Timing- und Priorisierungs-Engine von NI im RT-Application-Thread? Damit meine ich: Warum sollte eine Höhere System-Priorität der RT-Applikation die "thread-interne" Priorisierung überhaupt beeinflussen? Ich habe das so verstanden, dass die Linux-seitige Priorisierung vereinfacht ausgedrückt Anteile an der verfügbaren CPU-Rechenzeit zur Verfügung stellt und von allem, was innerhalb eines Threads / Hier: RT-Application-Thread, keine Kenntnis hat.

Das Ganze ist etwas komplizierter als Du denkst. Der Linux scheduler hat tatsächlich keinerlei spezifischen Kenntnisse was eine Applikation mit den Threads tut, die sie von ihm anfragt aber LabVIEW als Applikation started je nach Anzahl Cores die Dein System zur Verfügung stellt, default mit bis zu 8 threads per Subsystem per Core auf (aber das ist in guter LabVIEW Art mit Settings im ini File konfigurierbar und Du kannst auch explizit 100 Threads in einem Subsystem initialisieren lassen). Die Subsysteme sind die Threadgruppen die LabVIEW intern hält, wie Standard, Instrument IO, DAQ, Other1 und Other2 und dann noch den Hauptthread der auch als User Interface thread bezeichnet wird. In diesen Threads teilt LabVIEW die VIs ein wenn Du in den Execution Settings eine explizite Zuweisung vornimmst, anders werden die VIs im selben Subsystem ausgeführt wie deren Aufrufer und das Toplevel VI im Standard Subsystem, wenn keine spezifieke Zuweisung in den VI Settings besteht.

Durch eine höhere Priorität an die Applikation zuzuweisen bekommen alle diese potentiel 40 oder mehr Threads diese Priorität was auf die Systemperformance und die Kooperation mit anderen Teilen des Systems sehr weitgehende Auswirkungen haben kann.

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
30
Antwort schreiben 


Nachrichten in diesem Thema
RE: startup.rtexe auf cRIO-904x mit "RT" Priorität ausführen - rolfk - 22.11.2018 14:34

Gehe zu: