പേര്
ioctl - നിയന്ത്രണ ഉപകരണം
സംഗ്രഹം
# ഉൾപ്പെടുത്തുക
int ioctl (int d , int അഭ്യർത്ഥന , ...);
വിവരണം
Ioctl ഫംഗ്ഷൻ പ്രത്യേക ഫയലുകൾക്കുള്ള ഉപകരണത്തിന്റെ പരാമീറ്ററുകളെ കൈകാര്യം ചെയ്യുന്നു. പ്രത്യേകിച്ചു് സ്പെഷ്യൽ ഫയലുകളുടെ (ഉദാ ടെർമിനലുകൾ) പല പ്രവർത്തന വിശേഷതകളും ioctl ആവശ്യങ്ങൾ ഉപയോഗിച്ച് നിയന്ത്രിക്കാം. ആർഗ്യുമെന്റ് d ഒരു തുറന്ന ഫയൽ ഡിസ്ക്രിപ്റ്ററായിരിക്കണം.
രണ്ടാമത്തെ ആർഗ്യുമെൻറ് ഒരു ഉപകരണ-ആശ്രിത അഭ്യർത്ഥന കോഡാണ്. മൂന്നാമത്തെ ആർഗ്യുമെന്റ് മെമ്മറിനുള്ള ഒരു നീളം കൂടിയ പോയിന്റാണ്. പരമ്പരാഗതമായി ചർച്ച് * ആർംപപ് ( അസാധുവായ ദിവസത്തിനുമുൻപ് * സാധുതയുള്ളത് സി ആയിരുന്നു), ഈ ചർച്ചയ്ക്ക് അങ്ങനെ പേരുകൾ നൽകും.
ആർഗ്യുമെന്റ് ഒരു പാരാമീറ്ററിലാണോ അല്ലെങ്കിൽ പരാമീറ്ററാണോ, അതിൽ ആർഗ്യുമെന്റ് ആർബിപി ബൈറ്റുകളിൽ ആണോ എന്നു് ഒരു ioctl അപേക്ഷയിൽ എൻകോഡ് ചെയ്തിരിയ്ക്കുന്നു. ഒരു ioctl അഭ്യർത്ഥന വ്യക്തമാക്കുന്നതിൽ മാക്രോസും നിർവ്വചിച്ച ഫയലുകളും
മടങ്ങുക മൂല്യം
സാധാരണയായി, വിജയം പൂജ്യം മടക്കിനൽകുന്നു. കുറച്ച് ioctls ഒരു ഔട്ട്പുട്ട് പാരാമീറ്ററായി റിട്ടേൺ മൂല്യം ഉപയോഗിക്കുകയും ഒരു nonnegative മൂല്യം വിജയം നൽകുകയും ചെയ്യും. പിശക് കാരണം, -1 മടക്കി, പിഴവ് അനുയോജ്യമായി സജ്ജമാക്കിയിരിക്കുന്നു.
പിശകുകൾ
EBADF
ഡി ഒരു സാധുവായ ഡിസ്ക്രിപ്റ്ററല്ല.
EFAULT
ലഭ്യമല്ലാത്ത മെമ്മറി ഏരിയയെ argp പരാമർശിക്കുന്നു.
ENOTTY
ഒരു പ്രതീക പ്രത്യേക ഉപകരണവുമായി ഡുമായി ബന്ധമില്ല.
ENOTTY
നിർദ്ദിഷ്ട അഭ്യർത്ഥന ഡെസ്ക്ക്രിപ്റ്റർ d റഫറൻസുകളുടെ ഒബ്ജക്റ്റിന് ബാധകമല്ല.
EINVAL
അഭ്യർത്ഥന അല്ലെങ്കിൽ ആർഗിന്റെ സാധുതയുള്ളതല്ല.
അത് ശരിയാണ്
ഒരൊറ്റ നിലവാരമില്ല. Ioctl (2) ന്റെ ആർഗ്യുമെന്റുകൾ, റിട്ടേണുകൾ, സെമാന്റിക്സ് എന്നിവ ചോദ്യം ചെയ്യപ്പെട്ട ഡിവൈസ് ഡ്രൈവർ അനുസരിച്ചാണ് ( യൂണിക്സ് സ്ട്രീം I / O മോഡലിനു യോജിച്ച് കിടക്കുന്ന പ്രവർത്തനങ്ങൾക്കായി കോൾ ഉപയോഗിക്കുന്നു). അറിയപ്പെടുന്ന ioctl കോളുകളുടെ ഒരു ലിസ്റ്റിനായി ioctl_list (2) കാണുക. പതിപ്പ് 7, AT & T യുനിക്സുകളിൽ ioctl ഫംഗ്ഷൻ കോൾ പ്രത്യക്ഷപ്പെട്ടു.