Skip to main content

Ioctl - Linux Command - Unix Command

Yocto Linux #4 - Kernel Module read, write, ioctl (Hunyo 2026)

Yocto Linux #4 - Kernel Module read, write, ioctl (Hunyo 2026)
Anonim

ioctl - control device

Buod

# isama

int ioctl (int d , int kahilingan , …);

Paglalarawan

Angioctl function na manipulahin ang pinagbabatayan parameter ng aparato ng mga espesyal na file. Sa partikular, maraming mga katangian ng operating ng mga espesyal na file ng character (hal. Mga terminal) ay maaaring kontroladoioctl mga kahilingan. Ang argumento d Dapat ay isang bukas na tagapaglarawan ng file.

Ang pangalawang argument ay isang code na humihiling ng aparato na umaasa sa aparato. Ang pangatlong argumento ay isang hindi naipasok pointer sa memorya. Tradisyonal itochar * argp (mula sa mga araw bagowalang bisa * ay wastong C), at ito ay pinangalanan para sa talakayang ito.

Isang ioctl kahilingan ay naka-encode dito kung ang argumento ay isang sa parameter o out parameter, at laki ng argumento argp sa mga byte. Mga Macro at tumutukoy sa ginamit na tumutukoy sa isang ioctl kahilingan ay matatagpuan sa file .

Ibalik ang Halaga

Karaniwan, sa tagumpay zero ay ibinalik. Ang ilang mga ioctls ay gumagamit ng halaga ng pagbabalik bilang parameter ng output at nagbabalik ng di-negatibong halaga sa tagumpay. Sa error, -1 ay ibinalik, at errno ay nakatakda nang naaayon.

Mga Mali

EBADF

d Hindi isang wastong tagapaglarawan.

EFAULT

argp mga sanggunian ng isang hindi maa-access na lugar ng memorya.

Nagtatangkilik

d ay hindi nauugnay sa isang espesyal na aparato ng character.

Nagtatangkilik

Ang tinukoy na kahilingan ay hindi nalalapat sa uri ng bagay na ang tagapaglarawan d mga sanggunian.

EINVAL

Kahilingan o argp ay hindi wasto.

Sumasang-ayon sa

Walang isang pamantayan. Mga argumento, pagbabalik, at mga semantiko ngioctl(2) mag-iba ayon sa driver ng device na pinag-uusapan (ang tawag ay ginagamit bilang isang catch-lahat para sa mga operasyon na hindi malinis na magkasya sa I / O modelo ng Unix stream). Angioctl function na tawag ay lumabas sa Bersyon 7 AT & T Unix.