アカウント名:
パスワード:
セグメント方式がダメなのではなくて、セグメントサイズの上限が64KBしかなかったことが問題でしょう。現代のCPUでもセグメントに類する機構が存在することは珍しくありません。セグメントではなくGlobal Pointerとか呼ばれてるだけで。むしろ一切存在しないのはx64くらい。
セグメント方式がダメなのではなくて、セグメントサイズの上限が64KBしかなかったことが問題でしょう。
あれって今想像するに, コンカレントCP/M [wikipedia.org]みたいに1プロセスあたり64KBの空間(それで十分だと思っていた)を並列して効果的に動かすための機構として想定していたんじゃないかと思います. まさか単一のプログラムが64kBを超えるコードやデータを取り扱うことは無い. 一般プログラマが直接セグメントを管理することはなく, OSにまかせるものだと.
誤算だったのは, 8086用OSにセグメント管理を効率的にこなせるような高級なものが広まらなかったってことと, 画像処理みたいなメモリ空間を要求する用途が急激に広がったってことでしょうね.
> まさか単一のプログラムが64kBを超えるコードやデータを取り扱うことは無い.
単一の64KBを越えるメモリブロックを取り扱うことはない、ですね。8086でもESを用いた任意の外部メモリブロックへのアクセスが想定されています。
80x86のセグメント方式は、大型計算機などでポピュラーだったものがiAPX432経由で取り込まれたものです。(iAPX432も64KBセグメントでした)
80286については以下のページが詳しいのでご覧ください。80286が保護仮想アドレスモードから実アドレスモードへ移行できない理由もお分かりかと思います。http://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%83%86%E3%82%AF%E3%8... [wikipedia.org]
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
私はプログラマです。1040 formに私の職業としてそう書いています -- Ken Thompson
インテルの (スコア:1)
Re: (スコア:0)
セグメント方式がダメなのではなくて、セグメントサイズの上限が64KBしかなかったことが問題でしょう。
現代のCPUでもセグメントに類する機構が存在することは珍しくありません。セグメントではなくGlobal Pointerとか呼ばれてるだけで。むしろ一切存在しないのはx64くらい。
Re: (スコア:1)
あれって今想像するに, コンカレントCP/M [wikipedia.org]みたいに1プロセスあたり64KBの空間(それで十分だと思っていた)を並列して効果的に動かすための機構として想定していたんじゃないかと思います. まさか単一のプログラムが64kBを超えるコードやデータを取り扱うことは無い. 一般プログラマが直接セグメントを管理することはなく, OSにまかせるものだと.
誤算だったのは, 8086用OSにセグメント管理を効率的にこなせるような高級なものが広まらなかったってことと, 画像処理みたいなメモリ空間を要求する用途が急激に広がったってことでしょうね.
Re:インテルの (スコア:0)
> まさか単一のプログラムが64kBを超えるコードやデータを取り扱うことは無い.
単一の64KBを越えるメモリブロックを取り扱うことはない、ですね。8086でもESを用いた任意の外部メモリブロックへのアクセスが想定されています。
80x86のセグメント方式は、大型計算機などでポピュラーだったものがiAPX432経由で取り込まれたものです。(iAPX432も64KBセグメントでした)
80286については以下のページが詳しいのでご覧ください。80286が保護仮想アドレスモードから実アドレスモードへ移行できない理由もお分かりかと思います。
http://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%83%86%E3%82%AF%E3%8... [wikipedia.org]