CDemu — это свободное программное обеспечение для эмуляции оптических приводов в операционных системах семейства Unix, преимущественно под Linux. Проект реализует виртуальный привод, способный монтировать образы оптических дисков различных форматов, включая образы ISO, BIN/CUE и другие специализированные контейнеры. Цель CDemu — предоставить пользователю возможность работать с образами дисков так же, как с физическими носителями, без непосредственного использования аппаратного привода.
Разработанный как набор компонентов пользовательского пространства и модулей ядра, CDemu обычно включает демон, управляющие утилиты и интерфейсы для интеграции с настольными окружениями. Исторические сведения о проекте и детали реализации могут варьироваться; в случае отсутствия исчерпывающих публичных данных, описание основывается на общепринятой функциональной модели программ-эмуляторов оптических приводов. CDemu широко применяется для тестирования программ, установки программного обеспечения с образов и работы с мультимедийным контентом без физического носителя.
- Эмуляция виртуального оптического привода — создание одного или нескольких логических устройств, распознаваемых системой как реальные приводы.
- Поддержка форматов образов — монтирование распространённых форматов образов дисков (например, ISO, BIN/CUE и подобных контейнеров).
- Демон и пользовательские утилиты — фоновые сервисы и команды для управления виртуальными приводами и их настройками.
- Интеграция с системой — представление смонтированных образов через файловую систему и взаимодействие с существующими средствами монтирования и автозапуска.
- Работа с образами CD/DVD/Blu‑ray — возможность эмулировать разные типы оптических носителей и содержимое, включая многосессионные и комбинированные образы.
- Совместимость с приложениями — обеспечение работы приложений, ожидающих наличия оптического привода, включая установщики и мультимедийные проигрыватели.
- Конфигурация доступа — управление разрешениями и параметрами доступа к виртуальным приводам для разных пользователей и процессов.
- Отдельные компоненты для расширения — модульная архитектура, позволяющая добавлять функции без изменения основного кода демона и ядра.