「Sys-info」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
編集の要約なし
編集の要約なし
 
(同じ利用者による、間の2版が非表示)
14行目: 14行目:
; 戻り値
; 戻り値
: int-idx により以下のとおり。
: int-idx により以下のとおり。
: int-idx 無しで呼ばれた sys-info は、内部リソース統計のリストを返す。
: int-idx 無しで呼ばれた sys-info は、全てのリストを返す。




  オフセット 概要
  オフセット 概要
  0  LISP セル番 号
  0  LISP セル数
  1  最大の LISP セル定数
  1  LISP セルの最大数
  2  シンボルの数
  2  シンボルの数
  3  評価/再帰レベル
  3  評価/再帰レベル
  4  環境スタックレベル
  4  環境スタックレベル
  5  最大の呼び出しスタック定数
  5  最大の呼び出しスタック数
  6  親プロセスか 0 のPID
  6  親プロセスか 0 のPID
  7  実行している newLISP プロセスの PID
  7  実行している newLISP プロセスの PID
33行目: 33行目:
     bit 8 … UTF-8 バージョン (add 128)
     bit 8 … UTF-8 バージョン (add 128)
     bit 7 … added for ライブラリ・バージョン (add 64)
     bit 7 … added for ライブラリ・バージョン (add 64)
将来の新エントリは、オフセット 5 の後に挿入されるらしいので、"最大の呼び出しスタック数" まではオフセット 0 ~ 5 を使い、残りの四つのエントリのアクセスには、負数のオプセット -1 ~ -4 を使うことが推奨されている。
この方法なら、古いソースコードでも変更の必要はない。
例.
(sys-info) → (410 268435456 380 1 0 2048 0 5020 10300 134)
(sys-info 3) → 1
(sys-info -2) → 10300
Lispセルの最大数は、コマンド・ラインのスイッチ -m で変更される。
Lisp セル・メモリ 1メガ・バイト当たり 64k メモリ・セルが割り当てられる。
最大コール・スタック深さは、コマンド・ラインのスイッチ -s を使って、変更される。




[[Category:NewLISP]]
[[Category:NewLISP]]

2011年7月11日 (月) 17:56時点における最新版

構文
(sys-info [int-idx])


機能
int-idx で指定したシステム情報を返す。


引数
  • int-idx : 0~9 の整数


戻り値
int-idx により以下のとおり。
int-idx 無しで呼ばれた sys-info は、全てのリストを返す。


オフセット 概要
0  LISP セル数
1  LISP セルの最大数
2  シンボルの数
3  評価/再帰レベル
4  環境スタックレベル
5  最大の呼び出しスタック数
6  親プロセスか 0 のPID
7  実行している newLISP プロセスの PID
8  整定数としてのバージョン番号
9  オペレーティングシステム定数:
   linux=1, bsd=2, osx=3, solaris=4, cygwin=5, win32=6, os/2=7, tru64unix=9
   bit 10 … IPv6 バージョン (add 512)
   bit 9 …  64-bit バージョン (add 256)
   bit 8 … UTF-8 バージョン (add 128)
   bit 7 … added for ライブラリ・バージョン (add 64)


将来の新エントリは、オフセット 5 の後に挿入されるらしいので、"最大の呼び出しスタック数" まではオフセット 0 ~ 5 を使い、残りの四つのエントリのアクセスには、負数のオプセット -1 ~ -4 を使うことが推奨されている。 この方法なら、古いソースコードでも変更の必要はない。


例.

(sys-info) → (410 268435456 380 1 0 2048 0 5020 10300 134)
(sys-info 3) → 1
(sys-info -2) → 10300


Lispセルの最大数は、コマンド・ラインのスイッチ -m で変更される。 Lisp セル・メモリ 1メガ・バイト当たり 64k メモリ・セルが割り当てられる。 最大コール・スタック深さは、コマンド・ラインのスイッチ -s を使って、変更される。