Задать вопрос
@nano_e_t_4

Как работает обработка события операционной системой?

Всем привет
Вопрос вот какой (на примере браузера chromium):
есть событие, например клик мыши на кнопке во вкладке браузера (вкладок открыто несколько). Каким образом в итоге этот ивент долетает непосредственно до движка рендера, который уже отрисовывет событие, спрятанное за кнопкой?

читаю доки хромиума для девелоперов, понимание появляется, но весьма пока что смутные. если кто то знает или раскуривал эту историю, расскажите плиз
  • Вопрос задан
  • 264 просмотра
Подписаться 2 Простой 2 комментария
Решение пользователя Karpion К ответам на вопрос (5)
@Karpion
Клик мыши проходит через множество обработчиков, начиная с обработчика аппаратного прерывания. Т.е. сначала это обрабатывается в ядре, потом передаётся в X-сервер, где соотносится с определённым окном, а окно соотносится с его владельцем-приложением. Далее X-сервер через ядро связывается с владельцем окна (в данном случае - браузером) и передаёт обработчик ему. В браузере обработка клика тоже делается в много стадий в разных программных компонентах, включая JS-интерпретатор; а тот уже передаёт команды рендеру. Причём рендер - это сначала браузер, потом (опять через ядро) передаётся в X-сервер.

А некоторые клики (по объектам, которым не назначен JS-обработчик - естественно, обрабатываются без JS-интерпретатора, встроенными обработчиками.

Судя по последней фразе - Вас интересует только то, что происходит в браузере. Это я не копал, не знаю.
Ответ написан