(Translated by https://www.hiragana.jp/)
Intel 80386 - Wikipedia

Intel 80386

インテルが1985ねん発表はっぴょうした32ビットマイクロプロセッサ

Intel 80386(またはi386)はインテル32ビットマイクロプロセッサ (CPU) である。1985ねん10月発表はっぴょうされ、x86アーキテクチャを32ビットに拡張かくちょうし、レジスタ強化きょうかした。インテルが現在げんざい使用しようしている名称めいしょうIntel386TMプロセッサ (Intel386TM Processor) である。互換ごかんCPUにも386の型番かたばんくものがある。

80386
i386DX 33MHz
生産せいさん時期じき 1985ねん10がつから2007ねん9がつ28にちまで
生産せいさんしゃ Intel, AMD, IBM
CPU周波数しゅうはすう 12 MHz から 40 MHz
プロセスルール 1.5μみゅーm から 1μみゅーm
命令めいれいセット x86 (IA-32)
パッケージ 132ピンPGAPQFP
100ピン PQFP・BQFP
ぜん世代せだいプロセッサ Intel 80286
次世代じせだいプロセッサ Intel 80486
トランジスタ 275000
コプロセッサ

386DX: Intel 80387

386SX: Intel 80387SX
テンプレートを表示ひょうじ

のちIA-32ばれる、インテルの32ビットCPUのベースとなる命令めいれいセットアーキテクチャは、このCPUで確定かくていした。アーキテクチャとしてのi386については、x86およびIA-32項目こうもく参照さんしょうのこと。

概要がいよう

編集へんしゅう

1985ねん発表はっぴょう当初とうしょ名称めいしょうはIntel 80386であった。80386専用せんよう数値すうち演算えんざんコプロセッサには80387がある。仕様しようじょう80287接続せつぞくできるが、そのためにはマシンが80287に対応たいおうするように設計せっけいされている必要ひつようがある。

1988ねんに80386SX(SXはSingle-word eXternal、つまり16ビット外部がいぶバスを意味いみする) が80386シリーズにくわわったさいに、従来じゅうらいの32ビット外部がいぶバスのプロセッサには区別くべつするためにDXをつけてIntel 80386DX(DXはDouble-word eXternal、つまり32ビット外部がいぶバスを意味いみする)と改名かいめいした。

また、インテルが80386からセカンドソース廃止はいししたため、Am386などの互換ごかんプロセッサが出現しゅつげんし、その対策たいさくもありi386DXとばれるようになった(数字すうじだけでは商標しょうひょうとして登録とうろく保護ほごできないため)。

ごく初期しょき製品せいひんでは32ビット演算えんざんまさしくおこなわれない、仮想かそう86モード動作どうさしないという不具合ふぐあいがあったが、当初とうしょはMS-DOSなどのソフトウェアが主流しゅりゅうであり、80286と同様どうようしゅとして高速こうそくな8086/V30[ちゅう 1]として使つかわれていたために32ビット機能きのう使つかえなくても重大じゅうだい支障ししょうはなかった。PC-9800シリーズはつの32ビット「PC-98XL2」に採用さいようされたれいでは、32ビット機能きのうがオプションあつかいになっており、「機能きのう拡張かくちょうプロセッサ」を購入こうにゅうしてCPUを交換こうかんすることで32ビット機能きのう提供ていきょうする仕様しようだが、機能きのう拡張かくちょうプロセッサは不具合ふぐあい修正しゅうせいされた80386そのものである。

80386で採用さいようされた32ビット命令めいれいセットや仮想かそう86モードはやがておおくのオペレーティングシステム (OS) で徐々じょじょ使つかわれるようになっていった。また、UnixけいOSであるBSD移植いしょくされて386BSDとなり、Linux開発かいはつも80386じょう開始かいしされた。

特徴とくちょう

編集へんしゅう
 
80386DXの内部ないぶブロック

プロテクトモードリアルモードふたつのことなる動作どうさモードをそなえる。80286ではいったんプロテクトモードにはいるとリアルモードにもどすにはリセットが必要ひつようであったのにたいし、80386ではリアルモードとプロテクトモードをすることができる。また、プロテクトモードじょう複数ふくすう8086仮想かそうてき動作どうささせる仮想かそう86モード追加ついかされた。

汎用はんようレジスタは32ビットに拡張かくちょうされた。32ビットレジスタはEAX、ESIのように従来じゅうらいの16ビットレジスタめいに「E」をつけてばれる。従来じゅうらいの16ビットレジスタに上位じょうい16ビットを拡張かくちょうしたかたち用意よういされており、下位かい16ビットは従来じゅうらいどおりの16ビット/8ビットレジスタとしてもアクセス出来できる。上位じょうい16ビットのみを独立どくりつした16ビットレジスタとして使用しようすることは出来できない。

セグメントレジスタは従来じゅうらいのCS、DS、ES、SSの4にFS、GSが追加ついかされた。プロテクトモードじょうではセグメントレジスタはたんにセグメントアドレスを格納かくのうするのではなく、メモリじょうのセグメントディスクプリタをすためのセレクタ[ちゅう 2]となっており、レジスタサイズは16ビットのままである。オフセットアドレスは従来じゅうらいおなじく「ベース」、「インデックス」、「符号ふごう定数ていすう」の3項目こうもく任意にんいわせで記述きじゅつするが、32bitの汎用はんようレジスタ[ちゅう 3]もちいて記述きじゅつする場合ばあいには必要ひつようおうじてインデックスがわ*1*2*4*8のいずれかのざん(スケールファクタ)も記述きじゅつできるようになった。

既存きそん命令めいれいが32ビット演算えんざん対応たいおうしたほか、おおくのしん命令めいれい追加ついかされた。レジスタの直交ちょっこうせいし、従来じゅうらい「AX は演算えんざんよう」「SI、DIはメモリ操作そうさよう」など用途ようとべつ対応たいおう命令めいれいこまかく分化ぶんかしていたEAX、EBX、ECX、EDX、EBP、ESP、ESI、EDI合計ごうけい8の「汎用はんようレジスタ」がほぼ均等きんとうあつかえるようになり、コンパイラ言語げんごへの対応たいおう容易よういになった。

レジスタおよ命令めいれい拡張かくちょうはCPUのモードとは独立どくりつしたもので、プロテクトモード・リアルモードのべつなく使用しよう可能かのうである。したがって、リアルモードでも32ビットプロセッサとして動作どうさし32ビットはばのレジスタやデータをあつかえるが、64KBをえるアクセスを実行じっこうすると一般いっぱん保護ほご例外れいがい発生はっせいする。[ちゅう 4]

フラグレジスタも32ビットに拡張かくちょうするかたちあらたなフラグがもうけられた。だい16ビットは RF (Resume flag) とばれ、デバッグフォールトの発生はっせい制御せいぎょする。だい17ビットは VM (Virtual 8086 mode)で、このビットがつことにより仮想かそう86モードに移行いこうする。

従来じゅうらいのMSW (Machine status word)レジスタも拡張かくちょうされ、CR0 - CR3というコントロールレジスタ4もうけられた。それぞれ32ビットで、CR0の下位かい16ビットがMSWそのものである。386で追加ついかされたフラグはCR0のだい4ビットのET (Extension type)フラグと末尾まつび31ビットのPG (Paging enable)である。前者ぜんしゃは80387が存在そんざいするとセットされ、後者こうしゃをセットするとページング有効ゆうこうになる。CR1は予約よやくされており使用しようできない。CR2とCR3はページングに使つかわれる[ちゅう 5]。CR2はページング有効ゆうこうにページフォールトが発生はっせいしたときにそのアドレスが格納かくのうされる。CR3の上位じょうい20ビットはページングで使用しようするページディレクトリのアドレス上位じょうい20ビットすなわちベースアドレスを記録きろくする。

また、ハードウエアによるデバッグ支援しえん機能きのう追加ついかされ、DR0からDR7のデバッグレジスタをそなえる[ちゅう 6]

さらにTLB(トランスレーション・ルックアサイド・バッファ)をテストするテストレジスタTR6-TR7がもうけられた[ちゅう 7]

32ビットあわせて論理ろんり物理ぶつりアドレス空間くうかんも4GB(32ビット)に拡張かくちょうされ、セグメントサイズも最大さいだい4GBに拡張かくちょうされた。したがって、セグメント機構きこういプロセッサ同様どうようのフラットメモリモデル(リニアメモリモデル)でぜんメモリ空間くうかん使用しよう可能かのうである。また可変長かへんちょうのセグメントにくわえて固定こていちょうページ単位たんいによるメモリ管理かんり追加ついかされ、近代きんだいてきなOSの実装じっそう容易よういになった。

アーキテクチャ

編集へんしゅう

x86アーキテクチャCPUとしては、複数ふくすう並列へいれつステージ(Intel386 では6 ステージ)を最初さいしょのインテル・アーキテクチャ・プロセッサとなった(はじめての「パイプライン」ではないことに注意ちゅうい[1]。80286は80386とおなじ4だんパイプライン構成こうせい[ちゅう 8])。80386のパイプラインは4だん構成こうせいされている。命令めいれい実行じっこうすべマイクロコード実現じつげんされており、複数ふくすうサイクルの時間じかんようする。また、複雑ふくざつ命令めいれい場合ばあいはデコードで所要しょようサイクルが増加ぞうかした。

80386の判別はんべつ

編集へんしゅう

80386ではCPUID命令めいれい同様どうようのプロセッサ・シグニチャという概念がいねん導入どうにゅうされたものの、まだCPUID命令めいれいそのものはく、インテルはフラグレジスタ使つかったCPU判別はんべつ方法ほうほう紹介しょうかいしている[2]

80386と80486以降いこう区別くべつする方法ほうほうとしては、80486で追加ついかされたACビットの存在そんざい利用りようできる。PUSHFDPOPFDきできる32ビットぶんのフラグのうちだい18ビットが該当がいとうし、これを変更へんこうできれば80486以上いじょう変更へんこうできなければ80386けいのCPUであると判断はんだんできる。ただし32ビットぶんのフラグレジスタへのアクセス命令めいれいは16ビットCPUには存在そんざいしないので、これに先立さきだち80286以前いぜんか80386以降いこうかをあらかじめ判別はんべつしておく必要ひつようがある(詳細しょうさいIntel 80286参照さんしょう)。

またリセット直後ちょくごのEDXレジスタには、のCPUIDのEAX=1に相当そうとうするCPUの識別しきべつ情報じょうほう(プロセッサ・シグネチャ)が格納かくのうされるようになったため、これが利用りようできる状況じょうきょう[ちゅう 9]ならばそれを使つかうこともできる(CPUID参照さんしょう)。ただし80386のプロセッサ・シグニチャは80486以降いこうやCPUID命令めいれいとは定義ていぎ少々しょうしょうちがいがあり、80386ではプロセッサタイプが4ビットぶん使つかわれている。ファミリは4ビットでおなじだが、モデル番号ばんごう相当そうとうする4ビットはメジャー・ステッピングとばれ、ステッピングIDに相当そうとうする4ビットはマイナー・ステッピングとばれる。なお上位じょうい16ビットはすべてやくビットとなっており、拡張かくちょうファミリと拡張かくちょうモデルは利用りようできない。

追加ついか命令めいれい一覧いちらん

編集へんしゅう

システム命令めいれい

編集へんしゅう

あらたに追加ついかされたコントロールレジスタ (CR0-3)・テストレジスタ (TR6-7)・デバッグレジスタ (DR0-7) のシステムレジスタはニーモニックじょうMOV命令めいれいでデータ交換こうかんする書式しょしきではあるが、当然とうぜんながら内部ないぶてきには新規しんきのシステム命令めいれいである。

既存きそん命令めいれいの32ビットばん相当そうとうする一般いっぱん命令めいれい

編集へんしゅう

既存きそん命令めいれい同様どうよう機能きのうで、32ビットのデータや32ビットレジスタをあつかうものをげる。以下いかのほか、実質じっしつてき追加ついか命令めいれいとして条件じょうけんジャンプ命令めいれい一新いっしんされており、16ビットや32ビットのアドレス属性ぞくせいあつかえるコードがあらたに用意よういされた。

CDQ (Convert doubleword to qwadword)
CMPSD (Compare string double word)
CWDE (Convert word to doubleword extended)
INSD (Input string double word)
IRETD (Interrupt return using EIP)
JECXZ (Jump if ECX is zero)
LODSD (Load string double word)
MOVSD (Move string double word)
OUTSD (Output string double word)
POPAD (Pop all general doubleword registers)
POPFD (Pop extended flags off stack)
PUSHAD (Push all general doubleword registers)
PUSHFD (Push extended flags onto stack)
SCASD (Scan string double word)
STOSD (Store string double word)

その一般いっぱん命令めいれい

編集へんしゅう
  • ビットをテストする命令めいれいぐんが6追加ついかされた。
  • アドレス(セグメント・オフセット)をロードする命令めいれいには、あらたにSS・FS・GSのセグメントレジスタに対応たいおうしたものが用意よういされた。
  • データのビットちょう拡張かくちょうする命令めいれいおよび、シフト命令めいれいについて、結果けっかべつのレジスタに保存ほぞんできる命令めいれいあらたに追加ついかされた。
  • 条件じょうけんSET命令めいれい各種かくしゅ条件じょうけんジャンプ命令めいれい冒頭ぼうとうの"J"の部分ぶぶんを"SET"にそれぞれえたニーモニック表記ひょうき命令めいれいぐんで、条件じょうけん合致がっちしたさいにはジャンプするわりに、判定はんてい結果けっか指定していされたレジスタやメモリに保存ほぞんするだけの動作どうさとなる。
BSF (Bit scan forward)
BSR (Bit scan reverse)
BT (Bit test)
BTC (Bit test and complement)
BTR (Bit test and reset)
BTS (Bit test and set)
LFS (Load pointer using FS)
LGS (Load pointer using GS)
LSS (Load pointer using SS)
MOVSX (Move with sign extend)
MOVZX (Move with zero extend)
SHLD (Double precision shift left)
SHRD (Double precision shift right)
条件じょうけんSET (Byte set on condition)

非公開ひこうかい命令めいれい

編集へんしゅう
  • ICEBP
ICE接続せつぞくされている状態じょうたいでこの命令めいれい実行じっこうすると、ICEがわのプログラムに制御せいぎょうつる。ICEが接続せつぞくされていない状態じょうたいではシングルステップ割込わりこみINT 1を実行じっこうする[4]。のちにINT1(オペコードはF1)として公開こうかいされた。
  • UMOV
ICEがわのメモリとデバッグターゲットがわのメモリあいだ転送てんそう命令めいれいである[4]
ICEがわでこの命令めいれい実行じっこうするとICEBP実行じっこう時点じてんのレジスタの状態じょうたいをすべてもどしてデバッグターゲットがわでのプログラムの実行じっこうもどる。また、ICEとは関係かんけいないがLOADALLを使用しようするとリアルモードのままで、プロテクトメモリをふくむ4Gバイトのメモリにアクセス可能かのうとなる。ただし、80386以降いこうではUnreal mode英語えいごばん使用しようすればLOADALLを使用しようしなくともリアルモードのままで4Gバイトのメモリにアクセス可能かのうである。

そのの80386シリーズ

編集へんしゅう
 
i386SX(外部がいぶから機能きのう停止ていしできるC STEP)

開発かいはつコードめいP9。命令めいれいセットは80386と互換ごかんせいがあるが、外部がいぶアドレスはば24ビット (16MB)、外部がいぶデータバス16ビットはば縮小しゅくしょうし、システム(システム基板きばん、メモリをふくむ)のトータルてきなコストダウンと、既存きそんの80286搭載とうさいパーソナルコンピュータ (PC) をほとんど仕様しよう変更へんこうせずにCPUかわそう可能かのうとして、当時とうじ急速きゅうそくにシェアを拡大かくだいしつつあったAMDなどのセカンドソースはん80286、とくにIntelが提供ていきょうしていなかった16MHzばんAm80286などのこうクロック周波数しゅうはすう動作どうさ対応たいおうモデルを市場いちばから駆逐くちくすることを念頭ねんとういて設計せっけいされたCPUである。 とくにメモリのバスはばせまいことからプロテクトモードの利用りよう性能せいのう低下ていかはげしかったが[5]、それでもこのCPUを採用さいようすることで、PCメーカーは従来じゅうらい80286マシンをわずかな手直てなおしをほどこすだけで「32ビットマシン」として販売はんばいすることが可能かのうとなり、またユーザーがわにもMicrosoft Windows 3.1日本語にほんごばん)の動作どうさ可能かのうになる、あるいは後述こうじゅつするようにDOS環境かんきょうでも1MB以上いじょうのメモリ空間くうかんにマッピングされるプロテクトモード対応たいおう増設ぞうせつメモリ(XMSメモリ)を仮想かそう86モードのしたEMSメモリとしててて使用しよう可能かのうとなるなど、80286使用しよう比較ひかくしてメモリ利用りよう自由じゆうがるというメリットがあったため、一時いちじひろ普及ふきゅうした。

 
i386SL(PQFPパッケージ)

