Pelajari Perintah Linux - ioctl

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.