プログラミング言語 'ファイルシステム'

http://morihyphen.hp.infoseek.co.jp/files/sofs.tar.gz

* SOFS (shared object filesystem)

SOFSは、.soファイルをマウントするファイルシステムです。

 $ ./sofs test
 $ echo /usr/lib/libimlib-bmp.so >> test/controls/add_libfile
 $ ls test/libimlib-bmp.so/
 loader_bmp


こんな感じで、.soの中でエクスポートされてる関数が見れます。


 $ echo 'int add_int(int a,int b){ return a+b; }' > demo/demo.c
 $ gcc -shared -o demo/libdemo.so demo/demo.c
 $ echo $PWD/demo/libdemo.so >> test/controls/add_libfile
 $ ls test/libdemo.so
 $ echo $PWD/demo/libdemo.so >> test/controls/add_libfile
 $ ls test/libdemo.so/
 add_int
 $ echo '3,4' >> test/libdemo.so/add_int
 $ od -tu4 test/variables/retval
 0000000          7
 0000004
 $ echo 'retval,retval' >> test/libdemo.so/add_int
 $ od -tu4 test/variables/retval
 0000000         14
 0000004


なんかを書きこむと、関数が呼ばれます。
関数の戻り値は test/variables/retval に入ってます。

色々書きたいんだけど、なんか、もう5時なので寝るよ。
明日は…無理だ…明後日ぐらいに書く。