80386SXをベースに、システムマネジメントモード追加ついかし、サスペンドやレジューム機能きのうなどに対応たいおうさせたCPU。現在げんざいのモバイルようCPUの先駆さきがけといえる。また、日本電気にほんでんきインテル発注はっちゅうして製造せいぞうされた、PC-9800シリーズアーキテクチャ専用せんようのCPU、80386SL (98) もある。80386SL (98) にはi386SLロゴのしたにPC-98ロゴもはいっており、PC9800 NECとこくされている。通常つうじょうばんにはPC9800 NECのわりにISAとこくされている。


80376英語えいごばんは、くみこみ機器ききようマイクロコントローラである。80386SXにもとづいているものの、リアルモード実装じっそうしておらず、ブートからプロテクトモード動作どうさする。[6]

80386EX英語えいごばんは、フルスタティック設計せっけいの80386SXコアとしたくみこみ機器ききようマイクロコントローラ。クロック、システムマネージメント、タイマーカウンター、ウォッチドッグタイマー同期どうき/非同期ひどうきシリアル入出力にゅうしゅつりょく、パラレル入出力にゅうしゅつりょくDMAコントローラ、DRAMリフレッシュ、JTAG検査けんさロジックなどの周辺しゅうへん回路かいろ混載こんさいし、フットプリントと消費しょうひ電力でんりょくとコストの低減ていげんはかっている。[7]

