(Translated by https://www.hiragana.jp/)
HP 3000 - Wikipedia コンテンツにスキップ

HP 3000

出典しゅってん: フリー百科ひゃっか事典じてん『ウィキペディア(Wikipedia)』

HP 3000シリーズは、ヒューレット・パッカードしゃが1973ねん困難こんなん開発かいはつてリリースしたミニコンピュータファミリである。最初さいしょ機種きしゅ性能せいのう問題もんだいから一旦いったん回収かいしゅうされた。このシリーズは最初さいしょにタイムシェアリング機能きのう搭載とうさいしたオペレーティングシステム(OS)を搭載とうさいしたミニコンピュータとなることを意図いとしていた。信頼しんらいせいたか強力きょうりょくであったため、オフィスコンピュータてき使つかわれかた主流しゅりゅうであった。初期しょき機種きしゅおおきな筐体きょうたいであったが、機種きしゅつくえしたおさまる程度ていどとなった。

製品せいひん寿命じゅみょうDECVAXよりもながかった。2001ねん11月、後継こうけいである e3000 シリーズのサポート終了しゅうりょうを5ねんとすることが発表はっぴょうされた。製品せいひん新規しんき販売はんばいは2003ねんまでで、サポート終了しゅうりょうまでの移行いこう期間きかんいまのところ 2008ねん12月31にちまでとされている(当初とうしょ、2006ねんまつとされていたが延長えんちょうされた)。

初期しょきのメモリセグメントと64K制限せいげん

[編集へんしゅう]

コードとデータは可変長かへんちょうセグメントに格納かくのうされる。コードはリードオンリーでリエントラントであり、最大さいだい 32,760 バイトまで、データは最大さいだい 65,528 バイトまでである。MPE はコードセグメントをプログラムファイルからみ、セグメントされた共有きょうゆうライブラリ (SL) ファイルを必要ひつようおうじてむ。1つのプロセスには最大さいだい 256 セグメントまでたせることができる。

コードセグメントは最大さいだい 32KB だが、ルーチンにはセグメント番号ばんごうとセグメントないのルーチン番号ばんごう指定していするため、1つのプログラムない理論りろんじょう最大さいだい 64K のルーチンが存在そんざい可能かのうであった。当時とうじの16ビットミニコンピュータではアドレス空間くうかん全部ぜんぶで 64K であることがおおかった。データセグメントとスタックセグメントは最大さいだい64Kであった。共有きょうゆうライブラリには共有きょうゆうのデータは存在そんざいせず、かくプロセス専用せんようのデータセグメントを使用しようする。

システムのプログラミングはALGOLけい言語げんご SPL でおこなわれるが、インラインアセンブラ利用りよう可能かのうであり、命令めいれいセットへの直接ちょくせつアクセスが可能かのうである。HP 3000 の標準ひょうじゅん端末たんまつ HP 2640 シリーズはキャラクタモードだけでなく、フォームからのデータ入力にゅうりょくおこなうブロックモードをサポートしていた。

Classic と PA-RISC XL

[編集へんしゅう]

HP 3000 ファミリは 16ビットの "Classic" と 32ビットの "XL"(に "IX")ファミリがあり、後者こうしゃは1984ねんPA-RISCチップの登場とうじょうとともに追加ついかされた。両者りょうしゃにはバイナリ互換ごかんせいはないが、低速ていそくながらエミュレーションで従来じゅうらいのコードを実行じっこうしたり、さいコンパイルして実行じっこうすることが可能かのうであった。初期しょきの "Classic" は独自どくじCISCプロセッサを使用しようしている。PA-RISC を搭載とうさいした HP 3000 は1988ねんごろから量産りょうさんされるようになり、1995ねんまでに完全かんぜん置換ちかんがなされたものの、ユーザーサイトでは従来じゅうらいのマシンがそのまま使つかわれつづけた。

3000 シリーズのオペレーティングシステムMPE(Multi-Programming Executive)とばれ、その MPE-XL となり、さらにPOSIX準拠じゅんきょとなってからは MPE-IX とばれた。初期しょきのバージョンには独自どくじのコマンドぎょうインタプリタがあり、階層かいそうがたファイルシステムい。プログラムをコマンドとして実行じっこうするという概念がいねんく、たとえばコンパイラは "run fortran.pub.sys" などとんで実行じっこうされる。当時とうじほかのミニコンピュータに比較ひかくして、非常ひじょう信頼しんらいせいたか安定あんてい動作どうさするのが特徴とくちょうであった。

HP 3000 シリーズの成功せいこう一因いちいんは、OSの一部いちぶとして(一部いちぶ例外れいがいはあるが)独自どくじデータベース管理かんりシステム Image(のちに TurboIMAGE に改称かいしょう)を搭載とうさいしていたてんである。これは、OSやハードウェアのちがいにかかわらずバイナリ互換ごかんせい維持いじしており、1973ねんのプログラムが2003ねんのシステムじょうでもさいコンパイルなしで動作どうさする。

市場いちばUNIXにシフトしていくなか、ヒューレット・パッカードは2001ねん11月、HP 3000 の寿命じゅみょう(サポート期限きげん)を2006ねんまつとすることを発表はっぴょうした(販売はんばいは2003ねんまで)。2006ねんはじめ、HPは制限せいげんつきでサポートを2ねん延長えんちょうすることを発表はっぴょうした。これは、独自どくじ仕様しようのミニコンピュータとしては異例いれいなが製品せいひん寿命じゅみょうである。PDP-11VAXわせたよりもなが寿命じゅみょうであるが、OpenVMSAlphaベースのシステムからIA-64ベースのシステムへとサポートされつづける予定よていである。

スタックマシン

[編集へんしゅう]

今日きょうおおくの命令めいれいセット汎用はんようレジスタモデルにもとづいている。HP 3000 のプロセッサとメモリのアーキテクチャはスタックマシンモデルにもとづいている。これはバロース B5000影響えいきょうされたとわれている。レジスタすうすくなく(たとえば HP 1000 では AX レジスタと BX レジスタの2ほんだけ)、オペランドは局所きょくしょ変数へんすうやリターンアドレスをスタックおなじスタックにかれる。したがって、たとえばつぎのようなコードがあったとする。

LOAD AX, 0X0001
LOAD BX, 0X0002
ADD AX, BX

これはつぎのコードとおなじである。

PUSH 0X0001
PUSH 0X0002
ADD

サブルーチンしの call 命令めいれい固定こてい引数ひきすうしかれない。そのため、C言語げんごコンパイラの実装じっそうむずかしかった(実装じっそうされなかったわけではない)。

16ビットのマイクロプログラム方式ほうしき機種きしゅ(Series I, II, III, 30, 33, 39, 40, 42, 44, 48, 52, 58, 64, 68, 70, 37, ...)は、16ビットのワード単位たんいのアドレスにバイトアドレス指定していくわえ、セグメント方式ほうしきスタックマシンかた命令めいれいセットアーキテクチャ (ISA) であった。やく 214 しゅ命令めいれいのほとんどは16ビットちょうである。スタック操作そうさ命令めいれいは16ビットワードに2つの操作そうさむことができ、一部いちぶ命令めいれいが32ビットである。

CISC実装じっそう変遷へんせん以下いかとおり。

  • III: スタックのトップ4ワードがレジスタ。マイクロ命令めいれいサイクルは 175ナノびょう、すなわち 5.7MHz
  • 30, 33: SOS(シリコン・オン・サファイア)。スタックのトップ2ワードがレジスタ。マイクロ命令めいれいサイクルは 90ナノびょう、すなわち 11MHz。かく命令めいれいは 3-7 サイクルかかる。
  • 40, 42, 44, 48: ショットキーTTL。スタックのトップ4ワードがレジスタ。マイクロ命令めいれいサイクルは 105ナノびょう、すなわり 9.5MHz
  • 64, 68: ECL。スタックのトップ8ワードがレジスタ。マイクロ命令めいれいサイクルは 75ナノびょう、すなわち 13MHz。8KBキャッシュ。60Kb の可能かのうコントロールストア。16ビットALU×2。
  • 37: CMOS。スタックのトップ4ワードがレジスタ。

32ビットモデルは PA-RISC を使つかっている。PA-RISC のバージョンと機種きしゅ対応たいおう以下いかとおり。

  • PA-RISC 1.0 Series 925, 930, 935, 949, 950, 955, 960, 980
  • PA-RISC 1.1 Series 917, 920, 922, 927, 937, 947, 948, 957, 958, 967, 977sx, 987, 990, 991, 992, 995
  • PA-RISC 2.0 Series 918, 928, 968, 978, 988, 996, A クラスと N クラス

参考さんこう文献ぶんけん

[編集へんしゅう]
  • Hewlett Package: HP3000 Computer Systems: General Information Manual; August 1983; 5953-7553

外部がいぶリンク

[編集へんしゅう]