Sinau perintah Linux - ioctl

Jeneng

piranti kontrol ioctl

Sinopsis

#include

int ioctl (int d , int request , ...);

Gambaran

Fungsi ioctl manipulates paramèter piranti sing ndasari file khusus. Secara khusus, akeh karakteristik operasi karakter file khusus (contone terminal) bisa dikontrol karo ioctl requests. Alesan d kudu dadi deskriptor file sing mbukak.

Argumentasi kapindho yaiku kode panyuwun sing gumantung saka piranti. Argumentasi katelu minangka pointer untyped kanggo memori. Secara tradisional char * argp (wiwit dina sadurunge ora valid * bener C), lan bakal dijenengi supaya diskusi iki.

Panjaluk ioctl wis dikodekan manawa pitakonan kasebut ana ing parameter utawa parameter metu , lan ukuran argp argumentasi ing bita. Makro lan nemtokake sing dipigunakaké kanggo nemtokake permintaan ioctl sing ana ing file .

Bali Value

Biasane, ing nol sukses wis bali. Sawetara ioctls nggunakake nilai bali minangka parameter output lan ngasilake nilai nonnegative ing sukses. Ono kesalahan, -1 wis bali, lan errno disetel kanthi tepat.

Kasalahan

EBADF

d ora minangka deskripsi sing bener.

EFAULT

argp referensi lan area memori sing ora bisa diakses.

NINGGALKE

d ora ana hubungane karo piranti khusus piranti.

NINGGALKE

Panjaluk kasebut ora ditrapake kanggo obyek sing ditujokake dening descriptor d .

EINVAL

Request utawa argp ora sah.

Konstruktif kanggo

Ora ana standar siji. Argumentasi, ngasilake, lan semantik saka ioctl (2) beda-beda miturut driver piranti sing ana ing pitakonan (telpon digunakake minangka panangkepan kanggo operasi sing ora resik pas model stream I / O Unix ). Waca ioctl_list (2) kanggo dhaptar akeh panggilan ioctl sing dikenal. Panggilan fungsi ioctl muncul ing Versi 7 AT & T Unix.