80386ピン互換ごかんの486DX相当そうとうプロセッサだが、プロセッサ・シグネチャは386けいしめすx3xx (0340) をかえ[3]。FPU内蔵ないぞうのため、数値すうち演算えんざんコプロセッサのソケットにはダミーをして使つか[8]

Intelせい80386には存在そんざいしない独自どくじのCPUキャッシュを搭載とうさいした。また、RDMSRWRMSR命令めいれい実装じっそうされていた[9]

386SL (386SX) ベースのIBM改良かいりょうばん内部ないぶ32ビット、外部がいぶデータバス16ビットのまま、内蔵ないぞうキャッシュ8Kを搭載とうさいIBM PS/2 などに搭載とうさいインテルは80386からセカンドソース廃止はいししたが、IBMはインテルとの提携ていけいにより、80486までは製造せいぞうライセンスをっていた。名称めいしょうの「C」はCacheのりゃくともわれる。

IBM 386SLCの改良かいりょうばん内蔵ないぞうキャッシュ16Kを搭載とうさい内部ないぶ32ビット、外部がいぶデータバス16ビットのまま、内蔵ないぞうキャッシュ16Kにより486SXとどうレベルの性能せいのう実現じつげんThinkPadなどに搭載とうさい名称めいしょうこそ486SXに類似るいじするものの、486SXのIBM改良かいりょうばんではなく、コアは386SL (386SX) ベースである。

IBM 486SLCのダブルクロックばん内部ないぶ32ビット、外部がいぶデータバス16ビット、ダブルクロックのまま、内蔵ないぞうキャッシュ16Kを搭載とうさいPS/VThinkPadなどに搭載とうさい比較的ひかくてき後年こうねんまでCPUアクセラレータにも使つかわれた。サードパーティではSusTeenのWinMasterシリーズの一部いちぶ下位かい機種きしゅ搭載とうさいされたことがある[10]

IBM486SLCシリーズの32ビットばん相当そうとうする製品せいひんぐん通称つうしょう。いくつかの種類しゅるいがあり、最大さいだいで3ばいそくのものも登場とうじょうした。製品せいひんによって386DXベースとも486SLベースともわれる[11]

影響えいきょう

編集へんしゅう

32ビットCPUとして登場とうじょうしたものの、当初とうしょのPC市場いちばにはその機能きのう活用かつようできるOSは存在そんざいしておらず、たん高速こうそくx86CPUとして、おもMS-DOS環境かんきょう使つかわれる場合ばあいおおかった。

その、80386のアーキテクチャを前提ぜんていとしてあらたに開発かいはつされた32ビットOSとして、OS/2 2.0やWindows NT市場いちば登場とうじょうするが、そのころにはすでに80486が登場とうじょうしており、80386は下位かい機種きしゅけで外部がいぶ16ビットバスの386SXが主流しゅりゅうとなりつつあった。外部がいぶ16ビットのシステムで32ビットOSをうごかすには力不足ちからぶそく明白めいはくであり、結果けっかてきにより高速こうそくIntel 486Pentiumプロセッサがそのぐこととなった。

