ByteNex›Docs›Инженерная заметка: проектирование центрального Kill Switch (аварийный выключатель)
Инженерная заметка: проектирование центрального Kill Switch (аварийный выключатель)
Рассказ о том, как центральный Kill Switch был спроектирован так, чтобы немедленно останавливать выполнение, не повреждая Isolated Context (изолированный контекст) или Memory State (состояние памяти).
Инженерная заметка: проектирование центрального Kill Switch (аварийный выключатель)
Рассказ о том, как центральный Kill Switch был спроектирован так, чтобы немедленно останавливать выполнение, не повреждая Isolated Context (изолированный контекст) или Memory State (состояние памяти).
Когда мы проектировали принцип самозащиты, Kill Switch оказался самым важным компонентом. Система, которая работает непрерывно, должна иметь способ немедленной остановки.
Задача состояла не в том, чтобы остановить само выполнение, а в том, чтобы остановить его, не повредив контекст. Если бы выключатель прервал процесс посреди записи, Memory State остался бы в несогласованном состоянии.
Чтобы решить эту задачу, Kill Switch срабатывает на границе цикла. Он позволяет текущей атомарной операции завершиться, фиксирует состояние и только затем останавливает следующий цикл. Благодаря этому, когда Kernel (ядро) возобновляет работу, он возвращается в Stable State (стабильное состояние).
Эта инженерная заметка — часть нашей постоянной работы по документированию того, как BX-System устроен под капотом. Kill Switch — центральный компонент принципа самозащиты.