Իմացեք Linux հրամանատարությունը - ioctl

Անուն

ioctl - հսկիչ սարքը

Սինոփսիս

#include

int ioctl (int d , int հարցում , ...);

Նկարագրություն

Ioctl ֆունկցիան մանիպուլացնում է հատուկ ֆայլերի հիմնական սարքի պարամետրերը: Մասնավորապես, բնույթի հատուկ ֆայլերի շատ գործառական բնութագրերը (օրինակ, տերմինալները) կարող են վերահսկվել ioctl հարցումներով: The argument d- ը պետք է լինի բաց ֆայլի նկարագրիչ:

Երկրորդ փաստարկը սարքի կախվածության հարցման կոդը է: Երրորդ փաստարկը հիշատակված անփայլ ցուցիչ է: Դա սովորաբար char * argp (օրվանից ի վեր անվավեր է եղել C- ից) եւ այդ անունը կդառնա այս քննարկման համար:

Իկտոլի խնդրանքը կոդավորված է, թե արդյոք փաստարկը պարամետրի կամ դրսեւորման պարամետր է, եւ argument argument- ի չափը բայթերում : Macros- ը եւ ioctl- ի խնդրանքը նշելու համար օգտագործվող սահմանումները տեղադրվում են ֆայլում :

Վերադարձի արժեքը

Սովորաբար հաջողությամբ զրոյի վերադարձվում է: Մի քանի ioctls վերադարձի արժեքն օգտագործում են որպես ելքային պարամետր եւ վերադարձնում անվիճելի արժեքը հաջողության վրա: Սխալում , -1 վերադարձվում է, իսկ errno- ն համապատասխանաբար սահմանվում է:

Սխալներ

EBADF

d- ը վավեր նկարիչ չէ:

ԷՖՖՈՒԼ

argp- ը հղում է անմատչելի հիշողության տարածքին:

Էնոտի

d- ը կապված չէ բնույթի հատուկ սարքի հետ:

Էնոտի

Նշված հարցումը չի տարածվում այն ​​նույն օբյեկտի վրա, որը նկարագրողը հղում է կատարում:

EINVAL- ը

Հարցումը կամ argp- ը վավեր չէ:

Համապատասխանություն

Ոչ մի ստանդարտ: Ioctl- ի փաստարկները, վերադարձը եւ semantics- ը (2) տարբերվում են տվյալ սարքի վարորդի համաձայն (զանգը օգտագործվում է որպես բռնակ, բոլոր այն գործողությունների համար, որոնք մաքուր չեն համապատասխանում Unix հոսքի I / O մոդելի): Տես ioctl_list (2) հայտնի ioctl զանգերի բազմաթիվ ցուցակի համար: Ioctl ֆունկցիայի զանգը հայտնվել է 7-րդ տարբերակ AT & T Unix- ում: