Подтвердить что ты не робот

Механизмы сетевых событий уровня и пограничных триггеров

Что означает, что для какого-либо механизма сетевого события (т.е. epoll/poll/select) должен быть вызван фронт или уровень?

4b9b3361

Ответ 1

Короткий ответ: сбой по краю означает, что вы получаете уведомление только тогда, когда событие обнаружено (что происходит, концептуально, в одно мгновение), в то время как вызванное уровнем означает, что вы получаете уведомление о каждом событии (которое будет быть правдой в течение определенного периода времени). Например, если вы хотите, чтобы уведомление указывало вам, когда данные доступны для чтения, вы получите уведомление только тогда, когда данные не были доступны для чтения, но теперь это так. Если вы прочитаете некоторые из доступных данных (чтобы оставшиеся данные все еще были доступны для чтения), вы не получили бы другого уведомления, и если вы прочитаете все доступные данные, вы получите другое уведомление, когда данные станут доступны для чтения. В системе с уровнем запуска вы получите уведомление , когда доступно для чтения.

Ответ 2

В электронике есть разница между определением напряжения и изменением напряжения на определенном уровне. В тексте ASCII:

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

Событие, вызванное краем, означает, что событие срабатывает, когда напряжение (или что-то еще) замечено поднимается, что может быть в момент времени (1). Событие, инициируемое уровнем, означает, что когда напряжение достигает определенного уровня, событие запускается, например, в момент времени (2). Однако в шумной среде события, вызванные уровнем, означают, что в трассировке будет еще два (восходящих) уровня, вызванных событиями, но не более (нарастающие) события, связанные с фронтом. Таким образом, события, вызванные краями, имеют тенденцию быть более стабильными, чем события, вызванные уровнем. (И инициированное краем событие - это не просто более низкий уровень напряжения - существуют ограничения для ASCII-а).