И это всё МОЁ

Где ей самое место.


Я ведь правильно понимаю, что сейчас при перемещении мыши происходит следующее:




  • Ядро ловит прерывание, пишет читающим из /dev/input/... инфу о перемещении мыши и пробуждает ждущих данных с соответствующего дескриптора (Xorg-сервер). Это первое переключение контекста.




  • Xorg, прочитав о перемещении мыши, дёргает drmModeMoveCursor чтобы переместить изображение курсора на экране. drmModeMoveCursor — это переключение контекста обратно в ядро.




  • Далее, Xorg-сервер посылает клиентам событие о перемещении мыши, записывая в сокет — опять переключение в ядро.




  • Клиенты читают из сокета — опять переключения контекста.




В общем, куча переключений контекста, поэтому графика заметно тормозит, что порождает темы вроде Windows работает плавнее и четче


Почему многие плюются от микроядер, говорят, что FUSE — это игрушка и реальные ФС должны быть в ядре, но при этом к идее всунуть графический сервер/композитор в ядро относятся отрицательно?









 , ,