π Hoofdstuk 23.1: Werken met Linux Apparaten (Device Interfaces & Mappen)
ββββββββββββββββββββββββββββββ
π» Populaire Apparateninterfaces:
ββββββββββββββββββββββββββββββ
Interface β Beschrijving
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
PCI/PCIe β Verbinding met interne uitbreidingskaarten
(HDD, netwerkkarten, GPU, audio)
USB β SeriΓ«le communicatie, ondersteunt apparaten zoals
muizen, toetsenborden, opslag
GPIO β Digitale input/output pins voor eenvoudige
hardware-controle (bv. Raspberry Pi)
ββββββββββββββββββββββββββββββ
π Belangrijke Systeembestanden & Mappen:
ββββββββββββββββββββββββββββββ
π§ `/dev` β Device Files:
β’ Linux behandelt apparaten als bestanden in deze map
Type β Voorbeelden
ββββββββββββββββββββββββββββββββββββββββββββββββ
Karakterapparaten (`c`) β 1 karakter per keer, bv. terminals, seriΓ«le poorten
Blokapparaten (`b`) β Blokken data tegelijk, bv. harde schijven, SSDβs
π Bestanden in `/dev`:
Bestand β Functie
ββββββββββββββββββββββββββββββββββββββββββββββββββββββ
/dev/null β Gooi data weg (black hole)
/dev/zero β Genereert null-bytes
/dev/random
/dev/urandom β Genereert willekeurige data (`urandom` is minder veilig)
π¦ Device Mapper:
β’ Virtuele laag voor blokapparaten
β’ Gebruikt door:
- **LVM (Logical Volume Manager)**
- **LUKS (Linux Unified Key Setup)** voor encryptie
ββββββββββββββββββββββββββββββ
π§ `/proc` β Virtueel Hardware-informatiesysteem:
ββββββββββββββββββββββββββββββ
β’ Dynamisch aangemaakt door de kernel
β’ Geeft real-time info over hardwarestatus
π Bestanden in `/proc`:
Bestand β Inhoud
βββββββββββββββββββββββββββββββββββββββββββββββββββ
/proc/interrupts β IRQβs: hardware die CPU wil aanspreken
/proc/ioports β I/O-poorten die apparaten gebruiken
/proc/dma β DMA-kanalen voor directe data-overdracht naar RAM
π§ Tip:
Gebruik `setpci` om I/O-poortconflicten op te lossen
(zelden nodig door Plug and Play)
ββββββββββββββββββββββββββββββ
π₯οΈ `/sys` β Hardware Info voor Gebruikers:
ββββββββββββββββββββββββββββββ
β’ Virtuele map met informatie over apparaten
(bus, kernelmodules, enz.)
β’ Iedereen kan lezen (geen root nodig)
ββββββββββββββββββββββββββββββ