Nama
ioctl - perangkat kontrol
Ringkasan
#include
int ioctl (int d , int request , ...);
Deskripsi
Fungsi ioctl memanipulasi parameter perangkat yang mendasari file khusus. Secara khusus, banyak karakteristik operasi dari file khusus karakter (misalnya terminal) dapat dikontrol dengan permintaan ioctl . Argumen d harus berupa deskriptor file terbuka.
Argumen kedua adalah kode permintaan yang bergantung pada perangkat. Argumen ketiga adalah pointer untyped ke memori. Ini secara tradisional char * argp (dari hari-hari sebelum void * valid C), dan akan dinamakan demikian untuk diskusi ini.
Permintaan ioctl telah dikodekan di dalamnya apakah argumen tersebut merupakan parameter dalam parameter atau keluar , dan ukuran argumen argp dalam byte. Makro dan definisi yang digunakan dalam menentukan permintaan ioctl terletak di file
Nilai Pengembalian
Biasanya, pada nol sukses dikembalikan. Beberapa ioctls menggunakan nilai kembalian sebagai parameter output dan mengembalikan nilai non-negatif pada kesuksesan. Pada kesalahan, -1 dikembalikan, dan errno diatur dengan tepat.
Kesalahan
EBADF
d bukan merupakan pendeskripsi yang valid.
EFAULT
argp referensi area memori yang tidak dapat diakses.
ENOTTY
d tidak terkait dengan perangkat khusus karakter.
ENOTTY
Permintaan yang ditentukan tidak berlaku untuk jenis objek yang deskriptor d referensi.
EINVAL
Permintaan atau argp tidak valid.
Sesuai dengan
Tidak ada standar tunggal. Argumen, pengembalian, dan semantik ioctl (2) bervariasi sesuai dengan driver perangkat yang bersangkutan (panggilan digunakan sebagai penampung semua operasi yang tidak cocok dengan model I / O aliran Unix ). Lihat ioctl_list (2) untuk daftar banyak panggilan ioctl yang dikenal. Panggilan fungsi ioctl muncul di Versi 7 AT & T Unix.