Вечный IOCTL: вызовы требующие помощи ядра - Никита Шубин, YADRO
Рассмотрели, почему для полноценной эмуляции устройств с переиспользованием инструментов и библиотек необходим вызов IOCTL, как работает эта эмуляция в CUSE и какие ограничения имеет этот подход. Разобрали, почему для полноценной работы с GPIO_V2_GET_LINE_IOCTL потребовалось создание внутриядерного драйвера GUSE. Никита Шубин ведущий инженер по разработке ПО, YADRO Занимался ядром Linux с версии 2.4 и системным программированием под GNU/Linux. В последние три года много внимания стал уделять развитию QEMU для разработки, тестирования и проверки новых гипотез. 📚 Дополнительные материалы ✅ Хабр: · Как патчить ядро Linux: подробное руководство https://habr.com/ru/companies/yadro/articles/969756/ · Как найти UB, которое никто не хочет замечать: разбираем clang-tidy изнутри https://habr.com/ru/companies/yadro/articles/1017930/ · Почему AI не может полноценно участвовать в разработке на С++ https://habr.com/ru/companies/yadro/articles/1003670/ ✅ Статьи на Истовом инженере: · Разработка тензорного компилятора под RISC-V CPU с помощью OpenVINO и MLIR https://engineer.yadro.com/article/tensor-compiler/ · Вирт, Кормен и диалекты Basic: что изучить про алгоритмы и структуры данных разработчикам на С++ https://engineer.yadro.com/article/algoritmy-i-struktury-dannyh-cpp/ · Обзор книги «С++ 20 в деталях»: доступно, но не для джунов https://engineer.yadro.com/article/c-get-the-details-book/ · Ищем Арнольда Шварценеггера среди мужчин, женщин и детей с помощью нейросети на С++ https://engineer.yadro.com/article/ml-for-neural-networks/ 🎧 Послушать: · Подкаст «Битовые маски» с Константином Владимировым. Компилятор для CPU и GPU. Часть 1. LLVM и GCC https://engineer.yadro.com/podcast/compiler-cpu-gpu-part-1/ · Подкаст «Битовые маски» с Константином Владимировым. Компилятор для CPU и GPU. Часть 2. LLVM в GPU компиляторах. Стандарты С++https://engineer.yadro.com/podcast/compiler-cpu-gpu-part-2/ · Подкаст «Битовые маски» с Дмитрием Петровым. Разработка компиляторов: что поменялось за 20 лет https://engineer.yadro.com/podcast/compiler-development/
Рассмотрели, почему для полноценной эмуляции устройств с переиспользованием инструментов и библиотек необходим вызов IOCTL, как работает эта эмуляция в CUSE и какие ограничения имеет этот подход. Разобрали, почему для полноценной работы с GPIO_V2_GET_LINE_IOCTL потребовалось создание внутриядерного драйвера GUSE. Никита Шубин ведущий инженер по разработке ПО, YADRO Занимался ядром Linux с версии 2.4 и системным программированием под GNU/Linux. В последние три года много внимания стал уделять развитию QEMU для разработки, тестирования и проверки новых гипотез. 📚 Дополнительные материалы ✅ Хабр: · Как патчить ядро Linux: подробное руководство https://habr.com/ru/companies/yadro/articles/969756/ · Как найти UB, которое никто не хочет замечать: разбираем clang-tidy изнутри https://habr.com/ru/companies/yadro/articles/1017930/ · Почему AI не может полноценно участвовать в разработке на С++ https://habr.com/ru/companies/yadro/articles/1003670/ ✅ Статьи на Истовом инженере: · Разработка тензорного компилятора под RISC-V CPU с помощью OpenVINO и MLIR https://engineer.yadro.com/article/tensor-compiler/ · Вирт, Кормен и диалекты Basic: что изучить про алгоритмы и структуры данных разработчикам на С++ https://engineer.yadro.com/article/algoritmy-i-struktury-dannyh-cpp/ · Обзор книги «С++ 20 в деталях»: доступно, но не для джунов https://engineer.yadro.com/article/c-get-the-details-book/ · Ищем Арнольда Шварценеггера среди мужчин, женщин и детей с помощью нейросети на С++ https://engineer.yadro.com/article/ml-for-neural-networks/ 🎧 Послушать: · Подкаст «Битовые маски» с Константином Владимировым. Компилятор для CPU и GPU. Часть 1. LLVM и GCC https://engineer.yadro.com/podcast/compiler-cpu-gpu-part-1/ · Подкаст «Битовые маски» с Константином Владимировым. Компилятор для CPU и GPU. Часть 2. LLVM в GPU компиляторах. Стандарты С++https://engineer.yadro.com/podcast/compiler-cpu-gpu-part-2/ · Подкаст «Битовые маски» с Дмитрием Петровым. Разработка компиляторов: что поменялось за 20 лет https://engineer.yadro.com/podcast/compiler-development/