MS-DOS環境かんきょうにおける利点りてんは、メモリマネージャとよばれるソフト(EMM386.EXEひとし)によって仮想かそう86モードへと移行いこうし、高速こうそく広帯域こうたいいきのプロテクトメモリを転用てんようしてEMSメモリをハードウェアEMSと同等どうとう、またはそれ以上いじょう性能せいのう実現じつげんできたことである。しかしこれも本来ほんらいの80386の機能きのう・スペックからすると中途半端ちゅうとはんぱ使つかかたであり、80386本来ほんらい機能きのうかしるには程遠ほどとおいものであった。

また仮想かそう86モードの使用しようはI/Oアクセスなどのさいにトラップを発生はっせいさせ、その処理しょり復帰ふっきすうじゅうサイクル程度ていど時間じかんようするため、25MHzや33MHzの80386であっても、処理しょりによっては12MHzの80286と大差たいさない状況じょうきょうや、場合ばあいによってはむしろおとるといった状況じょうきょうまねいてしまうこともあった。ただし、通常つうじょう演算えんざん処理しょりやメモリ操作そうさかんしては、CPUおよびメモリの駆動くどうクロックの実効じっこう性能せいのう反映はんえいされるため、これは都合つごうわる処理しょりをピンポイントてきかえしたさいはなしにすぎない。

