VME/CAMACデバイスドライバ開発専門研修

講師 : 安 芳次
オンライングループ , 素粒子原子核研究所, 高エネルギー加速器研究機構
1-1 Oho, Tsukuba, Ibaraki 305-0801 Japan
Yoshiji.YASU@kek.jp
Under construction! Last Modified: March 22, 2002

目的| 開発手順| 期間 | メンバー | ミーティングメモ | 仕様作成のテンプレート | LinuxデバイスドライバFAQ | Linuxデバイスドライバの書き方 | 有用なWEBサイト |

目的

この専門研修の目的はVME/CAMAC/PCIなど高エネルギー物理学実験等に用いられる バスを利用したLinux用デバイスドライバの開発です。 Linuxにおけるデバイスドライバの基本構造を理解し、各自の 目的に沿ったデバイスドライバを開発して頂きます。

開発手順

開発の手順はおよそ次のようです。

期間

2000年11月下旬より2001年4月いっぱいまで

メンバー

名前 所属 研修内容
仲吉一男 素粒子原子核研究所 USB-CAMACデバイスドライバの開発
多田野幹人 物質構造科学研究所 CompactPCI-I/Oボード用デバイスドライバの開発
佐藤節夫 物質構造科学研究所 USB-VMEデバイスドライバの開発
小田切淳一 加速器研究施設 リアルタイムOS, L4-Linux用VMEデバイスドライバの開発

専門研修 ミーティングメモ

2000年 2001年 1月24日に開かれる研修検討委員会への中間報告書(pdf,txt)を研修委員長である工藤さんに提出しました。

研修委員会に最終報告書を提出しました。

仕様作成のテンプレート

外部仕様及び内部仕様を作成するに当たって、下記に示す内容についてできるだけ 触れるように心がけてください。

LinuxデバイスドライバFAQ

FAQがあります。

Linuxデバイスドライバの書き方 :
(カーネル2.4をベースにしています)

このデバイスドライバの書き方は初心者から熟練者までを対象としています。 また、デバイスドライバを使う立場の方とそれを作る立場の方、両方を 対象としています。初心者でデバイスドライバを使う立場の方は細かいところを 気にせずに、例題を中心にみてください。どのように使うかが分かります。 熟練者でデバイスドライバを作る立場の方はじっくり読んでください。 仮想記憶や割り込みは難しい部分ですが、頑張って理解してください。 ドライバを試しながらやれれば、理解は深まります。
  1. はじめに
  2. ハードウエア
  3. デバイスへのアクセス法のいろいろ
  4. 簡単なskeletonデバイスドライバ
  5. Programmed I/O (PIO)を用いた簡単なPCIデバイスドライバ
  6. X86 CPU/Linuxの割り込み処理機構
  7. 割り込みデバイスドライバのいろいろ(mouseintドライバ)
  8. PCI-CAMAC用デバイスドライバ(シングルアクションとLAM割り込み処理)
  9. その他、select文やシグナルをサポートするデバイスドライバ
  10. 仮想記憶とLinuxの空間管理
  11. mmapシステムコールを用いたカーネル空間上のメモリ及びI/Oデバイスのメモリ空間へのアクセス
  12. DMA機能を用いたデバイスドライバ
  13. USBを用いたVME/CAMACデバイスドライバ
  14. BIGPHYSエリアについて
  15. リアルタイムLinuxとデバイスドライバ
  16. 性能測定法
  17. その他

WEBサイト