User manual - Cライブラリ解説書ver.1.01(2006年6月15日)

DT−300C ライブラリ解説書
14
2.1.4 低水準インタフェース
低水準インタフェースでは、ファイルについての処理(状態管理、書込み/読込み等)および、メモリ管理を行い
ます。
以下に低水準で提供する関数の機能を示します。
(1)openルーチン
引数で指定されたファイル名を引数で指定されたファイルモードでオープンします。正常な場合ハンドル No を返し
ます。ハンドル No は他の低水準関数で指定します。
(注意)modeはOR指定し、読み/書きモード(bit0∼2)はいずれかを必ず指定します。
mode
O_RDONLY : 1=読み出し専用にします。
O_WRONLY : 1=書き込み専用にします。
O_RDWR : 1=読み込み/書き込み両用にします。
O_CREAT : 1=ファイルが存在しない場合は、新規ファイル
 として作成します。
O_TRUNC : 1=ファイルが存在する場合、ファイル内容を捨て、
 ファイルサイズを0にします。
O_APPEND : 読み込み/書き込み位置の設定をします。
0=ファイル先頭に設定
1=ファイル最後に設定
34531 30 012
(2)closeルーチン
引数で指定されたハンドルNo.に対応したファイルのクローズ処理を行います。
(3)readルーチン
引数で指定されたハンドルNo.のファイルに対し、現在の読込み位置よりファイルデータを指定バッファへ転送し
ます。 転送後の読込み位置は、読出しバイト数だけ先に進みます。
(4)writeルーチン
引数で指定されたハンドルNo.のファイルに対し、書込みデータバッファの内容を現在の書込み位置より書込みを
開始します。 書込み終了後、ファイル管理テーブルの書込み位置を書込みバイト数だけ先に進めます。
(5)lseekルーチン
引数で指定されたハンドルNo.のファイルに対し、読込み/書込み位置をバイト単位で要求位置に変更します。
要求位置が負または、ファイルサイズをこえる場合はエラーとします。
読込み/書込み位置の設定は、引数により以下のように決定します。
第2引数 offset:読込み/書込みの位置を示すオフセット(バイト単位)
第3引数 base :オフセットの起点。
・ base が0のとき:ファイルの先頭から offset バイトの位置に設定します。
・ base が1のとき:現在の位置に offset バイトを加えた位置に設定します。
・ base が2のとき:ファイルサイズに offset バイトを加えた位置に設定します。
(6)sbrkルーチン
要求されたデータ領域を割り付け、正常に領域が確保できたとき先頭アドレスを返します。
(注意事項)
誤動作の原因となりますので、高水準関数との併用は避けて下さい。