Also wie ich es mir schon analog gedacht habe...Warf hat geschrieben: Mo 28. Mär 2022, 21:53
Also als erstes einmal würde ich empfehlen, es einfach mal ganz dumm zu versuchen, thread starten, an CPU pinnen, Priorität auf Echtzeit/Maximum setzen und hoffen das es klappt. Musst einfach nur aufpassen das wenn du locks verwendest du keine system locks (critical sections, mutex, etc.) verwendest sondern spin locks damit dein prozess nicht von der CPU genommen wird
Die Frage ist was passiert wenn du out of sync kommst, also wenn dein Prozess gerescheduled wird und du musst 1-2 pakete aussetzen. Kann das system damit umgehen oder ist dann alles kaputt. Bzw. kannst du das system so umbaun das wenn was schief geht das system zumindest wieder in einen Stabilen status zurückkehren kann Falls ja wäre das eventuell schon die beste Lösung, so lange machen wie es läuft, und bei nem fehler einfach nen Fehlercode senden und das system zurücksetzen oder so
Mal das Bsp: Thread auspacken und schauen, wo er was ablegt.
Der einzig derzeit Aktuelle System Lock ist der für den den USB-UART umsetzter. Aber den zähl ich mal nicht mit, da er von Synapse erzeugt und gelöscht wird..
Und das Thena "Out of Sync".
Das schreit ja nach einem Streßtest

20 Minuten lang Daten (inkl. 3 Feste befehle) OHNE Ende rauspulfern und schauen, wann er in der Die Knie geht...