Frage Pegel-gegen-Kante-Trigger-Netzwerk-Ereignismechanismen


Was bedeutet es für einen Netzwerkereignismechanismus (d. H. Epoll / poll / select), dass er flanken- oder pegelgetriggert ist?


33
2017-12-27 20:00


Ursprung


Antworten:


Die kurze Antwort ist, flankengetriggert bedeutet, dass Sie nur benachrichtigt werden, wenn das Ereignis erkannt wird (was konzeptuell in einem Augenblick stattfindet), während levelgetriggert bedeutet, dass Sie benachrichtigt werden, wenn das Ereignis vorhanden ist (was wahr ist) eine Zeitperiode). Wenn Sie beispielsweise in einem flankengetriggerten System eine Benachrichtigung signalisieren möchten, wenn Daten zum Lesen verfügbar sind, erhalten Sie diese Benachrichtigung nur, wenn die Daten zuvor nicht zum Lesen verfügbar waren, jetzt jedoch. Wenn Sie einige der verfügbaren Daten lesen (so dass die verbleibenden Daten immer noch lesbar sind), erhalten Sie keine weitere Benachrichtigung. Wenn Sie alle verfügbaren Daten lesen, erhalten Sie eine weitere Benachrichtigung, wenn Daten wieder verfügbar sind. In einem levelgesteuerten System würden Sie diese Benachrichtigung erhalten wann immer Daten können gelesen werden.


46
2017-12-27 20:12



In der Elektronik ist es der Unterschied zwischen der Feststellung, dass sich die Spannung ändert und dass die Spannung ein bestimmtes Niveau erreicht hat. In der ASCII-Kunst:

                ------------     ---     ----
               / <---(2)    \   /   \   /    \
              /              \-/     \-/      \
             /                                 \
            /   <---(1)                         \
           /                                     \     /\
          /                                       \   /  \
----------                                         ---    ----

Ein flankengetriggertes Ereignis bedeutet, dass das Ereignis ausgelöst wird, wenn die Spannung (oder was auch immer) ansteigt, was zum Zeitpunkt (1) sein könnte. Ein levelgesteuertes Ereignis bedeutet, dass das Ereignis ausgelöst wird, wenn die Spannung ein bestimmtes Niveau erreicht, z. B. zu dem mit (2) gekennzeichneten Zeitpunkt. In einer lauten Umgebung bedeuten levelgesteuerte Ereignisse jedoch, dass es zwei weitere (steigende) levelgetriggerte Ereignisse in der Trace geben würde, jedoch keine (steigenden) flankengetriggerten Ereignisse mehr. Somit sind flankengetriggerte Ereignisse tendenziell stabiler als levelgesteuerte Ereignisse. (Und ein flankengetriggertes Ereignis ist nicht einfach eine niedrigere Spannungsebene - der ASCII-Kunst sind Grenzen gesetzt.)


11
2017-12-27 22:31