लिनक्स कमांड - ioctl जाणून घ्या

नाव

ioctl - नियंत्रण साधन

सारांश

#include

int ioctl (int d , int विनंती , ...);

वर्णन

Iioctl फंक्शन विशेष फाइल्सच्या अंडरलेइंग डिव्हाइस पॅरामीटर्सचे कुशल आचरण करते. विशेषतः, वर्ण विशेष फाइल्स (उदा. टर्मिनल्स) चे अनेक ऑपरेटिंग विशेषता ioctl विनंत्यासह नियंत्रित केल्या जाऊ शकतात. आर्ग्युमेंट एक ओपन फाइल डिस्क्रिप्टर असणे आवश्यक आहे.

दुसरा वितर्क एक डिव्हाइस-आधारित विनंती कोड आहे. तिसरे तर्क हे मेमरीसाठी एक अनारक्षित पॉइंटर आहे. हे परंपरागत रूपाने char * argp ( शून्यपूर्वीचे दिवस पासून * वैध होते C) होते, आणि या चर्चेसाठी असे नाव दिले जाईल.

एक ioctl विनंतीमध्ये यामध्ये एन्कोड केलेले आहे की परवलीचा शब्द पॅरामीटर किंवा बाह्य मापदंड आहे, आणि आर्ग्यूमेंटचे आर्ग्यू बाइटमध्ये आहे. Ioctl विनंती निर्देशीत करते मॅक्रो आणि परिभाषित फाइल मध्ये स्थित आहेत.

रिटर्न मूल्य

सर्वसाधारणपणे, अयशस्वी झाल्यानंतर शून्य परत मिळते. काही ioctls आउटपुट पॅरामीटर्स म्हणून परतावा मूल्य वापरतात आणि यशस्वीतेवर एक नॉन-एनजीएव्ह व्हॅल्यू परत करतात. त्रुटीवर, -1 परत केला जातो, आणि errno योग्यरित्या सेट आहे

त्रुटी

EBADF

d ही वैध वर्णनकर्ता नाही.

EFAULT

आर्गप एक अप्राप्त मेमरी क्षेत्राचे संदर्भ देते.

ENOTTY

डी एखाद्या कॅरेक्टर स्पेशल डिव्हाइसशी संबंधित नाही.

ENOTTY

निर्दिष्ट विनंती डिस्क्रिप्टर डी संदर्भांच्या ऑब्जेक्टच्या प्रकारास लागू होत नाही.

EINVAL

विनंती किंवा आर्गप वैध नाही.

सह अनुकूल

एकही मानक नाही. Ioctl च्या आर्ग्युमेंटस्, परतावे आणि सिमेंटिक (2) डिव्हाइस ड्रायव्हरच्या अनुसार बदलत असतात (कॉल फॉर कॅल-ऑल प्रमाणेच वापरले जाते जे अशक्य युनिक्स स्ट्रीम I / O मॉडेलमध्ये फिट होत नाहीत). ज्ञात ioctl कॉल्सच्या सूचीसाठी ioctl_list (2) पहा. Iioctl फंक्शन कॉल आवृत्ती 7 AT & T Unix मध्ये दिसले