Mësoni Command Linux - ioctl

emër

ioctl - pajisje kontrolli

përmbledhje

#include

int ioctl (int d , kërkesa int , ...);

Përshkrim

Funksioni ioctl manipulon parametrat themelor të pajisjes së skedarëve të veçantë. Në veçanti, shumë karakteristika operative të skedarëve të veçantë të karakterit (p.sh. terminalet) mund të kontrollohen me kërkesa të ioctl . Argumenti d duhet të jetë një përshkrues i hapur i skedarit.

Argumenti i dytë është një kod kërkimi i varur nga pajisja. Argumenti i tretë është një tregues i untyped në kujtesë. Është tradicionalisht char * argp (nga ditët para pavlefshmërisë * ishte e vlefshme C), dhe do të emërohet kështu për këtë diskutim.

Një kërkesë ioctl ka koduar në atë nëse argumenti është një parametër parametër ose jashtë dhe madhësia e argumentit argp në bytes. Macros dhe përcaktimet e përdorura në specifikimin e një kërkese ioctl janë të vendosura në skedarin .

Vlera e Kthimit

Zakonisht, me sukses zero është kthyer. Disa ioctls përdorin vlerën e kthimit si një parametër të prodhimit dhe kthimin e një vlere nonnegative për suksesin. Në gabim, -1 është kthyer, dhe errno është vendosur në mënyrë të përshtatshme.

gabimet

EBADF

d nuk është një përshkrues i vlefshëm.

EFAULT

argp referon një zonë të paarritshme të kujtesës.

ENOTTY

d nuk është i lidhur me një pajisje të veçantë të karakterit.

ENOTTY

Kërkesa e specifikuar nuk vlen për llojin e objektit që përshkruesi d referenca.

EINVAL

Kërkesa ose argp nuk është e vlefshme.

Konform me

Asnjë standard i vetëm. Argumentet, kthimet dhe semantika e ioctl (2) ndryshojnë sipas shoferit të pajisjes në fjalë (thirrja përdoret si një kapur-të gjitha për operacione që nuk përshtaten qartë me modelin I / O të rrjedhës Unix ). Shikoni ioctl_list (2) për një listë të shumë prej thirrjeve të njohura të ioctl . Thirrja e funksionit të ioctl u paraqit në Versionin 7 AT & T Unix.