Microsoft Windowsなど

編集へんしゅう

80386よう改良かいりょうされたOSとして以下いか登場とうじょうした。

  • Microsoft Windows (Windows)
    • Windows386 2.1 (リアルモードよう16ビットアプリケーション前提ぜんていとした16ビットOSだが、OS自体じたいは80386のプロテクトモードを活用かつようするようになった)
    • Windows 3.0 (80286相当そうとうのプロテクトモードに対応たいおうした16ビットアプリケーションを前提ぜんていとした16ビットOSであるが、OS自体じたいはエンハンスドモード動作どうさに32ビットの仮想かそう86モードを活用かつようしている)
    • Windows NT (OS自体じたいを32ビット
  • OS/2
  • NetWare
    • NetWare386 (MS-DOSから起動きどうし、80386のプロテクトモードを使用しようできる)
  • TownsOS
    • 富士通ふじつうFM TOWNSよう(MS-DOSにDOSエクステンダをわせたもの。80386のプロテクトモードを使用しよう。4GBリニアな論理ろんりアドレス空間くうかんかしたマルチメディアデータのあつかいを可能かのうにした)

80386搭載とうさいPCは「高額こうがく」とはっても、当時とうじ隆盛りゅうせいしていたRISCワークステーションひとしよりは大幅おおはば安価あんかであったため、よりだい規模きぼなシステムで利用りようされていたUNIXなどの32ビットOS環境かんきょうをこれら安価あんかなパーソナルコンピュータに移植いしょくするこころみが、80386の登場とうじょうによってはじめられた。1988ねんには当時とうじすでにSPARCプロセッサを搭載とうさいするSUN-4を製造せいぞう販売はんばいしていたサン・マイクロシステムズがSUN386iとしょうする、SUN OS 4.0の386対応たいおうばん搭載とうさいするワークステーションを発表はっぴょうし、てい価格かかくであるだけでなく、当時とうじのSPARC搭載とうさいでは困難こんなんであった、MS-DOS環境かんきょうとSUN OS環境かんきょう共存きょうぞん制限せいげんきながら可能かのうとするなど、当時とうじのRISCプロセッサ搭載とうさいにはないあたらしい機能きのうについての提案ていあんおこなった。その386BSDFreeBSDおよびNetBSD)やLinuxなど、今日きょう代表だいひょうてきPC-UNIXけい環境かんきょう移植いしょくやビルドがはじめられたが、その理由りゆう動機どうきは、80386の登場とうじょうによってパーソナルコンピュータがこれらの近代きんだいてきな32ビットオペレーティングシステム環境かんきょう実現じつげんするだけの機能きのう性能せいのうちえるにいたったからにならない。2000年代ねんだいすえにはWindowsがOS市場いちばほとんどをめたことにくわえ、PC-UNIX伝統でんとうてきUNIX同等どうとう機能きのう信頼しんらいせいそなえたことで、80386からはじまったIA-32利用りようしたほう圧倒的あっとうてきにコストパフォーマンスがたかくなったため、ハイエンド用途ようとやレガシーソフトウェアの利用りようのぞいてIA-32SPARC駆逐くちくするにまでいたっている。

