|
|
|
|
@ -82227,7 +82227,7 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node COLOR="#338800" CREATED="1698286167843" ID="ID_3145780" MODIFIED="1698458668582" TEXT="GroomingToken richtig behandeln">
|
|
|
|
|
<node COLOR="#338800" CREATED="1698286167843" FOLDED="true" ID="ID_3145780" MODIFIED="1698458668582" TEXT="GroomingToken richtig behandeln">
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
<node COLOR="#338800" CREATED="1698286228019" ID="ID_1492651640" MODIFIED="1698453144418" TEXT="acquire ist korrekt (nochmal überprüft)">
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
@ -82314,7 +82314,7 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
<icon BUILTIN="bell"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node COLOR="#338800" CREATED="1698372042164" ID="ID_1272410719" MODIFIED="1698518605438" TEXT="Clock-Implementierung">
|
|
|
|
|
<node COLOR="#338800" CREATED="1698372042164" FOLDED="true" ID="ID_1272410719" MODIFIED="1698518605438" TEXT="Clock-Implementierung">
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
<node COLOR="#435e98" CREATED="1698372415522" ID="ID_932191846" MODIFIED="1698518065927" TEXT="steady_clock verwenden">
|
|
|
|
|
<icon BUILTIN="yes"/>
|
|
|
|
|
@ -82524,6 +82524,28 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698372095829" ID="ID_259045952" MODIFIED="1698372163476" TEXT="λ-done einbinden">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698533894187" ID="ID_1515660165" MODIFIED="1698534658603" TEXT="Mediator / Listener für Betriebszustände">
|
|
|
|
|
<linktarget COLOR="#ea5540" DESTINATION="ID_1515660165" ENDARROW="Default" ENDINCLINATION="-1517;105;" ID="Arrow_ID_1696922321" SOURCE="ID_1227874220" STARTARROW="None" STARTINCLINATION="912;-77;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#ccb59b" COLOR="#6e2a38" CREATED="1698534009356" ID="ID_538756893" MODIFIED="1698534407291" TEXT="Notwendigkeit zeichnet sich nun klar ab">
|
|
|
|
|
<richcontent TYPE="NOTE"><html>
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<p>
|
|
|
|
|
Habe einige Zeit gezögert, aber nun werden die Verknüpfungen definitiv zu vielfältig. Also stellt der EngineObserver so etwas wie einen »Rück-Kanal« bereit. Leider stellen sich hiermit erneut die gesamten (hinlänglich bekannten) Probleme bezüglich der Domäne eine Benachrichtigungs-Systems. Zu welchem Grad legt das System die Kommunikation fest? Wie offen oder verbindlich sind die Teilnehmer? Wie stark vorherbestimmt sind die Nachrichten-Inhalte? Wieviel Payload ist notwendig?
|
|
|
|
|
</p>
|
|
|
|
|
</body>
|
|
|
|
|
</html></richcontent>
|
|
|
|
|
<font ITALIC="true" NAME="SansSerif" SIZE="14"/>
|
|
|
|
|
<icon BUILTIN="yes"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698534414605" ID="ID_1231576951" MODIFIED="1698534464760" TEXT="muß im Besonderen die Scheduler-Emergency kommunizieren">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698544770139" ID="ID_1280127725" MODIFIED="1698544795910" TEXT="könnte asynchron und demand-driven arbeiten">
|
|
|
|
|
<linktarget COLOR="#fefdd9" DESTINATION="ID_1280127725" ENDARROW="Default" ENDINCLINATION="-176;11;" ID="Arrow_ID_187765169" SOURCE="ID_422887207" STARTARROW="None" STARTINCLINATION="-154;-113;"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#fdfdcf" COLOR="#ff0000" CREATED="1697663918107" ID="ID_210862409" MODIFIED="1697675123151" TEXT="Load-Controller vorsehen">
|
|
|
|
|
<linktarget COLOR="#af587f" DESTINATION="ID_210862409" ENDARROW="Default" ENDINCLINATION="-33;645;" ID="Arrow_ID_204955453" SOURCE="ID_1110932778" STARTARROW="None" STARTINCLINATION="250;17;"/>
|
|
|
|
|
@ -82613,6 +82635,39 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698544547801" ID="ID_1011726550" MODIFIED="1698544832553" TEXT="regelmäßige Integration / state fusion">
|
|
|
|
|
<linktarget COLOR="#9e4279" DESTINATION="ID_1011726550" ENDARROW="Default" ENDINCLINATION="235;181;" ID="Arrow_ID_1299019434" SOURCE="ID_897465919" STARTARROW="None" STARTINCLINATION="425;-47;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node CREATED="1698544656547" ID="ID_422887207" MODIFIED="1698544802405" TEXT="läuft (nur) im Tick — könnte daher Statistiken vom EngineObserver beziehen">
|
|
|
|
|
<arrowlink COLOR="#fefdd9" DESTINATION="ID_1280127725" ENDARROW="Default" ENDINCLINATION="-176;11;" ID="Arrow_ID_187765169" STARTARROW="None" STARTINCLINATION="-154;-113;"/>
|
|
|
|
|
<font NAME="SansSerif" SIZE="12"/>
|
|
|
|
|
<icon BUILTIN="idea"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#d2beaf" COLOR="#5c4d6e" CREATED="1698524123493" HGAP="7" ID="ID_3688190" MODIFIED="1698524141896" TEXT="Code-Anordnung festlegen" VSHIFT="5">
|
|
|
|
|
<icon BUILTIN="hourglass"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698524143083" ID="ID_1366033191" MODIFIED="1698524154797" TEXT="Speicher-Ort für eine Service-Instanz">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#f0d5c5" COLOR="#990033" CREATED="1698524306749" ID="ID_1799403064" MODIFIED="1698524324027" TEXT="Überleung: wie wird der Scheduler eingebunden?">
|
|
|
|
|
<font NAME="SansSerif" SIZE="12"/>
|
|
|
|
|
<icon BUILTIN="help"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698524326034" ID="ID_201292772" MODIFIED="1698524354932" TEXT="ggfs free-Function für start/stop des Services vorsehen">
|
|
|
|
|
<icon BUILTIN="idea"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698524155785" ID="ID_1023938528" MODIFIED="1698524182958" TEXT="dem ensprechend den Implementierungs-Code festlegen">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node CREATED="1698524184757" ID="ID_1803872905" MODIFIED="1698524211085" TEXT="nur wenig Code muß wirklich im Header stehen"/>
|
|
|
|
|
<node CREATED="1698524211841" ID="ID_851232758" MODIFIED="1698524300237" TEXT="der Konstruktor-Aufruf emittiert den Kern-Block">
|
|
|
|
|
<icon BUILTIN="idea"/>
|
|
|
|
|
<node CREATED="1698524251268" ID="ID_327974056" MODIFIED="1698524259015" TEXT="Setup + Verdrahtung"/>
|
|
|
|
|
<node CREATED="1698524260075" ID="ID_782075307" MODIFIED="1698524265415" TEXT="WorkForce-Konstruktor"/>
|
|
|
|
|
<node CREATED="1698524270265" ID="ID_241115804" MODIFIED="1698524284940" TEXT="bindet work::Worker-Implementierung"/>
|
|
|
|
|
<node CREATED="1698524289134" ID="ID_624223134" MODIFIED="1698524295738" TEXT="diese inlined die Scheduler-Internals"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#c8c0b6" COLOR="#435e98" CREATED="1693172069235" ID="ID_1573845677" MODIFIED="1697675305351" TEXT="Layer-1: SchedulerInvocation"/>
|
|
|
|
|
@ -82892,8 +82947,8 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
<icon BUILTIN="yes"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1697982455236" ID="ID_645321047" MODIFIED="1697982460315" TEXT="Schemata">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node COLOR="#338800" CREATED="1697982455236" ID="ID_645321047" MODIFIED="1698519641737" TEXT="Schemata">
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
<node COLOR="#338800" CREATED="1697982678423" ID="ID_77969589" MODIFIED="1698072830497" TEXT="tendNext">
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
<node COLOR="#338800" CREATED="1697982717584" ID="ID_267473149" MODIFIED="1698072831864" TEXT="Prüf-Prädikat: tendedNext()">
|
|
|
|
|
@ -82981,8 +83036,8 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
<node CREATED="1698026607392" ID="ID_1582820099" MODIFIED="1698196268926" TEXT="NEAR_HORIZON = 50µs"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1697983292684" ID="ID_1923883572" MODIFIED="1697983303707" TEXT="scatteredDelay">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node COLOR="#338800" CREATED="1697983292684" ID="ID_1923883572" MODIFIED="1698519616657" TEXT="scatteredDelay">
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
<node CREATED="1697983567535" ID="ID_567326127" MODIFIED="1697983640429" TEXT="ist eine Dispatch-Funktion">
|
|
|
|
|
<richcontent TYPE="NOTE"><html>
|
|
|
|
|
<head/>
|
|
|
|
|
@ -83157,7 +83212,7 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node COLOR="#338800" CREATED="1698110909230" ID="ID_1719824145" MODIFIED="1698196662708" TEXT="Ausführen der Verzögerung gemäß Schema">
|
|
|
|
|
<node COLOR="#338800" CREATED="1698110909230" FOLDED="true" ID="ID_1719824145" MODIFIED="1698196662708" TEXT="Ausführen der Verzögerung gemäß Schema">
|
|
|
|
|
<arrowlink COLOR="#6391ac" DESTINATION="ID_664525403" ENDARROW="Default" ENDINCLINATION="-10;127;" ID="Arrow_ID_225157022" STARTARROW="None" STARTINCLINATION="118;-6;"/>
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
<node COLOR="#435e98" CREATED="1698195684615" ID="ID_491788148" MODIFIED="1698196251944" TEXT="Zuordnung der Namen erscheint etwas verwirrend">
|
|
|
|
|
@ -83225,9 +83280,9 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698003862646" ID="ID_402749835" MODIFIED="1698003871297" TEXT="Integration mit...">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1698003871908" ID="ID_391492289" MODIFIED="1698079188892" TEXT="work-Function">
|
|
|
|
|
<node COLOR="#338800" CREATED="1698003871908" ID="ID_391492289" MODIFIED="1698519650070" TEXT="work-Function">
|
|
|
|
|
<arrowlink COLOR="#7779a3" DESTINATION="ID_492054934" ENDARROW="Default" ENDINCLINATION="-814;62;" ID="Arrow_ID_817672667" STARTARROW="None" STARTINCLINATION="1393;-112;"/>
|
|
|
|
|
<icon BUILTIN="pencil"/>
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
<node COLOR="#338800" CREATED="1698019149574" HGAP="40" ID="ID_982468485" MODIFIED="1698078066168" TEXT="Fallunterscheidung" VSHIFT="21">
|
|
|
|
|
<linktarget COLOR="#378f79" DESTINATION="ID_982468485" ENDARROW="Default" ENDINCLINATION="-84;-47;" ID="Arrow_ID_902782295" SOURCE="ID_1677472042" STARTARROW="None" STARTINCLINATION="31;94;"/>
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
@ -83275,16 +83330,98 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698159441179" ID="ID_486995126" MODIFIED="1698372610717" TEXT="Scheduler-Tick">
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698159441179" ID="ID_486995126" MODIFIED="1698523800078" TEXT="Scheduler-Tick">
|
|
|
|
|
<linktarget COLOR="#fffcc5" DESTINATION="ID_486995126" ENDARROW="Default" ENDINCLINATION="579;-95;" ID="Arrow_ID_1801107947" SOURCE="ID_671338782" STARTARROW="None" STARTINCLINATION="292;11;"/>
|
|
|
|
|
<linktarget COLOR="#994d72" DESTINATION="ID_486995126" ENDARROW="Default" ENDINCLINATION="-91;14;" ID="Arrow_ID_973238030" SOURCE="ID_1391329454" STARTARROW="None" STARTINCLINATION="71;5;"/>
|
|
|
|
|
<linktarget COLOR="#4f89b7" DESTINATION="ID_486995126" ENDARROW="Default" ENDINCLINATION="232;35;" ID="Arrow_ID_1502519432" SOURCE="ID_1247362696" STARTARROW="None" STARTINCLINATION="108;-12;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698523819504" HGAP="114" ID="ID_1592332331" MODIFIED="1698523829332" TEXT="Rahmen schaffen" VSHIFT="8">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node CREATED="1698524392305" ID="ID_1232693946" MODIFIED="1698524394773" TEXT="handleDutyCycle()"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698532933228" ID="ID_1847975334" MODIFIED="1698532967908" TEXT="Periode und Deadline für Ticks">
|
|
|
|
|
<linktarget COLOR="#f03375" DESTINATION="ID_1847975334" ENDARROW="Default" ENDINCLINATION="-449;34;" ID="Arrow_ID_1046093983" SOURCE="ID_233989928" STARTARROW="None" STARTINCLINATION="222;-17;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node COLOR="#435e98" CREATED="1698534503171" ID="ID_1796088889" MODIFIED="1698540893762" TEXT="wo (vor)konfiguriert?">
|
|
|
|
|
<icon BUILTIN="help"/>
|
|
|
|
|
<node CREATED="1698540895030" ID="ID_111536775" MODIFIED="1698540902950" TEXT="scheduler.hpp"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#d2beaf" COLOR="#5c4d6e" CREATED="1698540904216" ID="ID_1727121091" MODIFIED="1698540910704" TEXT="Plan: Scheduler-Parameter">
|
|
|
|
|
<icon BUILTIN="hourglass"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#e0d3a2" COLOR="#990000" CREATED="1698534613211" ID="ID_1189633297" MODIFIED="1698541127203" TEXT="Tick-Deadline ≡ globale Überlastungs-Toleranz des Schedulers">
|
|
|
|
|
<arrowlink COLOR="#fd2f46" DESTINATION="ID_1153107499" ENDARROW="Default" ENDINCLINATION="524;-25;" ID="Arrow_ID_251741761" STARTARROW="None" STARTINCLINATION="420;464;"/>
|
|
|
|
|
<icon BUILTIN="info"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698523868063" HGAP="124" ID="ID_26600563" MODIFIED="1698523884552" TEXT="Selbst-Überwachung">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698534832254" ID="ID_1414543996" MODIFIED="1698534887888" TEXT="Plan: der DutyCycle ist Status-Asessment">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node CREATED="1698534900965" ID="ID_488282572" MODIFIED="1698534907381" TEXT="er ist idempotent"/>
|
|
|
|
|
<node CREATED="1698534889399" ID="ID_1021949731" MODIFIED="1698534900169" TEXT="er ist ohne Vorbedingungen stets aufsführbar">
|
|
|
|
|
<node BACKGROUND_COLOR="#f8f1cb" COLOR="#a50125" CREATED="1698544429803" ID="ID_24248194" MODIFIED="1698544506289" TEXT="mögliche Falle: Load-State-Metriken auf Basis der WorkForce">
|
|
|
|
|
<icon BUILTIN="messagebox_warning"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698544455094" ID="ID_726163729" MODIFIED="1698544500012" TEXT="vorteilhaft wäre, die WorkForce erst nach dem ersten Tick hochzufahren"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698534920078" ID="ID_1926216575" MODIFIED="1698534936605" TEXT="nach seinem Aufruf ist der Status normalisiert">
|
|
|
|
|
<icon BUILTIN="yes"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1698542388722" ID="ID_1120963605" MODIFIED="1698543129256" TEXT="Queue bereinigen">
|
|
|
|
|
<icon BUILTIN="pencil"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698542396065" ID="ID_1705516567" MODIFIED="1698543118152" TEXT="muß auch gelöschte oder verfallene Einträge beseitigen">
|
|
|
|
|
<arrowlink COLOR="#7e4dc3" DESTINATION="ID_768314841" ENDARROW="Default" ENDINCLINATION="362;-65;" ID="Arrow_ID_464500099" STARTARROW="None" STARTINCLINATION="213;11;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node COLOR="#338800" CREATED="1698543132047" ID="ID_1879818036" MODIFIED="1698543148250" TEXT="kann auch gleich noch feedPrioritisation() machen">
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1697982436029" ID="ID_288711039" MODIFIED="1698073045501" TEXT="Test">
|
|
|
|
|
<arrowlink COLOR="#56a5a9" DESTINATION="ID_488605324" ENDARROW="Default" ENDINCLINATION="457;-68;" ID="Arrow_ID_1794430254" STARTARROW="None" STARTINCLINATION="-752;0;"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1698534523065" ID="ID_1249909001" MODIFIED="1698544865983" TEXT="BlockFlow pflegen">
|
|
|
|
|
<icon BUILTIN="pencil"/>
|
|
|
|
|
<node COLOR="#338800" CREATED="1698534530622" ID="ID_1453816295" MODIFIED="1698544865368" TEXT="der Tick löst die BlockFlow-Bereinigung aus">
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node COLOR="#5b280f" CREATED="1698534549651" ID="ID_1836032346" MODIFIED="1698544865368" TEXT="diese muß um einem Sicherheitspuffer verzögert nachfolgen">
|
|
|
|
|
<icon BUILTIN="button_cancel"/>
|
|
|
|
|
<node CREATED="1698541160966" ID="ID_904830076" MODIFIED="1698544865368" TEXT="wozu?"/>
|
|
|
|
|
<node CREATED="1698541168053" ID="ID_878256611" MODIFIED="1698544865368" TEXT="Deadline ist Deadline"/>
|
|
|
|
|
<node CREATED="1698541177524" ID="ID_199918854" MODIFIED="1698544865368" TEXT="und der Tick läuft im Grooming-Mode">
|
|
|
|
|
<richcontent TYPE="NOTE"><html>
|
|
|
|
|
<head/>
|
|
|
|
|
<body>
|
|
|
|
|
<p>
|
|
|
|
|
d.h. was grade eben die Deadline „reißt“, kann auch von niemandem mehr gestartet werden
|
|
|
|
|
</p>
|
|
|
|
|
</body>
|
|
|
|
|
</html></richcontent>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#d2beaf" COLOR="#5c4d6e" CREATED="1698544530128" ID="ID_897465919" MODIFIED="1698544832552" TEXT="Load-Status aktualisieren">
|
|
|
|
|
<arrowlink COLOR="#9e4279" DESTINATION="ID_1011726550" ENDARROW="Default" ENDINCLINATION="235;181;" ID="Arrow_ID_1299019434" STARTARROW="None" STARTINCLINATION="425;-47;"/>
|
|
|
|
|
<icon BUILTIN="hourglass"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#f8f1cb" COLOR="#a50125" CREATED="1698530480307" ID="ID_355476974" MODIFIED="1698541315516" TEXT="Warnung: Selbstschutz vor de-Allokation">
|
|
|
|
|
<arrowlink COLOR="#ff2f19" DESTINATION="ID_269636711" ENDARROW="Default" ENDINCLINATION="-577;-1106;" ID="Arrow_ID_1849442376" STARTARROW="None" STARTINCLINATION="173;762;"/>
|
|
|
|
|
<linktarget COLOR="#ed3471" DESTINATION="ID_355476974" ENDARROW="Default" ENDINCLINATION="-616;43;" ID="Arrow_ID_729257748" SOURCE="ID_1982008339" STARTARROW="None" STARTINCLINATION="689;49;"/>
|
|
|
|
|
<icon BUILTIN="messagebox_warning"/>
|
|
|
|
|
<node CREATED="1698530661134" ID="ID_345977666" MODIFIED="1698530674141" TEXT="muß Entgleisen der Steuermechanismen erkennen"/>
|
|
|
|
|
<node CREATED="1698530762981" ID="ID_1141545060" MODIFIED="1698530779783" TEXT="und dann die Verarbeitung sauber auslaufen lassen"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1697982436029" ID="ID_288711039" MODIFIED="1698521623327" TEXT="Test">
|
|
|
|
|
<arrowlink COLOR="#56a5a9" DESTINATION="ID_488605324" ENDARROW="Default" ENDINCLINATION="457;-68;" ID="Arrow_ID_1794430254" STARTARROW="None" STARTINCLINATION="-752;0;"/>
|
|
|
|
|
<arrowlink COLOR="#56a5a9" DESTINATION="ID_1292738036" ENDARROW="Default" ENDINCLINATION="286;-465;" ID="Arrow_ID_367470516" STARTARROW="None" STARTINCLINATION="-752;0;"/>
|
|
|
|
|
<icon BUILTIN="pencil"/>
|
|
|
|
|
<node COLOR="#338800" CREATED="1698521316395" ID="ID_1194473945" MODIFIED="1698521326921" TEXT="kann im Test die Timing/Sleep-Muster zeigen">
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698372200013" ID="ID_1863445864" MODIFIED="1698372206543" TEXT="Scheduler start/stop">
|
|
|
|
|
@ -83296,9 +83433,97 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698372288228" ID="ID_1391329454" MODIFIED="1698372361257" TEXT="richtiges Zusammenspiel mit dem Tick">
|
|
|
|
|
<arrowlink COLOR="#994d72" DESTINATION="ID_486995126" ENDARROW="Default" ENDINCLINATION="-91;14;" ID="Arrow_ID_973238030" STARTARROW="None" STARTINCLINATION="71;5;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node CREATED="1698372366569" HGAP="31" ID="ID_581955078" MODIFIED="1698372383660" TEXT="der Tick mus von selber stehen bleiben" VSHIFT="18"/>
|
|
|
|
|
<node CREATED="1698372366569" HGAP="31" ID="ID_581955078" MODIFIED="1698539690981" TEXT="der Tick muß von selber anhalten" VSHIFT="18"/>
|
|
|
|
|
<node CREATED="1698372384694" HGAP="25" ID="ID_1896236351" MODIFIED="1698372393274" TEXT="damit fällt die Queue leer"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698522290233" ID="ID_1911911283" MODIFIED="1698522313757" TEXT="Status bereits über empty() / isnil() ersichtlich">
|
|
|
|
|
<icon BUILTIN="idea"/>
|
|
|
|
|
<node CREATED="1698522320375" ID="ID_1572899444" MODIFIED="1698522328008" TEXT="solange der Tick tickt, kann er nicht leer sein"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698522456723" ID="ID_1793836905" MODIFIED="1698522465322" TEXT="Zustandsübergänge realisieren">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698522466298" ID="ID_1846809868" MODIFIED="1698522524910" TEXT="ignite() ⟶ Tick etablieren">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#f0d5c5" COLOR="#990033" CREATED="1698523669922" HGAP="21" ID="ID_1926013578" MODIFIED="1698545591203" TEXT="ggfs. internen Reset?" VSHIFT="-14">
|
|
|
|
|
<arrowlink COLOR="#ecfdbe" DESTINATION="ID_1951108355" ENDARROW="Default" ENDINCLINATION="-66;-3;" ID="Arrow_ID_632624217" STARTARROW="None" STARTINCLINATION="16;2;"/>
|
|
|
|
|
<icon BUILTIN="help"/>
|
|
|
|
|
<node CREATED="1698545349628" ID="ID_635933117" MODIFIED="1698545369376" TEXT="betrifft vor allem den LoadController"/>
|
|
|
|
|
<node CREATED="1698545387305" ID="ID_1133340355" MODIFIED="1698545484215" TEXT="abgesehen davon hat der Scheduler nur Daten-bezogenen kontextuellen State"/>
|
|
|
|
|
<node CREATED="1698545562226" HGAP="29" ID="ID_891146084" MODIFIED="1698545583796" TEXT="er sollte mit normalen Methoden aus jedem Load-Zustand sauber anlaufen" VSHIFT="-10"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node COLOR="#338800" CREATED="1698523636422" ID="ID_1247362696" MODIFIED="1698545597610" TEXT="eine Tick-Activity absetzen">
|
|
|
|
|
<arrowlink COLOR="#4f89b7" DESTINATION="ID_486995126" ENDARROW="Default" ENDINCLINATION="232;35;" ID="Arrow_ID_1502519432" STARTARROW="None" STARTINCLINATION="108;-12;"/>
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
<node COLOR="#435e98" CREATED="1698544892271" ID="ID_1951108355" MODIFIED="1698545516901" TEXT="Update und Tick-Planung durch DutyCycle-Tick selber">
|
|
|
|
|
<linktarget COLOR="#ecfdbe" DESTINATION="ID_1951108355" ENDARROW="Default" ENDINCLINATION="-66;-3;" ID="Arrow_ID_632624217" SOURCE="ID_1926013578" STARTARROW="None" STARTINCLINATION="16;2;"/>
|
|
|
|
|
<icon BUILTIN="idea"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698523685888" ID="ID_993061444" MODIFIED="1698523699870" TEXT="die WorkForce starten">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#d2beaf" COLOR="#5c4d6e" CREATED="1698523713636" ID="ID_1082114161" MODIFIED="1698523721739" TEXT="hier könnte man schrittweise vorgehen">
|
|
|
|
|
<icon BUILTIN="hourglass"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698523722518" ID="ID_153443695" MODIFIED="1698523747167" TEXT="vorerst aber starten wir sofort mit Maximal-Leistung">
|
|
|
|
|
<icon BUILTIN="yes"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698523751770" ID="ID_903457471" MODIFIED="1698523767446" TEXT="(WorkForce wird sich selbst nach 2sec herunterregeln)"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698522492081" ID="ID_1777263362" MODIFIED="1698522515173" TEXT="terminateProcessing �� Gewalt!">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698522970735" ID="ID_728729079" MODIFIED="1698523703142" TEXT="die WorkForce kalt machen">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698522979070" ID="ID_27890829" MODIFIED="1698523707098" TEXT="der Destruktor wartet">
|
|
|
|
|
<icon BUILTIN="idea"/>
|
|
|
|
|
<node CREATED="1698523569872" ID="ID_158276586" MODIFIED="1698523584913" TEXT="die Selbstmord-Flag wurde gesetzt"/>
|
|
|
|
|
<node CREATED="1698523585621" ID="ID_896793694" MODIFIED="1698523606526" TEXT="Worker sterben sobald sie zurückkommen"/>
|
|
|
|
|
<node CREATED="1698523607240" ID="ID_1186275785" MODIFIED="1698523619800" TEXT="Jedweder Kontrakt ist gebrochen">
|
|
|
|
|
<icon BUILTIN="clanbomber"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698522985869" ID="ID_319295239" MODIFIED="1698523708965" TEXT="danach die Queue leeren">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#f8f1cb" COLOR="#a50125" CREATED="1698523062280" ID="ID_1393673316" MODIFIED="1698523095951" TEXT="BlockFlow besser nicht anfassen">
|
|
|
|
|
<icon BUILTIN="messagebox_warning"/>
|
|
|
|
|
<node CREATED="1698523098414" ID="ID_1417067453" MODIFIED="1698523106568" TEXT="eigentlich könnte man den auch leeren"/>
|
|
|
|
|
<node CREATED="1698523107143" ID="ID_807106136" MODIFIED="1698523114759" TEXT="aber das bricht den Epoch-Contract"/>
|
|
|
|
|
<node CREATED="1698523115588" ID="ID_1469556071" MODIFIED="1698523126870" TEXT="es könnte blockende external notifications geben"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#fdfdcf" COLOR="#ff0000" CREATED="1698523161438" ID="ID_88143705" MODIFIED="1698523176612" TEXT="noch nicht klar wie wir das handhaben">
|
|
|
|
|
<icon BUILTIN="bell"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#fdfdcf" COLOR="#ff0000" CREATED="1698532686214" ID="ID_272237675" MODIFIED="1698532696468" TEXT="Deadlines und Selbstregulierung">
|
|
|
|
|
<icon BUILTIN="flag-pink"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698532697859" ID="ID_1071571068" MODIFIED="1698532724472" TEXT="Deadlines in das System integrieren">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698532716488" ID="ID_337384722" MODIFIED="1698532910109" TEXT="in die Priority-Queue">
|
|
|
|
|
<arrowlink COLOR="#ef4776" DESTINATION="ID_136482882" ENDARROW="Default" ENDINCLINATION="69;-169;" ID="Arrow_ID_63115321" STARTARROW="None" STARTINCLINATION="-285;-30;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698532728431" ID="ID_233989928" MODIFIED="1698532974876" TEXT="mit Tick und Allokation integrieren">
|
|
|
|
|
<arrowlink COLOR="#f03375" DESTINATION="ID_1847975334" ENDARROW="Default" ENDINCLINATION="-449;34;" ID="Arrow_ID_1046093983" STARTARROW="None" STARTINCLINATION="222;-17;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698532793030" ID="ID_696019318" MODIFIED="1698533136478" TEXT="verbindliche Tasks ermöglichen">
|
|
|
|
|
<arrowlink COLOR="#ee3a6b" DESTINATION="ID_1475771662" ENDARROW="Default" ENDINCLINATION="-1121;-88;" ID="Arrow_ID_211999245" STARTARROW="None" STARTINCLINATION="1410;120;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698532771174" ID="ID_840040649" MODIFIED="1698532780891" TEXT="Gesundheit / Notstand">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698533674384" ID="ID_1227874220" MODIFIED="1698534658603" TEXT="Scheduler-Emergency vorsehen">
|
|
|
|
|
<arrowlink COLOR="#ea5540" DESTINATION="ID_1515660165" ENDARROW="Default" ENDINCLINATION="-1517;105;" ID="Arrow_ID_1696922321" STARTARROW="None" STARTINCLINATION="912;-77;"/>
|
|
|
|
|
<linktarget COLOR="#d54a7e" DESTINATION="ID_1227874220" ENDARROW="Default" ENDINCLINATION="-1477;121;" ID="Arrow_ID_677451247" SOURCE="ID_748059800" STARTARROW="None" STARTINCLINATION="-536;-12;"/>
|
|
|
|
|
<linktarget COLOR="#9a5079" DESTINATION="ID_1227874220" ENDARROW="Default" ENDINCLINATION="133;12;" ID="Arrow_ID_967532278" SOURCE="ID_979357340" STARTARROW="None" STARTINCLINATION="241;-7;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#f0d5c5" COLOR="#990033" CREATED="1698078367419" HGAP="-36" ID="ID_1532750540" MODIFIED="1698079050460" TEXT="offene Fragen" VSHIFT="11">
|
|
|
|
|
<linktarget COLOR="#713d56" DESTINATION="ID_1532750540" ENDARROW="Default" ENDINCLINATION="-2344;353;" ID="Arrow_ID_1939324405" SOURCE="ID_161990356" STARTARROW="None" STARTINCLINATION="1495;112;"/>
|
|
|
|
|
@ -83322,7 +83547,8 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
<icon BUILTIN="idea"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1697982818498" ID="ID_136482882" MODIFIED="1697982841387" TEXT="Deadline berücksichtigen ">
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1697982818498" ID="ID_136482882" MODIFIED="1698532905413" TEXT="Deadline berücksichtigen ">
|
|
|
|
|
<linktarget COLOR="#ef4776" DESTINATION="ID_136482882" ENDARROW="Default" ENDINCLINATION="69;-169;" ID="Arrow_ID_63115321" SOURCE="ID_337384722" STARTARROW="None" STARTINCLINATION="-285;-30;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node CREATED="1697982844409" ID="ID_1374530988" MODIFIED="1697982854041" TEXT="im Datenrecord mitführen"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#f8f1cb" COLOR="#a50125" CREATED="1697982854605" ID="ID_651171432" MODIFIED="1697982875378" TEXT="Zusicherung: kein Zugriff auf verfallene Activities">
|
|
|
|
|
@ -83331,9 +83557,42 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
<node CREATED="1697982898279" ID="ID_1086820599" MODIFIED="1697982926481" TEXT="verfallene Activities dürfen wiederverwendet werden">
|
|
|
|
|
<icon BUILTIN="idea"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#d2beaf" COLOR="#5c4d6e" CREATED="1697982938058" ID="ID_1655832509" MODIFIED="1697983074142" TEXT="Problem: Deadlines für non-timebound modes">
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698542519485" ID="ID_768314841" MODIFIED="1698543099960" TEXT="Bereinigung in die normale Verarbeitung integrieren">
|
|
|
|
|
<linktarget COLOR="#7e4dc3" DESTINATION="ID_768314841" ENDARROW="Default" ENDINCLINATION="362;-65;" ID="Arrow_ID_464500099" SOURCE="ID_1705516567" STARTARROW="None" STARTINCLINATION="213;11;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1698542534903" ID="ID_1065770396" MODIFIED="1698542579305" TEXT="Achtung: nur unter Grooming-Token">
|
|
|
|
|
<icon BUILTIN="clanbomber"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698542606597" ID="ID_1206660275" MODIFIED="1698542904185" TEXT="Ungenauigkeit hier ist nicht wirklich relevant">
|
|
|
|
|
<richcontent TYPE="NOTE"><html>
|
|
|
|
|
<head/>
|
|
|
|
|
<body>
|
|
|
|
|
<p>
|
|
|
|
|
zwar hätte man aus logischer Sicht gerne, daß alle Informationsfunktionen stets den aktuell gültigen Zustand reflektieren — aber das scheitert an der Natur einer Priority-Queue (welche nicht insgeheim <i>mutable</i> sein kann). Praktisch wirkt sich eine solche Diskrepanz aber fast nicht aus, denn das Ergebnis einer Informationsfunktion kann ohne Besitzt des Grooming-Tokens stets im nächsten Moment schon obsolet sein. Man muß nur aufpassen, daß im Fall einer echten Mutation die Bereinigungs-Funktion vor der Entscheidungslogik aufgerufen wird
|
|
|
|
|
</p>
|
|
|
|
|
</body>
|
|
|
|
|
</html></richcontent>
|
|
|
|
|
<icon BUILTIN="idea"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698542905269" ID="ID_271558649" MODIFIED="1698542913039" TEXT="Entscheidungslogik nochmal durchprüfen">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#f8f1cb" COLOR="#a50125" CREATED="1697982938058" ID="ID_1655832509" MODIFIED="1698542495500" TEXT="Problem: Deadlines für non-timebound modes">
|
|
|
|
|
<arrowlink COLOR="#fe6147" DESTINATION="ID_917322834" ENDARROW="Default" ENDINCLINATION="631;-14;" ID="Arrow_ID_1361409427" STARTARROW="None" STARTINCLINATION="953;54;"/>
|
|
|
|
|
<icon BUILTIN="hourglass"/>
|
|
|
|
|
<icon BUILTIN="messagebox_warning"/>
|
|
|
|
|
<node CREATED="1698542469775" ID="ID_1223768150" MODIFIED="1698542482889" TEXT="hierfür: verbindliche Tasks"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698533220909" ID="ID_1286321982" MODIFIED="1698533274744" TEXT="Flag und Steuerung für »verbindliche Activities«">
|
|
|
|
|
<linktarget COLOR="#f13e82" DESTINATION="ID_1286321982" ENDARROW="Default" ENDINCLINATION="107;492;" ID="Arrow_ID_1399415601" SOURCE="ID_326051657" STARTARROW="None" STARTINCLINATION="922;-57;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698533783922" ID="ID_1279644850" MODIFIED="1698533798213" TEXT="blockiert das Verwerfen nach Deadline">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698533800719" ID="ID_979357340" MODIFIED="1698533837777" TEXT="wird dann vom Tick/DutyCycle erkannt">
|
|
|
|
|
<arrowlink COLOR="#9a5079" DESTINATION="ID_1227874220" ENDARROW="Default" ENDINCLINATION="133;12;" ID="Arrow_ID_967532278" STARTARROW="None" STARTINCLINATION="241;-7;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
@ -88296,15 +88555,19 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1697473158929" ID="ID_505069585" MODIFIED="1697493162215" TEXT="Aufgaben">
|
|
|
|
|
<icon BUILTIN="yes"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#d2beaf" COLOR="#5c4d6e" CREATED="1697736343993" ID="ID_1891808134" MODIFIED="1697736494112" TEXT="das Scheduler-API abdecken">
|
|
|
|
|
<node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1697736343993" ID="ID_1891808134" MODIFIED="1698521838378" TEXT="das Scheduler-API abdecken">
|
|
|
|
|
<arrowlink COLOR="#ff1924" DESTINATION="ID_996573918" ENDARROW="Default" ENDINCLINATION="-817;60;" ID="Arrow_ID_226641198" STARTARROW="None" STARTINCLINATION="-848;-40;"/>
|
|
|
|
|
<icon BUILTIN="hourglass"/>
|
|
|
|
|
<icon BUILTIN="pencil"/>
|
|
|
|
|
<node CREATED="1698521839789" ID="ID_1664026043" MODIFIED="1698521848117" TEXT="Lebenszyklus: start / stop"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node COLOR="#338800" CREATED="1697484506891" ID="ID_1292738036" MODIFIED="1698448216625" TEXT="den kompletten Work-Funktor durchspielen">
|
|
|
|
|
<linktarget COLOR="#56a5a9" DESTINATION="ID_1292738036" ENDARROW="Default" ENDINCLINATION="286;-465;" ID="Arrow_ID_367470516" SOURCE="ID_288711039" STARTARROW="None" STARTINCLINATION="-752;0;"/>
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
<node CREATED="1698243387222" ID="ID_1151484757" MODIFIED="1698243397453" TEXT="und zwar direkten Aufruf, ohne WorkForce"/>
|
|
|
|
|
<node CREATED="1698243399946" ID="ID_525069730" MODIFIED="1698243412341" TEXT="es kann zu Sleeps kommen"/>
|
|
|
|
|
<node CREATED="1698243426549" ID="ID_1975979569" MODIFIED="1698448212804" TEXT="das bedeutet: Zeitmessung">
|
|
|
|
|
<node CREATED="1698243399946" ID="ID_525069730" MODIFIED="1698243412341" TEXT="es kann zu Sleeps kommen">
|
|
|
|
|
<icon BUILTIN="messagebox_warning"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698243426549" FOLDED="true" ID="ID_1975979569" MODIFIED="1698448212804" TEXT="das bedeutet: Zeitmessung">
|
|
|
|
|
<icon BUILTIN="clock"/>
|
|
|
|
|
<node CREATED="1698269582160" ID="ID_211702790" MODIFIED="1698269611010" TEXT="und Prüfen unscharfer Zeitabstände">
|
|
|
|
|
<icon BUILTIN="messagebox_warning"/>
|
|
|
|
|
@ -88357,10 +88620,12 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698245511656" ID="ID_1594716553" MODIFIED="1698245548777" TEXT="Scaffolding">
|
|
|
|
|
<node COLOR="#435e98" CREATED="1698245511656" ID="ID_1594716553" MODIFIED="1698521746415" TEXT="Scaffolding">
|
|
|
|
|
<font NAME="SansSerif" SIZE="12"/>
|
|
|
|
|
<icon BUILTIN="list"/>
|
|
|
|
|
<node CREATED="1698245550915" ID="ID_1897821225" MODIFIED="1698245557078" TEXT="verwende ActivityDetector"/>
|
|
|
|
|
<node CREATED="1698245558169" ID="ID_1427917719" MODIFIED="1698245570820" TEXT="aber Problem: an die aktuelle Aufruzeit kommen"/>
|
|
|
|
|
<node COLOR="#5b280f" CREATED="1698245571408" ID="ID_1935211976" MODIFIED="1698245821927" TEXT="Activity::TICK und den execution-Ctx riggen">
|
|
|
|
|
<node COLOR="#5b280f" CREATED="1698245571408" FOLDED="true" ID="ID_1935211976" MODIFIED="1698245821927" TEXT="Activity::TICK und den execution-Ctx riggen">
|
|
|
|
|
<icon BUILTIN="button_cancel"/>
|
|
|
|
|
<node CREATED="1698245823278" ID="ID_1225266983" MODIFIED="1698245858822" TEXT="geht nicht ... diese Hintertür ist ZU">
|
|
|
|
|
<icon BUILTIN="stop-sign"/>
|
|
|
|
|
@ -88369,12 +88634,12 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
<icon BUILTIN="info"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node COLOR="#338800" CREATED="1698246249997" ID="ID_221908219" MODIFIED="1698269566601" TEXT="muß mir die now-Zeit in ActivityProbe speichern">
|
|
|
|
|
<node COLOR="#338800" CREATED="1698246249997" FOLDED="true" ID="ID_221908219" MODIFIED="1698269566601" TEXT="muß mir die now-Zeit in ActivityProbe speichern">
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
<node CREATED="1698246275186" ID="ID_389803917" MODIFIED="1698246286348" TEXT="bei jedem Aufruf im Objekt speichern"/>
|
|
|
|
|
<node CREATED="1698246286912" ID="ID_1611070007" MODIFIED="1698246292046" TEXT="Zugriffs-Funktion schaffen"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node COLOR="#338800" CREATED="1698273941216" ID="ID_206667469" MODIFIED="1698284642804" TEXT="Kurznotation entwickeln zum Formulieren der Testfälle">
|
|
|
|
|
<node COLOR="#338800" CREATED="1698273941216" FOLDED="true" ID="ID_206667469" MODIFIED="1698284642804" TEXT="Kurznotation entwickeln zum Formulieren der Testfälle">
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
<node CREATED="1698273959952" ID="ID_1633573295" MODIFIED="1698273977867" TEXT="lokale Abkürzungs-λ"/>
|
|
|
|
|
<node CREATED="1698273979493" ID="ID_1574422283" MODIFIED="1698273987600" TEXT="Zeitmessung fest einbauen"/>
|
|
|
|
|
@ -88741,6 +89006,11 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698521856803" ID="ID_1548722737" MODIFIED="1698521890994" TEXT="verify_StartStop">
|
|
|
|
|
<node CREATED="1698521924261" ID="ID_1936048598" MODIFIED="1698521938620" TEXT="explizit in Gang setzen"/>
|
|
|
|
|
<node CREATED="1698521939608" ID="ID_501619176" MODIFIED="1698521945915" TEXT="sehen daß er »läuft«"/>
|
|
|
|
|
<node CREATED="1698521946743" ID="ID_783620032" MODIFIED="1698521949779" TEXT="wieder anhalten"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node COLOR="#338800" CREATED="1698247388556" ID="ID_1402046356" MODIFIED="1698448243571" TEXT="invokeWorkFunction">
|
|
|
|
|
<icon BUILTIN="button_ok"/>
|
|
|
|
|
<node COLOR="#338800" CREATED="1698247394051" ID="ID_198829622" MODIFIED="1698247420009" TEXT="kann einfachen Aufruf einer vorher eingespielten Activity belegen">
|
|
|
|
|
@ -92186,6 +92456,202 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
<icon BUILTIN="yes"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#f8f1cb" COLOR="#a50125" CREATED="1698526315968" ID="ID_394986223" MODIFIED="1698526341356" TEXT="Verbindliche Aktivitäten">
|
|
|
|
|
<icon BUILTIN="messagebox_warning"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#fdfdcf" COLOR="#ff0000" CREATED="1698526344156" ID="ID_1605243708" MODIFIED="1698526373772" TEXT="noch ein ungeklärtes Problem — sieht nach innerem Widerspruch aus">
|
|
|
|
|
<icon BUILTIN="clanbomber"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698526392894" ID="ID_1798534041" MODIFIED="1698526620878" TEXT="der Scheduler könnte ohne Deadline leben, aber der BlockFlow erzwingt sie">
|
|
|
|
|
<richcontent TYPE="NOTE"><html>
|
|
|
|
|
<head>
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<p>
|
|
|
|
|
Für die Implementierung des Schedulers sind Deadlines technisch irrelevant — deshalb habe ich aktuell auch die ganze Implementierung gecodet, und noch keine Deadline-Behandlung eingebaut. Aber sowohl logisch, als auch im Hinblick auf die Allokationen <b>muß</b> jede Activity eine Deadline haben. Eine Activity ohne Deadline wäre ultimativ verbindlich: <i>irgendwann nach </i>ihrem Startzeitpunkt <i>muß sie aktiviert werden, </i>und jede spätere Activity ist durch sie verdeckt
|
|
|
|
|
</p>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|
|
|
|
|
</richcontent>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698533069058" ID="ID_1475771662" MODIFIED="1698533129903" TEXT="klares Trennkriterium einführen">
|
|
|
|
|
<linktarget COLOR="#ee3a6b" DESTINATION="ID_1475771662" ENDARROW="Default" ENDINCLINATION="-1121;-88;" ID="Arrow_ID_211999245" SOURCE="ID_696019318" STARTARROW="None" STARTINCLINATION="1410;120;"/>
|
|
|
|
|
<icon BUILTIN="yes"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698533152440" ID="ID_326051657" MODIFIED="1698533633384" TEXT="Flag für verbindlichen Task in den Scheduler einbauen">
|
|
|
|
|
<arrowlink COLOR="#f13e82" DESTINATION="ID_1286321982" ENDARROW="Default" ENDINCLINATION="107;492;" ID="Arrow_ID_1399415601" STARTARROW="None" STARTINCLINATION="922;-57;"/>
|
|
|
|
|
<linktarget COLOR="#df3563" DESTINATION="ID_326051657" ENDARROW="Default" ENDINCLINATION="482;26;" ID="Arrow_ID_550869434" SOURCE="ID_1704365524" STARTARROW="None" STARTINCLINATION="423;25;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1698526632870" ID="ID_1680559422" MODIFIED="1698526704177">
|
|
|
|
|
<richcontent TYPE="NODE"><html>
|
|
|
|
|
<head>
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<p>
|
|
|
|
|
Problem: wenn Rückstau im Scheduler entsteht,
|
|
|
|
|
</p>
|
|
|
|
|
<p>
|
|
|
|
|
wird jede Deadline irgendwann überfahren
|
|
|
|
|
</p>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|
|
|
|
|
</richcontent>
|
|
|
|
|
<icon BUILTIN="broken-line"/>
|
|
|
|
|
<node CREATED="1698526724569" HGAP="36" ID="ID_68181204" MODIFIED="1698528287374" TEXT="und dann..." VSHIFT="30">
|
|
|
|
|
<icon BUILTIN="smiley-oh"/>
|
|
|
|
|
<node CREATED="1698526731373" ID="ID_78222945" MODIFIED="1698526743146" TEXT="hat ein finaler Render fehlende Frames"/>
|
|
|
|
|
<node CREATED="1698526743879" ID="ID_136373710" MODIFIED="1698526753121" TEXT="kann eine Dependency-Kette geblockt werden"/>
|
|
|
|
|
<node CREATED="1698526753997" ID="ID_810112487" MODIFIED="1698526781789" TEXT="reißt die Sequenz der Scheduler-Ticks ab"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698528278314" HGAP="56" ID="ID_906006078" MODIFIED="1698528284150" TEXT="Dilemma" VSHIFT="13">
|
|
|
|
|
<node CREATED="1698528304615" ID="ID_402115905" MODIFIED="1698528981338" TEXT="Epochen können nicht beliebig lange blockiert sein">
|
|
|
|
|
<richcontent TYPE="NOTE"><html>
|
|
|
|
|
<head>
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<p>
|
|
|
|
|
...es gibt zwar einen Block-Mechanismus (das Epoch-Gate), doch damit läßt man den Block-Pool anwachsen und die lineare Suche durch die Blöcke macht sich bald bemerkbar
|
|
|
|
|
</p>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|
|
|
|
|
</richcontent>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698528350522" ID="ID_1884380820" MODIFIED="1698528623316" TEXT="Epochen können nicht beliebig groß werden">
|
|
|
|
|
<richcontent TYPE="NOTE"><html>
|
|
|
|
|
<head>
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<p>
|
|
|
|
|
...weil dann der Überlauf-Mechanismus zu weit in die Zukunft ausgreift, und sich die Steuerung in absehbarer Zeit<i> nicht mehr fängt.</i>
|
|
|
|
|
</p>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|
|
|
|
|
</richcontent>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698528368302" ID="ID_516251987" MODIFIED="1698528683619" TEXT="bei normaler Größe sind keine beliebig weiten Zeitschritte möglich">
|
|
|
|
|
<richcontent TYPE="NOTE"><html>
|
|
|
|
|
<head>
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<p>
|
|
|
|
|
Daher ist es nicht möglich, eben sehr große/lange Tasks vorzuplanen; man erzeugt eine Flut leerer Blöcke dazwischen, und die Suchzeiten degenerieren
|
|
|
|
|
</p>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|
|
|
|
|
</richcontent>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698528414600" ID="ID_842501295" MODIFIED="1698528848581" TEXT="darf nach überschrittener Deadline die Activity nicht (mehr) dereferenzieren">
|
|
|
|
|
<richcontent TYPE="NOTE"><html>
|
|
|
|
|
<head>
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<p>
|
|
|
|
|
Damit scheiden die naheliegenden <i>Reparatur-Ansätze</i> weitgehend aus: es ist nicht möglich, eine „überfahrene“ Activity <i>in die Zukunft </i>zu kopieren, denn wenn die Deadline verstrichen ist, kann sie auch bereits verworfen worden sein, und es ist nicht mehr feststellbar, um was es sich handelte
|
|
|
|
|
</p>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|
|
|
|
|
</richcontent>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#fafe99" COLOR="#fa002a" CREATED="1698529013384" ID="ID_1792474649" MODIFIED="1698529614442" STYLE="bubble" TEXT="⟹ nur Abbruch möglich">
|
|
|
|
|
<edge COLOR="#cd5252"/>
|
|
|
|
|
<node CREATED="1698529046859" ID="ID_919383454" MODIFIED="1698529593507" STYLE="fork" TEXT="die gewählte Scheduler-Struktur hat ihre Grenzen"/>
|
|
|
|
|
<node CREATED="1698529093245" ID="ID_553293254" MODIFIED="1698529593507" STYLE="fork" TEXT="man kann zwar puffern und abregulieren"/>
|
|
|
|
|
<node CREATED="1698529118154" ID="ID_1695541151" MODIFIED="1698529593507" STYLE="fork" TEXT="muß dann aber explizit abbrechen"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1698529182459" HGAP="2" ID="ID_1279861540" MODIFIED="1698529626166" STYLE="fork" TEXT="dieser Grenzfall liegt gar nicht so fern" VSHIFT="31">
|
|
|
|
|
<icon BUILTIN="messagebox_warning"/>
|
|
|
|
|
<node CREATED="1698529431864" ID="ID_18246325" MODIFIED="1698529633206" TEXT="geblocktes Netzwerk-IO"/>
|
|
|
|
|
<node CREATED="1698529210006" ID="ID_848256978" MODIFIED="1698529657110" TEXT="30 Sekunden pro Frame"/>
|
|
|
|
|
<node CREATED="1698529456173" ID="ID_876230665" MODIFIED="1698529593507" TEXT="System anderweitig überlastet ⟹ Tick kommt nicht zum Zug"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698529789384" ID="ID_1112168192" MODIFIED="1698529802617" TEXT="Begrenzung und Überwachung">
|
|
|
|
|
<node CREATED="1698529808478" ID="ID_199837288" MODIFIED="1698529823647" TEXT="die Gesundheit muß überwacht werden">
|
|
|
|
|
<node CREATED="1698529824596" ID="ID_763081932" MODIFIED="1698529829108" TEXT="von innen und von außen">
|
|
|
|
|
<node CREATED="1698530385776" ID="ID_365804773" MODIFIED="1698530398452" TEXT="Innen-Überwachung: der Tick">
|
|
|
|
|
<node CREATED="1698533322431" ID="ID_1153107499" MODIFIED="1698534741599">
|
|
|
|
|
<richcontent TYPE="NODE"><html>
|
|
|
|
|
<head>
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<p>
|
|
|
|
|
der Tick selber ist eine <b>verbindliche Aktivität</b>
|
|
|
|
|
</p>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|
|
|
|
|
</richcontent>
|
|
|
|
|
<linktarget COLOR="#fd2f46" DESTINATION="ID_1153107499" ENDARROW="Default" ENDINCLINATION="524;-25;" ID="Arrow_ID_251741761" SOURCE="ID_1189633297" STARTARROW="None" STARTINCLINATION="420;464;"/>
|
|
|
|
|
<icon BUILTIN="idea"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698533344228" ID="ID_1704365524" MODIFIED="1698533633384" TEXT="der Tick aktualisiert jeweils den Queue-Head">
|
|
|
|
|
<arrowlink COLOR="#df3563" DESTINATION="ID_326051657" ENDARROW="Default" ENDINCLINATION="482;26;" ID="Arrow_ID_550869434" STARTARROW="None" STARTINCLINATION="423;25;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698533408036" ID="ID_748059800" MODIFIED="1698533723760" TEXT="wenn eine verbindliche Aktivität überfahren wird �� Scheduler-Emergency">
|
|
|
|
|
<arrowlink COLOR="#b44670" DESTINATION="ID_269636711" ENDARROW="Default" ENDINCLINATION="204;-1082;" ID="Arrow_ID_1625681464" STARTARROW="None" STARTINCLINATION="-1259;48;"/>
|
|
|
|
|
<arrowlink COLOR="#d54a7e" DESTINATION="ID_1227874220" ENDARROW="Default" ENDINCLINATION="-1477;121;" ID="Arrow_ID_677451247" STARTARROW="None" STARTINCLINATION="-536;-12;"/>
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698530399254" ID="ID_1046746147" MODIFIED="1698530408833" TEXT="Außen-Überwachung...">
|
|
|
|
|
<node CREATED="1698530409796" ID="ID_324754876" MODIFIED="1698530428896" TEXT="könnte ein sanity-Check beim Zugriff sein"/>
|
|
|
|
|
<node CREATED="1698530429514" ID="ID_1167241428" MODIFIED="1698530435977" TEXT="oder ein Wächter-Thread"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698529832978" ID="ID_1789989240" MODIFIED="1698529853331" TEXT="Selbst-Diagnose per Warnschwelle notwendig">
|
|
|
|
|
<node CREATED="1698530454718" ID="ID_1982008339" MODIFIED="1698530612783" TEXT="muß vor dem BlockFlow-Clean-up sitzen">
|
|
|
|
|
<arrowlink COLOR="#ed3471" DESTINATION="ID_355476974" ENDARROW="Default" ENDINCLINATION="-616;43;" ID="Arrow_ID_729257748" STARTARROW="None" STARTINCLINATION="689;49;"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698529860655" ID="ID_315208147" MODIFIED="1698529868790" TEXT="es muß einen sauberen Abbruch geben">
|
|
|
|
|
<node CREATED="1698529876100" ID="ID_1032670149" MODIFIED="1698530090626" TEXT="pausieren der Render-Prozesse">
|
|
|
|
|
<richcontent TYPE="NOTE"><html>
|
|
|
|
|
<head>
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<p>
|
|
|
|
|
sollte automatisch passieren, wenn die internen Gesundheits-Checks scheitern
|
|
|
|
|
</p>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|
|
|
|
|
</richcontent>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698529893418" ID="ID_945666348" MODIFIED="1698529916172" TEXT="gestartete Berechnungen laufen weiter"/>
|
|
|
|
|
<node CREATED="1698529917111" ID="ID_138084659" MODIFIED="1698529933793" TEXT="das übrige System muß gesund bleiben"/>
|
|
|
|
|
<node CREATED="1698529943153" ID="ID_1379758104" MODIFIED="1698530377336" TEXT="Notfall-Shutdown wird dann problematisch">
|
|
|
|
|
<richcontent TYPE="NOTE"><html>
|
|
|
|
|
<head>
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<p>
|
|
|
|
|
...wenn wir noch einen Worker-Pool haben, der mit langlaufenden berechnungen geblockt ist, dann wird jeder reguläre emergency-Shutdown im Destruktor hängen bleiben.Wenn es erst mal so weit gekommen ist, kann man nicht einmal mehr den User richtig benachrichtigen; ein hartes <font face="Monospaced">exit()</font>  dagegen würde die bereits geleistete Arbeit einfach verwerfen.
|
|
|
|
|
</p>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|
|
|
|
|
</richcontent>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698529979672" ID="ID_1042828147" MODIFIED="1698529998709" TEXT="Alternative bieten">
|
|
|
|
|
<icon BUILTIN="yes"/>
|
|
|
|
|
<node CREATED="1698529985397" ID="ID_582805818" MODIFIED="1698535734795" TEXT="einen Batch-Prozessor">
|
|
|
|
|
<arrowlink COLOR="#632988" DESTINATION="ID_1722365863" ENDARROW="Default" ENDINCLINATION="-523;-416;" ID="Arrow_ID_65227993" STARTARROW="None" STARTINCLINATION="-598;65;"/>
|
|
|
|
|
<icon BUILTIN="idea"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698530010130" ID="ID_1644937663" MODIFIED="1698530021855" TEXT="sollte möglichst das gleiche Ausführungs-Framework verwenden"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698097270027" ID="ID_1129105536" MODIFIED="1698097290884" TEXT="Timing-Genauigkeit">
|
|
|
|
|
<node BACKGROUND_COLOR="#f0d5c5" COLOR="#990033" CREATED="1698097298079" ID="ID_578937577" MODIFIED="1698097305903" TEXT="was brauchen wir wirklich?">
|
|
|
|
|
@ -92437,6 +92903,73 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
<arrowlink COLOR="#71457a" DESTINATION="ID_195997630" ENDARROW="Default" ENDINCLINATION="-1608;190;" ID="Arrow_ID_345281595" STARTARROW="None" STARTINCLINATION="-385;28;"/>
|
|
|
|
|
<icon BUILTIN="hourglass"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#fdfdcf" COLOR="#ff0000" CREATED="1698530812711" HGAP="12" ID="ID_269636711" MODIFIED="1698541315516" TEXT="Scheduler-Emergency" VSHIFT="20">
|
|
|
|
|
<linktarget COLOR="#ff2f19" DESTINATION="ID_269636711" ENDARROW="Default" ENDINCLINATION="-577;-1106;" ID="Arrow_ID_1849442376" SOURCE="ID_355476974" STARTARROW="None" STARTINCLINATION="173;762;"/>
|
|
|
|
|
<linktarget COLOR="#b44670" DESTINATION="ID_269636711" ENDARROW="Default" ENDINCLINATION="204;-1082;" ID="Arrow_ID_1625681464" SOURCE="ID_748059800" STARTARROW="None" STARTINCLINATION="-1259;48;"/>
|
|
|
|
|
<icon BUILTIN="flag-pink"/>
|
|
|
|
|
<node BACKGROUND_COLOR="#c8c0b6" CREATED="1698530968938" ID="ID_187393453" MODIFIED="1698531103087" STYLE="bubble">
|
|
|
|
|
<richcontent TYPE="NODE"><html>
|
|
|
|
|
<head>
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<p style="text-align: center">
|
|
|
|
|
Der Scheduler arbeitet nur in einem begrenzten Bereich
|
|
|
|
|
</p>
|
|
|
|
|
<p style="text-align: center">
|
|
|
|
|
Dieser kann durch alltägliche Umstände verletzt werden
|
|
|
|
|
</p>
|
|
|
|
|
<p style="text-align: center">
|
|
|
|
|
Dann ist ein spezielle Notzustand zu aktivieren
|
|
|
|
|
</p>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|
|
|
|
|
</richcontent>
|
|
|
|
|
<edge COLOR="#930246"/>
|
|
|
|
|
<icon BUILTIN="info"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#f0d5c5" COLOR="#990033" CREATED="1698531755989" ID="ID_1664977737" MODIFIED="1698531803578" TEXT="Ausprägung des Notzustands">
|
|
|
|
|
<icon BUILTIN="help"/>
|
|
|
|
|
<node CREATED="1698531769111" ID="ID_935202336" MODIFIED="1698531782849" TEXT="auf Engine / Play-Prozess-Level">
|
|
|
|
|
<node CREATED="1698531881781" ID="ID_297033617" MODIFIED="1698531892074" TEXT="alle Play-Prozesse auf Pause stellen"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698531783445" ID="ID_1028561125" MODIFIED="1698531790816" TEXT="auf Scheduler-Level">
|
|
|
|
|
<node CREATED="1698531847100" ID="ID_67188486" MODIFIED="1698531854879" TEXT="keine de-Allokationen mehr"/>
|
|
|
|
|
<node CREATED="1698531857619" ID="ID_1423744776" MODIFIED="1698531863140" TEXT="alle Worker terminieren"/>
|
|
|
|
|
<node CREATED="1698531875525" ID="ID_1843097564" MODIFIED="1698531879431" TEXT="Tick nicht erneuern"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#d2beaf" COLOR="#5c4d6e" CREATED="1698531826447" ID="ID_1031213188" MODIFIED="1698531840094" TEXT="Mechanismus zum Wiederanlauf schaffen">
|
|
|
|
|
<icon BUILTIN="hourglass"/>
|
|
|
|
|
<node CREATED="1698532052993" ID="ID_503858341" MODIFIED="1698532312084" TEXT="Problem: Berechnunsstand feststellen">
|
|
|
|
|
<richcontent TYPE="NOTE"><html>
|
|
|
|
|
<head>
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<p>
|
|
|
|
|
...der gesamte Entwurf bisher beruht auf Ereignis-Verknüpfung und sieht keine generische Erfassung aller tatsächlich berechneten Schritte vor. Wenn also die Scheduler-Emergency ausgelöst wird, ist ein zufällig verteiltes Muster an Einzel-Jobs abgeschlossen, und der Rest fehlt. Wollte man hier einen generischen Ansatz für das Wiederanlaufen schaffen, so müßte man alle Berechnungsprozesse unter eine einzige Abstraktion subsummieren können. Das halte ich für gefährlich...
|
|
|
|
|
</p>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|
|
|
|
|
</richcontent>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1698532335022" ID="ID_849438801" MODIFIED="1698532356066" TEXT="Konsequenz ⟹ Player-Clients brauchen Recovery-Mechanismus">
|
|
|
|
|
<icon BUILTIN="flag-yellow"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1698532360192" ID="ID_357614396" MODIFIED="1698532377398" TEXT="gutmütiger Fall">
|
|
|
|
|
<icon BUILTIN="idea"/>
|
|
|
|
|
<node CREATED="1698532382547" ID="ID_219475859" MODIFIED="1698532412159" TEXT="man pausiert (Play-Prozesse und Scheduler)"/>
|
|
|
|
|
<node CREATED="1698532422552" ID="ID_1643252721" MODIFIED="1698532434002" TEXT="nachdem die aktuellen Worker terminiert sind..."/>
|
|
|
|
|
<node CREATED="1698532439904" ID="ID_56439604" MODIFIED="1698532451840" TEXT="...gibt es einen geeigneten Trigger..."/>
|
|
|
|
|
<node CREATED="1698532485911" ID="ID_1935981451" MODIFIED="1698532499118" TEXT="man entnimmt und aktualisiert die Zeitachse"/>
|
|
|
|
|
<node CREATED="1698532456848" ID="ID_559992837" MODIFIED="1698532465100" TEXT="und die WorkForce wird erneut hochgefahren"/>
|
|
|
|
|
<node CREATED="1698532511132" ID="ID_1488024271" MODIFIED="1698532528375" TEXT="(hoffentlich) läuft dann die Berechnung nahtlos weiter">
|
|
|
|
|
<icon BUILTIN="messagebox_warning"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1697933502816" ID="ID_1155890066" MODIFIED="1697933560271" TEXT="Laststeuerung">
|
|
|
|
|
<linktarget COLOR="#7d55a6" DESTINATION="ID_1155890066" ENDARROW="Default" ENDINCLINATION="-78;310;" ID="Arrow_ID_1724375377" SOURCE="ID_338601496" STARTARROW="None" STARTINCLINATION="-372;-24;"/>
|
|
|
|
|
@ -92526,6 +93059,34 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node BACKGROUND_COLOR="#d2beaf" COLOR="#5c4d6e" CREATED="1698535401066" ID="ID_1722365863" MODIFIED="1698535734795" TEXT="Batch-Prozessor">
|
|
|
|
|
<linktarget COLOR="#632988" DESTINATION="ID_1722365863" ENDARROW="Default" ENDINCLINATION="-523;-416;" ID="Arrow_ID_65227993" SOURCE="ID_582805818" STARTARROW="None" STARTINCLINATION="-598;65;"/>
|
|
|
|
|
<icon BUILTIN="stop"/>
|
|
|
|
|
<node CREATED="1698535499350" ID="ID_291544921" MODIFIED="1698535510293" TEXT="Komplementiert den Scheduler">
|
|
|
|
|
<icon BUILTIN="info"/>
|
|
|
|
|
<node CREATED="1698535547327" ID="ID_1921664973" MODIFIED="1698535562301" TEXT="deckt die Randbereiche im Betriebsmuster ab">
|
|
|
|
|
<node CREATED="1698535641170" ID="ID_623035212" MODIFIED="1698535714220" TEXT="soll als Plan-B für Grenzfälle dienen">
|
|
|
|
|
<richcontent TYPE="NOTE"><html>
|
|
|
|
|
<head>
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<p>
|
|
|
|
|
Beispiel: ein »final Render« bei dem pro Frame mehr als 30 Sekunden Rechenzeit notwendig sind; dies würde die Auslegung des Schedulers sprengen
|
|
|
|
|
</p>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|
|
|
|
|
</richcontent>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698535623469" ID="ID_1256815125" MODIFIED="1698535635467" TEXT="ermöglicht Performance-Optimierung des Schedulers"/>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1698535563497" ID="ID_973443699" MODIFIED="1698535576327" TEXT="verwendet die gleiche Ausführugs-Technologie wie der Scheduler">
|
|
|
|
|
<node CREATED="1698535579258" ID="ID_307388593" MODIFIED="1698535584281" TEXT="Activity-Language"/>
|
|
|
|
|
<node CREATED="1698535603810" ID="ID_884782032" MODIFIED="1698535611944" TEXT="Render-Jobs"/>
|
|
|
|
|
<node CREATED="1698535590417" ID="ID_813958811" MODIFIED="1698535593292" TEXT="WorkForce"/>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
</node>
|
|
|
|
|
<node CREATED="1512923629577" ID="ID_617347424" MODIFIED="1557498707237" TEXT="Backend">
|
|
|
|
|
<node CREATED="1680565608115" ID="ID_1114884704" MODIFIED="1680565612050" TEXT="Hilfsmittel">
|
|
|
|
|
|