| |
2-16 Erhöhte Ansicht der Zeit, v1.1 Mai 2002 2 2,7,6 Betrieb beenden Stoppen Sie den Taktgeber. 2,8 Synchrounisierung Drei Schnittstellen werden definiert, um Synchrounisierung eines Taktgebers mit einem Meister zu stützen. 2,8,1 Schnittstelle SynchronizeBase Das SynchronizeBase Schnittstelle fügt einen ursprünglichen Betrieb dem Taktgeber hinzu Schnittstelle das erlaubt die Ermittlung eines Versatzes zwischen zwei Taktgebern und der Störung in dem Ermittlung. Sie hat die folgende Definition: // IDL Modul CosClockService { Schnittstelle SynchronizeBase: Taktgeber { struct SyncReading { TimeBase::TimeT-local_send; TimeBase::TimeT local_receive; Remote_reading TimeBase::TimeT; }; Synchronize_poll(in-Taktgeberwith_master SyncReading); }; 2,8,1,1 Struct SyncReading Eine Struktur mit drei Zeitbestandteilen, welche die lokale Anfangs- und Endzeit von a darstellen Frage auf einem anderen Taktgeber und der entsprechende Messwert diese Frage. 2,8,1,2 Betriebssynchronize_poll Weist den Taktgeber an, um die folgende Reihenfolge von Schritten durchzuführen und das Resultat zurückzubringen: 1. Setzen Sie den gegenwärtigen Messwert des Taktgebers in local_send . 2. Beschaffen Sie das with_master stoppten Zeit ab; rufen Sie das heißt, Auslesen hervor auf ihm. Außer ihm innen Remote_reading . 3. Setzen Sie den gegenwärtigen Messwert des Taktgebers in local_receive . Diese Schritte sollten mit als wenig Latenz durchgeführt werden, wie möglich. Z.B. vielleicht sollte Ablage von Werten in der Ausgangsstruktur bis alle Messwerte verzögert werden sind erreicht worden. Das Ziel ist, den Abstand zwischen local_send zu verringern und local_receive , da es zweimal die maximale Störung in einer Schätzung von darstellt versetzen Sie zwischen dem Taktgeber und dem gekennzeichneten Taktgeber. |  |
|
| |
|
|