Tockシステムコール

このフォルダには、ユーザ空間とカーネルの間のインターフェースに関する詳細な ドキュメントが含まれています。それは、ABIインターフェース、カーネルが提供する システムコール、(allowschedulecommandを使用する)ドライバ固有の インターフェースの詳細です。一般的なシステムコールの詳細については、 システムコールを参照してください。

システムコールのバイナリインターフェース

アプリケーションバイナリインターフェースの詳細。

コアカーネル提供のシステムコール

  • memop: メモリ関連の操作。

カプセル提供のドライバ

恒久的なドライバ番号が割り当てられているドライバ型は、以下の表の通りです。 "1.0"の列は、Tock 1.0リリースでドライバが安定しているか否かを示します ("✓"は安定を示します)。

基本

1.0ドライバ番号ドライバ記述 
0x00000Alarmユーザ空間のタイマーとして使用される
0x00001ConsoleUART console
0x00002LEDボード上のLEDを制御する
0x00003Buttonボード上のボタンから割り込みを取得する
0x00005ADCアナログ・デジタルコンバータ
0x00006DACデジタル・アナログコンバータ
0x00007AnalogComparatorアナログコンパレータ
0x00008Low-Level Debug低レベルデバッグツール

カーネル

1.0ドライバ番号ドライバ記述 
0x10000IPCプロセス間通信

Hardware Access

1.0ドライバ番号ドライバ記述 
0x00004GPIOGPIOピンの設定と読み取り
0x20000UARTUART
0x20001SPI生のSPIマスタインターフェース
0x20002SPI Slave生のSPIスレーブインターフェース
0x20003I2C Master生のI2Cマスタインターフェース
0x20004I2C Slave生のI2Cスレーブインターフェース
0x20005USBUSBインターフェース

注: GPIOはTock 2.0で番号が付け直される予定です。

無線通信

1.0ドライバ番号ドライバ記述 
0x30000BLEBluetooth Low Energy
0x30001802.15.4IEEE 802.15.4
0x30002UDPUDP/6LoWPANインターフェース

暗号

1.0ドライバ番号ドライバ記述 
0x40000AESAES共通鍵暗号
0x40001RNG乱数生成器
0x40002CRC巡回冗長検査計算

ストレージ

1.0ドライバ番号ドライバ記述 
0x50000App Flashアプリが各自のFlashに書き込みを可能にする
0x50001Nonvolatile Storage永続ストレージ用の汎用インターフェース
0x50002SDCardSDカードへの生ブロックアクセス

センサ

1.0ドライバ番号ドライバ記述 
0x60000Ambient Temp.環境温度(摂氏)
0x60001Humidity湿度センサ(%)
0x60002Luminance環境光センサ(ルーメン)
0x60003Pressure圧力センサ
0x60004Ninedof仮想加速度計/磁力計/ジャイロスコープ

センサIC

1.0ドライバ番号ドライバ記述 
0x70000TSL2561光センサ
0x70001TMP006温度センサ
0x70004LPS25HB圧力センサ
0x70005L3GD203軸ジャイロスコープ、温度センサ
0x70006LSM303DLHC3軸加速度計、磁力計、温度センサ

その他のIC

1.0ドライバ番号ドライバ記述 
0x80000LTC294XバッテリゲージIC
0x80001MAX17205バッテリゲージIC
0x80002PCA9544AI2Cアドレス多重化装置
0x80003GPIO Async非同期GPIOピン
0x80004nRF51822nRF51822 BLE SoCへのnRF シリアル化リンク
0x80005HD44780LCD HD44780カプセル