Драйвери дуже схожі на будь-яку іншу програму, вони можуть складатися з декількох вихідних файлів. Драйвери пристроїв Linux можуть бути безпосередньо зібрані в ядро або модуль ядра. Моделі ядра мають перевагу в тому, що вони можуть динамічно завантажуватися (тобто для їх використання вам не потрібно складати нове ядро).
Ви, очевидно, завжди можете шукати вихідний код Linux, але це може бути важким завданням спочатку. Однак, як і у будь-якого драйвера Linux, це файли. Це означає, що інші програми отримують доступ до них через інтерфейс VFS. Наприклад, ви можете керувати CDROM за допомогою ioctl()
дзвінків, використовуючи його файл пристрою.
Я настійно рекомендую перевірити драйвери пристроїв Linux . Він доступний у вільному доступі і відповість на ваші запитання. Зокрема, ви можете прочитати розділ 2, де показано, як створити простий модуль "Привіт, ядро". Це може бути набагато більше, ніж ви просите, але ви можете прочитати шматочки та фрагменти, які вас цікавлять. І це безкоштовно. ; P