その状況じょうきょう

編集へんしゅう

80386で実装じっそうされた32ビット命令めいれい(のちのIA-32命令めいれい)は、登場とうじょうから30ねん以上いじょう経過けいかしたが、上位じょうい互換ごかんたもったCPUがインテルから提供ていきょうされつづけているほかAMDVIA発売はつばいしているx86けいのさまざまな互換ごかんCPUにおいても継承けいしょうされつづけており、おおくのパーソナルコンピュータとおおくのサーバで採用さいようされつづけている。80386の命令めいれいアーキテクチャは、ARMアーキテクチャならび、これまでにもっと普及ふきゅうした命令めいれいアーキテクチャとえる。80386以降いこうIA-32プロセッサでは基本きほん命令めいれい追加ついかはあまりなく、MMXSSE、SSE2、SSE3などのSIMD命令めいれい追加ついかおもであった。

脚注きゃくちゅう

編集へんしゅう

注釈ちゅうしゃく

編集へんしゅう
  1. ^ ただし、どういちクロック周波数しゅうはすう・どちらもリアルモードでも386より286のほう高速こうそくである。386をプロテクトモードにすると(MS-DOSで使つかっていても拡張かくちょうメモリマネージャを使つかうためにはその必要ひつようがある)さらにそのひらく。そのためかインテルは16MHz以上いじょうの286をさなかった。ぎゃくに286のセカンドソーサや286互換ごかんCPUメーカーは、16MHz以上いじょうてはメーカーによっては25MHzという高速こうそくの286を製造せいぞう販売はんばいした。
  2. ^ セグメント方式ほうしき#x86参照さんしょう
  3. ^ ただしスタックポインタ(ESP)はインデックスとして使用しようできない。
  4. ^ 64KBをえるアクセスにはあらかじめセグメントリミットの変更へんこう必要ひつようリアルモード参照さんしょう
  5. ^ 80486以降いこうはCR3の下位かいビットにあらたなフラグも設定せっていされた。
  6. ^ うち2ほん予約よやくされているのみで、機能きのうい。
  7. ^ なお80486ではさらにTR3-TR5が追加ついかされている。
  8. ^ 詳細しょうさいen:Intel_80286参照さんしょう
  9. ^ たとえば80286ようつくられたソフトウェアがプロテクトモードからリアルモードにもどるときの外部がいぶハードウェア機構きこう利用りようすることで、CPUをリセットしつつも、OSは処理しょり続行ぞっこうすることができる(ただし復帰ふっき処理しょりさいにDXレジスタが保存ほぞんされるかかは機種きしゅによってことなる)。また、PC-98ではメモリアドレス0000:0486に保存ほぞんされる[3]

