加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

飛凌嵌入式ElfBoard ELF 1板卡-Linux C接口編程入門之ioctl操作

10/16 08:48
194
閱讀需 2 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

ioctl函數(shù)用于系統(tǒng)調(diào)用操作特殊文件的底層設(shè)備參數(shù)。例如終端的許多操作特性可以用ioctl()請求來控制。不能用于read()、write()、open()、close()函數(shù)表示的I/O操作通常都能用ioctl表示。

fd參數(shù)為某個設(shè)備或文件已打開的文件描述符;

request參數(shù)指定了將在fd上執(zhí)行的控制操作。具體設(shè)備的頭文件定義了可傳遞給request參數(shù)的常量;

ioctl()調(diào)用的第三個參數(shù)采用了標(biāo)準(zhǔn)C語言的省略符號(...)來表示(稱之為argp),可以是任意數(shù)據(jù)類型。ioctl()根據(jù)request的參數(shù)值來確定argp所期望的類型。通常情況下,argp是指向整數(shù)或結(jié)構(gòu)的指針,有些情況下,不需要使用?argp;

具體的ioctl操作類型和參數(shù)取決于所使用的設(shè)備和驅(qū)動程序。每個設(shè)備和驅(qū)動程序都可能定義自己的一組特定的ioctl操作,使用ioctl需要參考相關(guān)設(shè)備或驅(qū)動程序的文檔或頭文件以了解具體的操作類型和參數(shù);

相關(guān)推薦

電子產(chǎn)業(yè)圖譜