のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,663,016人
昨日:no data人
今日:
最近の注目
人気の最安値情報

元スレSGI KDBを使ったカーネルデバッグスレ

kernel覧 / PC版 /
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
←前へ 1 2 3 4 5 6 7 8 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

101 = :

>>98
ユーザが生成できるプロセスMAX数が設定できないの?
MagicKeyでも殺せないの?

102 = :

>>98
ソースを見てみてデバッグしてみた。101が正しいな。
fork.cのdo_fork関数に以下のようなコードがある。
  retval = -EAGAIN;
  if (atomic_read(&p->user->processes) >= p->rlim[RLIMIT_NPROC].rlim_cur)
    goto bad_fork_free;
  atomic_inc(&p->user->__count);
  atomic_inc(&p->user->processes);
でp->userはsched.hを見るとuser_structだから、user_structの定義を見ると
これもsched.hにある。
struct user_struct {
  atomic_t __count;   /* reference count */
  atomic_t processes;  /* How many processes does this user have? */
  atomic_t files;    /* How many open files does this user have? */
  /* Hash table maintenance information */
  struct user_struct *next, **pprev;
  uid_t uid;
};
これらよりコメントを見れば分かるけどprocessesはこのユーザコンテキスト
上でいくつのプロセスが走っているかを示している。それを
p->rlim[RLIMIT_NPROC].rlim_cur と比較してそれ以上になったら
fork処理を失敗させている。rlim_curはfork_initでイニシャライズ
されていてmax_threads/2になっている。

105 = :

まあ、こんなもんだ。まあまあの題材だったね。
2.2.19にも
  retval = -EAGAIN;
  if (p->user) {
    if (atomic_read(&p->user->count) >= p->rlim[RLIMIT_NPROC].rlim_cur)
      goto bad_fork_free;
    atomic_inc(&p->user->count);
  }
ちゅうコードがあるからちゃんと動くはずだけどなあ。