出典しゅってん

編集へんしゅう
  1. ^ http://download.intel.com/design/intarch/manuals/24319001.PDF
  2. ^ インテル(R) プロセッサの識別しきべつとCPUID命令めいれい” (PDF) (英語えいご日本語にほんご). インテル. 2017ねん12月23にち閲覧えつらん
  3. ^ a b BIOSが使用しようするシステム共通きょうつういき” (プレーンテキスト). ウェブテクノロジ. 2018ねん1がつ8にち閲覧えつらん
  4. ^ a b In-Circuit Emulation:How the Microprocessor Evolved Over Time
  5. ^ ピクニック企画きかく, つつみ大介だいすけ, ed. (1 March 1990). "i 80386SX". 電脳でんのう辞典じてん 1990's パソコン用語ようごのABC』. ピクニック企画きかく. p. 309. ISBN 4-938659-00-X によれば、データ処理しょり能力のうりょくは20%ほどの低下ていかきたす。
  6. ^ 376TM HIGH PERFORMANCE 32-BIT EMBEDDED PROCESSOR” (PDF) (英語えいご) (2002ねん9がつ12にち). 2008ねん4がつ6にち閲覧えつらん
  7. ^ Intel386™ Processors” (英語えいご) (2002ねん9がつ12にち). 2008ねん4がつ6にち閲覧えつらん
  8. ^ Intel 8087からRapidCADまで コプロセッサーの歴史れきし”. ASCII.jp (2013ねん7がつ22にち). 2020ねん3がつ29にち閲覧えつらん
  9. ^ Frank van Gilluwe, "The Undocumented PC, second edition", 1997, ISBN 0-201-47950-8, page 55
  10. ^ 「Susteenさい新鋭しんえい機種きしゅ登場とうじょう」、月刊げっかんソフマップワールド1993ねん8がつごう、p33。
  11. ^ 大原おおはら雄介ゆうすけ (2009ねん3がつ16にち). “【マイコンデータしつ】そののx86けいプロセサの系譜けいふ”. 日経にっけいXTECH. 2020ねん12月27にち閲覧えつらん

関連かんれん項目こうもく

編集へんしゅう