ioctl – besturingsapparaat
Korte inhoud
#include
int ioctl(int NS, int verzoek, …);
Beschrijving
De ioctl functie manipuleert de onderliggende apparaatparameters van speciale bestanden. In het bijzonder kunnen veel bedieningskenmerken van speciale karakterbestanden (bijv. terminals) worden bestuurd met: ioctl verzoeken. het argument NS moet een open bestandsdescriptor zijn. Het tweede argument is een apparaatafhankelijke aanvraagcode. Het derde argument is een niet-getypte verwijzing naar het geheugen. Het is traditioneel teken *argp (van de dagen ervoor leegte * was geldig C), en zal zo genoemd worden voor deze discussie. een ioctl verzoek heeft erin gecodeerd of het argument een is in parameter of uit parameter, en de grootte van het argument argp in bytes. Macro’s en definities die worden gebruikt bij het specificeren van een ioctl verzoek bevinden zich in het bestand
Winstwaarde
Gewoonlijk wordt bij succes nul geretourneerd. Een paar ioctls gebruiken de retourwaarde als uitvoerparameter en retourneren een niet-negatieve waarde bij succes. Bij een fout wordt -1 geretourneerd, en foutje correct is ingesteld.
fouten
EBADF
NS is geen geldige descriptor.
EFAULT
argp verwijst naar een ontoegankelijk geheugengebied.
ENOTTY
NS is niet gekoppeld aan een speciaal tekenapparaat.
ENOTTY
Het opgegeven verzoek is niet van toepassing op het soort object dat de descriptor NS referenties.
EINVAL
Verzoek of argp is niet geldig.
Conform aan
Geen enkele standaard. Argumenten, resultaten en semantiek van ioctl(2) variëren afhankelijk van het apparaatstuurprogramma in kwestie (de oproep wordt gebruikt als een verzamelnaam voor bewerkingen die niet goed passen bij het Unix-stroom I/O-model). De ioctl functieaanroep verscheen in versie 7 AT&T Unix.