アカウント名:
パスワード:
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
UNIXはただ死んだだけでなく、本当にひどい臭いを放ち始めている -- あるソフトウェアエンジニア
20年前の議論 (スコア:3, 興味深い)
32bitっていっても何ギガもメモリ積めるわけじゃないし、スピードも80286と変わらないし80386って何なの?っていってたの思い出しました。あの時も80286が80386が必要な領域を侵しているから性能を上げないようにしているだのなんだのと。
たぶん、そのうちItaniumの後継の後継あたりが主流になるのかも。
20年前を知らない人のために…(Re:20年前の議論 (スコア:5, 興味深い)
>32bitっていっても何ギガもメモリ積めるわけじゃないし、スピードも80286と変わらないし80386って何なの?っていってたの思い出しました。
真面目に話すと、i8086~i80286のアーキテクチャというのは、以下のような問題を抱えていました。
・プログラムから扱えるアドレス空間がMAX16MBだった
・セグメントとアドレッシングの制約で64KB(だったかな?)以上の大きさの空間を使おうとするとセグメントいじらなきゃいけなかった
で、i80386以降の、今のia32アーキテクチャでは、この二つがこうなりました。
・アドレス空間が
Re: (スコア:0)
>・セグメントとアドレッシングの制約で64KB(だったかな?)以上の大きさの空間を使おうとするとセグメントいじらなきゃいけなかった
i8086は1024kb(1MB)でi80286が16MBですね→物理メモリ。
でi8086で1MB空間を64kbで細切れにしてアクセスするという、セグメント-オフセットレジスタの組み合わせがそのままi80286に適用されるので、リアルモード(i8086互換のモード)で1MB以上のメモリ空間にアクセスできてしまうという珍現象がおきたわけで、それが後にHMAなんてものに発展したりするわけです。
i80286にはプロテクトモードが搭載されているけれども、セグメントのサイズが64kbに固定されているのでセグメントが重なるようにメモリを配置すると、ほかのセグメント領域を自在にアクセスできてしまうという"欠陥"を抱えていたとか。
結局i80286のプロテクトモードってOS/2ぐらいしかまじめに使っていなかったのではないでしょうか。
Re:20年前を知らない人のために…(Re:20年前の議論 (スコア:0)
欠陥というか、OSによっては積極的に利用されていました。
典型例としては、セグメント間でメモリアドレスを完全に一致させる場合ですね。
プログラムのロードやリンク時に使います。
> 結局i80286のプロテクトモードってOS/2ぐらいしかまじめに使っていなかったのではないでしょうか。
皆さんに馴染の深いベンダーだと
インテル謹製のリアルタイムOS iRMX
マイクロソフトの純正UNIX XENIX
デジタルリサーチのCP/Mの進化版で、欧州ではそれなりにシェアのあった CDOS
など
Re: (スコア:0)
> セグメントのサイズが64kbに固定されているので
セグメントのサイズは16ビット、つまり1バイト単位で指定できます。
セグメントディスクリプタ内で指定します。
Re:20年前を知らない人のために…(Re:20年前の議論 (スコア:1)
Re: (スコア:0)
セグメントレジスタに入るものが
8086:セグメントベース
286:セレクタ
で、それが指し示すメモリの領域がセグメント