人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Linux/UNIXにおいて、既に実行されているプロセスについて、ulimitによるリソース制限状態を確認する方法はありませんか?
(ulimitによるリソース制限が、OS側でどのように管理されているかがわかっていないので、ちょっとピント外れの質問かもしれません・・・)

●質問者: my_redo_log
●カテゴリ:コンピュータ インターネット
✍キーワード:Linux OS UNIX いるか プロセス
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● pyopyopyo
●35ポイント
$ cat /proc/[プロセスID]/limits

で判ります。

◎質問者からの返答

うーん、手元の環境ではlimitsがないようです。

カーネルのバージョン違いかな?

[root@proc]# uname -r

2.6.9-11.19AXsmp

[root@proc]# find /proc -name limits


2 ● pyopyopyo
●35ポイント ベストアンサー

リソースの制限状態はカーネルが内部で管理している情報なので、

カーネル側に専用のinterfaceが用意されていないと、参照することが出来ません。

で、そのために /proc/<pid>/limits というinterfaceが用意されているのですが、

これは 2.6.24 で追加された機能でした。

http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.24

上記 changelog に

 Currently, there exists no method for a process to query the resource limits of another process.

とありますので、2.6.23以前のカーネルでは他プロセスのリソース制限状態を確認する術は無さそうです。

どうしても 2.6.23以前のカーネルで、情報が取りたいという事であれば

(該当するソースは http://lxr.linux.no/linux+v2.6.24/fs/proc/base.c#L351 になります)

のどちらかの方法を取るしか無さそうです。

◎質問者からの返答

御丁寧な回答ありがとうございます!

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