Поехали:
Слайд 196
Прерывание это сигнал о том, что какой-то вид события произошел. Есть хардварные и софтварные прерывания. В любом случае, компьютер хранит определенный набор ключевых данных в некоем временном хранилище. Затем компьютер запускает обработчик прерывания, определяет, как реагировать на событие, которое произошло, работает с ним, возвращается к работе с основной программой, перезагружает временные данные.
Для основной программы как бы ничего не произошло. Но это фоновое событие, обработанное через прерывание, может быть критичным для программы. Например, принтер может уйти в оффлайн, пока программа работает с ним. Или данные, с которыми работает программа, изменились.
Содержимое слайда:
Хардварное прерывание заставляет процессор сохранять состояние программы и начать обработку прерывания. Оно может произойти в любое время, пока программа находится в любом состоянии.
Софтварное прерывание обычно реализуется в виде инструкции, которая переключает контекст на обработчик прерывания, подобно хардварному прерыванию. Оно происходит в момент, который определил программист.
Прерывания широко используются для многозадачности компьютера, особенно в вычислениях реального времени.
Примеры:
Ошибки:
Теперь, когда мы рассмотрели хранение и управление данными, можно обратиться к покрытию. Вопрос покрытия - сколько вы протестировали? Обычно ответ выглядит как процент или пропорция. Я проверил половину кода или все принтеры.
Слайд 196
Прерывание это сигнал о том, что какой-то вид события произошел. Есть хардварные и софтварные прерывания. В любом случае, компьютер хранит определенный набор ключевых данных в некоем временном хранилище. Затем компьютер запускает обработчик прерывания, определяет, как реагировать на событие, которое произошло, работает с ним, возвращается к работе с основной программой, перезагружает временные данные.
Для основной программы как бы ничего не произошло. Но это фоновое событие, обработанное через прерывание, может быть критичным для программы. Например, принтер может уйти в оффлайн, пока программа работает с ним. Или данные, с которыми работает программа, изменились.
Содержимое слайда:
Хардварное прерывание заставляет процессор сохранять состояние программы и начать обработку прерывания. Оно может произойти в любое время, пока программа находится в любом состоянии.
Софтварное прерывание обычно реализуется в виде инструкции, которая переключает контекст на обработчик прерывания, подобно хардварному прерыванию. Оно происходит в момент, который определил программист.
Прерывания широко используются для многозадачности компьютера, особенно в вычислениях реального времени.
Примеры:
- нажатие клавиш
- ошибки ввода вывода
- сигналы времени
Ошибки:
- гонка состояний (задержка выполнения программы, связанная с недостатком ресурсов)
- переполнение стека
- смертельное объятие (событие А не может произойти, пока не закончится событие В, событие В не может закончится, пока не произойдет событие А)
Теперь, когда мы рассмотрели хранение и управление данными, можно обратиться к покрытию. Вопрос покрытия - сколько вы протестировали? Обычно ответ выглядит как процент или пропорция. Я проверил половину кода или все принтеры.
Комментариев нет:
Отправить комментарий