浓毛老太交欧美老妇热爱乱,蜜臀性色av免费,妺妺窝人体色www看美女,久久久久久久久久久大尺度免费视频,麻豆人妻无码性色av专区

位置:51電子網(wǎng) » 技術資料 » 嵌入式系統(tǒng)

Linux的設備驅(qū)動程序應是一個內(nèi)核模塊

發(fā)布時間:2009/2/18 0:00:00 訪問次數(shù):1482

  為了增跟內(nèi)核的靈活性和為了方便,設各驅(qū)動程序應被設計為一個可動態(tài)安裝的內(nèi)核模塊。

  于是,一個典型的linux設各驅(qū)動程序應包含如下幾部分代碼:

  ·驅(qū)動程序模塊的注冊與注銷函數(shù);

  ·設各的打開、關閉、讀、寫及需要的其他操作函數(shù);

  ·設備的中斷服務程序。

  下面用偽代碼給出一個從鍵盤上輸入一個字符的例子,以使讀者對設備驅(qū)動程序的構(gòu)成有一個基本的概念。

 。1)定義讀操作函數(shù)

  ssize mydev_read(……)

  {

  獲取本設備的信號量以確倮沒有其他進程訪悶本設備;

  申請中斷標志,允許中斷;

  對設備發(fā)出讀命令;

  將進eh于等待隊列,等待中斷到來:

  }

 。2)定義中斷服務程序

  void mydev_ihterpt(……)

  {

  處理器讀入字符;

  設置中斷標志:

  喚醒等侍的進程:

  }

 。3)定義模塊初始化函數(shù)

  int init_module(void)

  向系統(tǒng)注冊設各;

  其他初始化代碼;

  (4)定義模塊析構(gòu)函數(shù)

  void clemup_modtlle(void)

  {

  取消注冊的設備;

  其他析構(gòu)代碼;

  }

  歡迎轉(zhuǎn)載,信息來自維庫電子市場網(wǎng)(www.dzsc.com)



  為了增跟內(nèi)核的靈活性和為了方便,設各驅(qū)動程序應被設計為一個可動態(tài)安裝的內(nèi)核模塊。

  于是,一個典型的linux設各驅(qū)動程序應包含如下幾部分代碼:

  ·驅(qū)動程序模塊的注冊與注銷函數(shù);

  ·設各的打開、關閉、讀、寫及需要的其他操作函數(shù);

  ·設備的中斷服務程序。

  下面用偽代碼給出一個從鍵盤上輸入一個字符的例子,以使讀者對設備驅(qū)動程序的構(gòu)成有一個基本的概念。

 。1)定義讀操作函數(shù)

  ssize mydev_read(……)

  {

  獲取本設備的信號量以確倮沒有其他進程訪悶本設備;

  申請中斷標志,允許中斷;

  對設備發(fā)出讀命令;

  將進eh于等待隊列,等待中斷到來:

  }

  (2)定義中斷服務程序

  void mydev_ihterpt(……)

  {

  處理器讀入字符;

  設置中斷標志:

  喚醒等侍的進程:

  }

 。3)定義模塊初始化函數(shù)

  int init_module(void)

  向系統(tǒng)注冊設各;

  其他初始化代碼;

 。4)定義模塊析構(gòu)函數(shù)

  void clemup_modtlle(void)

  {

  取消注冊的設備;

  其他析構(gòu)代碼;

  }

  歡迎轉(zhuǎn)載,信息來自維庫電子市場網(wǎng)(www.dzsc.com)



相關IC型號

熱門點擊

 

推薦技術資料

DFRobot—玩的就是
    如果說新車間的特點是“靈動”,F(xiàn)QPF12N60C那么... [詳細]
版權(quán)所有:51dzw.COM
深圳服務熱線:13692101218  13751165337
粵ICP備09112631號-6(miitbeian.gov.cn)
公網(wǎng)安備44030402000607
深圳市碧威特網(wǎng)絡技術有限公司
付款方式


 復制成功!