Промышленная асинхронность: опыт внедрения C++20 корутин в сервисы KvadraOS — Илья Клементьев, YADRO
Системные вызовы select и poll — это не просто часть истории Unix, а фундамент асинхронного ввода-вывода, который отлично работает и в современных реалиях. В этом докладе Илья Клементьев разобрал, как эти примитивы используются для параллельной работы с файловыми дескрипторами в C++ и операционной системе KvadraOS. Он показал, как ядро ожидает готовности дескрипторов, и перешел от теории к практике, продемонстрировав, как глубокое понимание этих механизмов помогло его команде эффективно использовать C++-корутины для асинхронных DBus-вызовов в KvadraOS Desktop. 00:00 — Вступление и знакомство с KVADRA OS Desktop 01:28 — История развития ОС и особенности KVADRA OS 04:30 — Асинхронный код в Chromium: задачи, callback и межпроцессное взаимодействие 09:49 — MessagePump, EPOLL и организация обработки событий 15:10 — Ограничения EPOLL и сравнение с poll 18:14 — Адаптивный backend и IO_uring: производительность и безопасность 21:54 — Корутины C++20: устройство, awaiter и PromiseType 23:48 — Почему Chromium не переходит на корутины и как они применяются в KVADRA OS
Название:
Промышленная асинхронность: опыт внедрения C++20 корутин в сервисы KvadraOS — Илья Клементьев, YADRO
Категория:
Технологии и интернет