68user's page 掲示板

Prev< No. 423〜424> Next  [最新発言に戻る] [過去ログ一覧]
No. 423 # 68user 1999/08/27 (金) 06:31
> いずれにしても、ROM化やコンパイラが同じ文字列リテラルを共用させるために、
に加えて、複数プロセスでデータセグメントを共有させるため、
例えば ls を並行して2個実行した場合、スタックとヒープは
2個用意されるが、データセグメントは1個しか用意されない、
と思ってるんですが、全然違うかも。
# アセンブラやってないんで、ここらへん いまいち感覚的に理解できない。

No. 424 # mm 1999/08/28 (土) 01:31
>に加えて、複数プロセスでデータセグメントを共有させるため、
DOSが長いもので、マルチプロセスのメモリ管理はよく分からないです(苦笑)。

>例えば ls を並行して2個実行した場合、スタックとヒープは
>2個用意されるが、データセグメントは1個しか用意されない、
とすると、文字列リテラルだけでなく、静的な変数まで共有される
訳ですよね。
素人考えでは、ホントにそれで良いの?と思っちゃいます…
例えば、コマンドラインオプションで設定されるフラグが
グローバル変数だったりすると(あり得ますよね)、前後のlsの
オプション指定が異なる場合に、先のlsのフラグまで影響を
受けちゃうおそれがないのかなぁ…?

Prev< No. 423〜424> Next  [最新発言に戻る] [過去ログ一覧]