GETA ライブラリについて

$GETASRC/lib (分散GETAでは $GETASRC) 以下には GETA が提供する全てのライブラリが納められれている. それらは GETA を使用する上で必須のものと, そうではなくプログラマの便宜のために追加されているものに分けられる.

1. GETA の主要ライブラリ

libdw: 分散WAMアクセスライブラリ
libwam: モノリシック版 WAM manipulation routines / WAM アクセスライブラリ
libae: モノリシック版 association engine / 連想ライブラリ
libcs: モノリシック版 clustring library / クラスタリングライブラリ
libgetamu: モノリシック版 miscellaneous utilities for geta libraries / ユーティリティーライブラリ

これらは GETA を構成する主要部品であり, C 言語でプログラミングを行う際には, これらに含まれる関数を主に用いることになる.

libwam は WAM へのアクセスと操作関数を提供する (libwam は libci, libcw, libxr を包含している). 分散WAMの概要は, overview3.htmlに, モノリシック WAM の概要はoverview.htmlに, それぞれの関数についての説明は wam/*.[3]に記述されている. manpage のスタートポイントは wam(3), ci(3), cw(3), xr(3) である. なお, これらの使い方のチュートリアルがtutorial/wamにある.

libae は計量の差し替え可能な連想エンジンである. 詳細は manpage の wsh(3) および ae/wt/custom.txt を参照されたい.

getamu は libwam, libae で用いられている補助関数および C 言語で GETA アプリケーションプログラムを作成するときに使うと 便利な雑多なユーティリティーを含んでおり, libwam, libae などをリンクするときに必須となる.

2. その他のユーティリティー

bsdio: BSD-like file I/O interface / 単純なバッファ付き入出力インタフェース
cpipe: make C functions into a pipe / C 言語パイプライン
srvmu: miscellaneous utilities for client-server programming / サーバユーティリティー
bset: bit operation library / 多倍長ビット演算ライブラリ
iso2022jp2: internationalized string manipulation utilities / 国際化ユーティリティー
strio: low-level string I/O library / 文字列入出力ライブラリ
memio: low-level I/O intarface on iovec structure / メモリ入出力ライブラリ

これらは必須ではないが, GETA アプリケーションプログラムの作成に 役立つと思われるユーティリティー集である. bsdio は任意のデバイスに対するバッファ付き I/O ルーチンである. cpipe は C 言語で書かれた関数を, sh のパイプライン機能で繋ぐが如く接続し, 1 つのフィルタ関数にするものである. srvmu は, 検索サーバなどを作成する際に使用できるユーティリティー, bset は多倍長ビット演算ライブラリ, iso2022jp2 は国際化文字列を取り扱うためのユーティリティーである. strio, memio は bsdio と組み合わせることができる低レベル入出力ルーチンである.

bsdio, cpipe, srvmu, iso2022jp2 についてはそれぞれ bsdio(3), cpipe(3), srvmu(3), iso2022jp2(3) を, bset については bset/*.3を参照のこと.

iso2022jp2 の下に JIS コードユーティリティーライブラリであるlibjis.a が 併せて納められている. iso2022jp2/jis*.3 を参照されたい.

strio, memio についてはそれぞれ strio/*.[ch], memio/*.[ch] を参照されたい.