106 = :

             ∩
                 | |
                 | |
        ∧_∧   | |   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
       ( ´Д`)//  <  先生!クソレスがついてます!
      /       /     \  やはりちゃんころですか!?鬱だ、sageます!
     / /|    /       \_____________
  __| | .|    |
  \   ̄ ̄ ̄ ̄ ̄ ̄ ̄\
  ||\             \
  ||\|| ̄ ̄ ̄ ̄ ̄ ̄ ̄|| ̄
  ||  || ̄ ̄ ̄ ̄ ̄ ̄ ̄||
     .||              ||

108 = :

>>105
ところで、その
1ユーザが生成できるプロセスの上限
はどこで設定できるの?

109 = :

rootユーザーの場合はulimitコマンドで設定することが可能。
一般ユーザーは設定できない。一般ユーザの最大プロセス数を変更したい場合は
2.2系では最大値はtask.hで
#define MAX_TASKS_PER_USER (NR_TASKS/2)
と定義されてるからここを適当にかえて再構築。
2.4系では>>102で書いたようにfork_initの中で物理メモリの搭載量をもとに
max_threadsが計算され、その半分に設定されている。
変更したい場合は物理メモリの搭載量をかえましょう。
どうしてもメモリをそのままでプロセス数だけ変更したい場合はfork.cのfork_initの
  init_task.rlim[RLIMIT_NPROC].rlim_cur = max_threads/2;
  init_task.rlim[RLIMIT_NPROC].rlim_max = max_threads/2;
のmax_threads/2を適当な値に変えて再構築しましょう。

110 = :

>>109
減らす方向にはユーザレベルで可能なはずだが、
現在手元にソースが無いので確認できず

111 = :

>>110
確かに。減らす方向には一般ユーザでも設定できる。

112 = :

>>オリジナルスレの1
ちょっといい?

113 = :

>>101=110か?
オリ1が一人突っ走っていたが、キミのおかげで
会話が成り立つようになって、良スレ化してきた。

115 = :

>>88
やんわりと同意。
このスレはLinuxのことやってるんだから、興味ない人や
他のスレの発言から1が嫌いな人は放っておけばいい。
恥ずかしい論理でLinux厨房ぶりを晒さないことだ。

確かに1は>>35-37みたいな恥ずかしい自作自演をする輩ではある。
だいたい>>36は前スレの190だろ。
http://cocoa.2ch.net/test/read.cgi?bbs=linux&key=989048022&st=190&to=191&nofirst=true
文体が変わってるし急に馴れ馴れしくなってるよ。キャラは一貫性を持たせろ。

>たまにリロードして窺ってました。
>5時間くらい人がこなかったので誰もいなくなったのかと思ってました。

俺は前スレの190=1のこの粘着ぶりをみて気持ち悪くなり
手を引いた。確かにおもちゃにするにはおもしろい相手だけどな。
だからあまり刺激するな。
1は反論するやつはみんな俺に見えてるみたいだが、そんなに君を
傷つけて心に深い傷を負わしてしまったかな。
ごめんな、がんばれよ。

まあ2chの掃き溜めで1もいろんな意味で英雄になったな。嬉しいぞ。

116 = :

>>115
やめろって。。。また。。

117 = :

>>115
盛り上がってるとこ悪いけど、おれは前スレの190で、このスレの36だけど
ここでも前スレでも 1じゃないよ。

118 = :

>>117
言うだけなら1でも出来るな。

119 = :

>>35-37
つうか午前4時にあの間隔のカキコはなあ。

120 = :

>>115

>>37
は俺だが、さすがにあの間隔は疑われてもしょうがないとは思うが…
でも別人よ。

121 = :

>>120
36の次が37か…。
なんか、ますます胡散臭くなってきたなあ(w

122 = :

間隔&月曜の午前4時だぜ。
そんでまた偶然36、37が出てくる。
君たちはデムパで繋がってるの?

123 = :

確かに。その限られた中で、さらに数少ない1に同意した人間がねえ。
決めつけるのは良くないが、かなり不自然であるとだけ。

124 = :

いいじゃん。このスレためになるし。

125 = :

>>117,>>120
おいおいおいおいおいおいおいおいおい
ちょっと面白いな(w

126 = :

そんじゃ55=1ってことか。
自分でネタフリして自分で答えるのはスレを盛り上げるために
使われる手段ではあるので、別に批判はしない。

127 = :

>自分でネタフリして自分で答えるのはスレを盛り上げるために
>使われる手段ではあるので、別に批判はしない。

まあ、つまらん煽りや正体探しより遙かに有益だわな

128 = :

開きなおった(藁
面白いなー

129 = :

トリッキーの1か?もしかして

130 = :

ただ、みっともないだけの自作自演はカコワルイ。
テクニカルな話題の自作自演はいいけどね。

みっともないのは>>35-37みたいなのね。

131 = :

>>127

>>35-37のどこが遥かに有益なんだ…?
見てて恥ずかしくなるんですけど…。
開き直ってるのがダメ押しだな…。

132 = :

age
もっとしゃべって

133 = :

>>131
有益な情報を書いてくれる人にエールを送るのはダメなのか?

134 = :

>>133
自作自演だからダメなんだろ馬鹿(w

135 = :

そうそう、温かいエールも自作自演だとひたすら寒い。

136 = :

そろそろ 1にきてもらいたいなぁ

137 = :

時間から見て、1は>>28を発見。カーッっとなってしまい、
感情的な書き込みのあと、フォローしてくれる人がいそうにないので、
自分にはこれだけ支持者が居るんだぞ、
俺の発言は有益なんだぞ、と見せ付ける為に、
>>35-37の自作自演を展開、感情的になっていて間を空けるのを忘れた。
と見るのが妥当かな。

いや、所詮ただの妄想だから無視してくれて結構。ほっほ。

138 = :

>>136
ここで1が登場して、弁解するに1票。
(この書き込みを見て、しばらく時間を空けてくるに300ガバス)

139 = :

そろそろカーネルの話に戻してよ

140 = :

…などと1らしき人が発言してますが、皆さんいかがでしょう?

141 = :

>>140
こんな事やってると何も書けんぞ。
Win厨、Lin厨よりもタチが悪いな。

142 = :

>>141
いや、カーネルデバッグ以外でLinuxの話ならOKでしょ(w
それに匿名掲示板における自作自演指摘の無意味さは
ここにいる全員が知っている。まあ、ネタまがいの遊び
だよ。

143 = :

>いや、カーネルデバッグ以外でLinuxの話ならOKでしょ(w

カーネルデバッグの話はいやなのか?

144 = :

>>142
1発見!!
ごまかそうとしてもだーめー

145 = :

だって1がうざいんだもん。

146 = :

>>115->>142

カーネルデバッグネタに付いてこれない連中の嫌がらせ。

147 = :

>>146
やめとけ、1。
素直に謝れ。

148 = :

>>146
Lin厨にはテクニカルな話は理解不能です。

149 = :

オリ1とは無関係です

150 = :

>>149
いや、判ってるって。
文体違うし文短いし


←前へ 1 2 3 4 5 6 7 8 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / kernel一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について