| |
Mai 2002 Erhöhte Ansicht der Zeit: Synchrounisierung 2-17 2 Klienten eines Taktgebers können diesen Synchrounisierungspolling über Zeit wiederholen, für zu erreichen Beispiel, das Frequenzschieflaufen und Antrieb zwischen einem Taktgeber und seinem Meister. Dieser Betrieb setzt Zeit runden Reise fest, um das current_time zu lesen Attribut von anderen Taktgeber. Dieses springt den Versatz zwischen zwei Taktgeber und liefert die ursprünglichen Proben für externe Synchrounisierungsalgorithmen. Z.B. kann ein einzelner Polling erbringen Schätzung des Taktgebers versetzte, wie folgt: (EQ 1) 2,8,2 Schnittstelle Synchronizable Ein Fall des Synchronizable Schnittstelle erlaubt die Kreation des neuen logischen Taktgebers das beruht auf dem synchronizable Taktgeber für eine Vorstellung des Durchganges der Zeit, aber ist justiert auf Aufenthalt innerhalb Grenzen einer bestimmter Störung von anderen, vermutlich genauer, "Haupt" Taktgeber. Dieser neue Taktgeber soll synchronisiert geschuftet, oder, zum Meister. Schnittstelle hat die folgende Definition: // IDL Modul CosClockService { Schnittstelle SynchronizedClock; Ausnahme UnableToSynchronize { TimeBase::InaccuracyT-minimum_error; }; Schnittstelle Synchronizable: SynchronizeBase { const TimeBase::TimeT für immer = 0xFFFFFFFFFFFFFFFF; New_slave SynchronizedClock (im Taktgeber to_master, in TimeBase::InaccuracyT to_within, kurz gesagt retry_limit, in TimeBase::TimeT minimum_delay_between_syncs, in CosPropertyService::Properties Eigenschaften ) Erhöhungen (UnableToSynchronize); }; Schnittstelle SynchronizedClock: Taktgeber { leere resynch_now()erhöhungen (UnableToSynchronize); }; Versatz Remotereading localsend localreceive + ( ) 2 ---------------------------------------------------------------------- - è ø æ ö localreceive localsend - ( ) 2 --------------------------------------------------------------------- ± è ø æ ö = |  |
|
| |
|
|