コンピュータの歴史 近代 和田俊和
計算機アーキテクチャ
命令の実行過程
コンピュータを「作る」から「使う」へ コンピュータはできてしまった. では,他にどんな課題が残っていたのか? 速いコンピュータ 小さいコンピュータ メモリの大きいコンピュータ 安いコンピュータ 便利なコンピュータ 壊れにくいコンピュータ 並列コンピュータ
日本のコンピュータと互換性の指向 MUSASINO-1(電電公社1957年) TAC(東京大学・東芝1959年) 大阪大学のコンピュータ(未完成) これらは,EDSACと全く同じ命令体系を採用.プログラムライブラリをそのまま利用することが目的. PC-1(東大1958年) 当時大学院生の後藤英一が発明したパラメトロンを使用.EDSAC-1の命令体系を設計し直す.PC-2の後,富士通から商品化される.真空管やトランジスタよりも動作が安定していたため.
パラメトロンとは 1954年に東京大学高橋秀俊研究室の大学院生であった後藤英一によって発明された論理素子. LC共振回路を,共振周波数のほぼ2倍の周波数2fで変動させると,周波数fの振動を励起することができる.後藤はこの発振に0かπの2つの位相があり,2進数をその 位相で表示できることに 気づき,最初の研究報告 を1954年に発表している.
構成要素の変遷 メモリ:水銀遅延管,磁気ドラム,ウイリアムズ・キルバーン管,Selectron ⇒コアメモリ(1950前半から)⇒SRAM,DRAM Switching素子:リレー ⇒真空管,パラメトロン(1950後半まで) ⇒トランジスタ(1957)⇒IC⇒LSI⇒VLSI
試験機から商用機へ 意外なことに商用機は古くからある. 1948年に発売されたIBM 604 Electronic Calculating Punch (ENIACが1946年完成) 1400本の真空管,50KHzのクロックで動作. パッチボードの配線で40ステップ(後に60ステップに増加)のプログラムを作ることができた。 コメント:これは計算機というよりはパンチカードシステム.国勢調査等の集計作業等に用いられた.その後の,計算機の民需は主に集計作業に関連するものが多かった.
パンチカードシステム(PCS)とは?
IBMのPCS 1935年末のシェア: 作表・会計機85.7%、分類機86.1%、窄孔機81.3% 窄孔カード年間販売高約30億枚
IBMの戦略 IBM-701(1952) ,650,702(1953)真空管式の発表 パンチカードの計数作業をするタビュレーティング(表集計)マシンのユーザにコンピュータを浸透させていった. ソフトウエア(FORTRAN等の高級言語のコンパイラをつけた) 浮動小数点演算も行えた. 何よりもの強みは,パンチカードリーダである. 但し,この段階でOSはなかった. IBM650は1954年の初出荷から生産終了の1962年までに2000システム以上が製造された。
IBM650の競合相手UNIVAC-1103 海軍は Engineering Research Associates 社に高性能な暗号解読用マシンの設計を依頼した. プロジェクト名は Task 29、コンピュータ名は Atlas II 1952年、Atlas IIは特別な命令をいくつか削除するという条件で商用化が許可された.商用バージョンが UNIVAC 1103 となった. 機密保持のため、レミントン・ランド社はこのマシンの来歴を知らずにいたという 高性能&高価格 → 売り上げたった数十台
コメント IBMはシステム650によって,コンピュータ利用者の裾野を広げ,マーケットを開拓していった. 1955年,GEとノースアメリカン航空社がFORTRANモニタを作成.これは,FORTRANで書かれたプログラムを機械語のプログラムにコンパイルし,実行するまでを連続的に処理するプログラムであり,現在のオペレーティング・システム(OS)の最初と見なされている. この時期以降,ソフトウエアの重要性が強く意識され始める.
高級言語
プログラムの作成から実行まで program example(output); var i, sum : integer; begin コンパイラ プログラムテキスト 実行プログラム アセンブラ リンカ program example(output); var i, sum : integer; begin sum := 0; for i :=1 to 100 do sum := sum +i; writeln(sum) end. 457f 464c 0101 0001 0000 0000 0000 0000 0002 0003 0001 0000 8080 0804 0034 0000 b43c 0000 0000 0000 0034 0020 0002 0028 0005 0004 0001 0000 0000 0000 8000 0804 8000 0804 ab00 0000 ab00 0000 0005 0000 1000 0000 0001 0000 b000 0000 3000 0805 3000 0805 0420 0000 0e00 0004 0006 0000 1000 0000 0000 0000 0000 0000 0000 0000 8959 89e3 40c8 e0c1 0102 83e0 f8e4 f8a3 053d 8908 3c0d 0534 8908 481d 0534 9b08 e3db d99b 002d 0530 3108 e8ed a9d0 0000 ... 0000 0000 000b 0000 0001 0000 0006 0000 8080 0804 0080 0000 aa80 0000 0000 0000 0000 0000 0010 0000 0000 0000 0011 0000 0001 0000 0003 0000 3000 0805 b000 0000 0420 0000 0000 0000 0000 0000 0004 0000 0000 0000 0017 0000 0008 0000 0003 0000 3420 0805 b420 0000 09e0 0004 0000 0000 0000 0000 0010 0000 0000 0000 0001 0000 0003 0000 0000 0000 0000 0000 b420 0000 001c 0000 0000 0000 0000 0000 0001 0000 0000 0000 main: .globl PASCALMAIN .type PASCALMAIN,@function PASCALMAIN: .globl program_init .type program_init,@function program_init: pushl %ebp movl %esp,%ebp subl $4,%esp call FPC_INITIALIZEUNITS movw $0,_SUM movw $1,_I .balign 4,144 .L7: movswl _SUM,%eax movswl _I,%edx addl %eax,%edx movw %dx,_SUM cmpw $100,_I jge .L6 incw _I jmp .L7
オペレーティングシステム 通常のOSはこの部分の機能を提供する。 OSが無ければ、コンピュータは非常に扱いづらいものになる。
トランジスタの発明 1947年 点接触型トランジスタ:ベル研,バーデーン,ブラッデン 1948年 接合型トランジスタ:ベル研,ショックレー 1947年 点接触型トランジスタ:ベル研,バーデーン,ブラッデン 1948年 接合型トランジスタ:ベル研,ショックレー 1952年 テキサス・インスツルメンツ (TI) 社が半導体ビジネスを開始 1952年 モトローラ社 がSolid State Electronics研究所を設立 1954年 トランジスタラジオの開発(テキサス・インスツルメンツ社) 1955年 IBM608トランジスタを用いた計算機 トランジスタラジオの発売(東京通信工業(現ソニー)) 1956年 Solid State Silicon スイッチの開発(ゼネラル・エレクトリック社) 1957年 トランジスタ式電子計算機の開発(電気試験所) ETL MARCⅣ
トランジスタの発明 1947年に米国AT&Tベル研究所のバーデンとブラッデンが点接触型トランジスタで音声信号を増幅する実験に成功した. 1948年に同じくベル研究所のショックレーが接合型トランジスタを発明した. 1948年にトランジスタの発明を公表し、1956年にはこの発明により3名がノーベル物理学賞を受賞した.
トランジスタとスイッチング機能 点接触型 接合型 電界効果 トランジスタ (FET) 電流が流れると 導通する + + ー + + ー + トランジスタ (FET) 電流が流れると 導通する + + ー + + ー + + + ー + + ー + + ー + E B C 導通する 電圧が かかると
論理ゲート V V V X X X A A A B B
論理ゲートの種類 NOT AND OR NAND NOR NANDの別表現 NAND,もしくはNORがあれば、他の 素子はすべて実現できる。
スイッチング素子によるメモリ RSフリップフロップ(反転入力) 1 ? 禁止状態 R=1,S=1のときの状態は、その 直前の によって決まる。
第2世代(1958~)は,半導体型コンピュータの世代, プログラミング言語そしてOSの開発も進む 1957あたりまでが,第1世代と呼ばれている 第2世代(1958~)は,半導体型コンピュータの世代, プログラミング言語そしてOSの開発も進む
IC(Integrated Circuit)の発明(1958) 1958年にテキサス・インスツルメンツ社に入社したキルビーは,抵抗,トランジスタ,コンデンサなどの部品を1つずつハンダで取り付けて回路を構成するのではなく,それらの部品が果たす機能を全部まとめて一緒に一つの電気回路として製造する研究を行っていた. キルビーの発明とほぼ同時期に、フェアチャイルド社のロバート・ノイスも「プレーナー特許」と呼ばれるICに関わる発明をした.ただし特許出願は、ノイスの方が半年ほど遅れた.キルビーとノイスのどちらがICの基本特許であるかをめぐって裁判が何年にもわたっておこなわれたが,現在では両者をあわせてICの基本特許とされている.
IBM 7070,7090(1958) トランジスタの全面採用. OSは,プログラムの読み込みからコンパイル,実行,結果の印字までの一連の操作が自動化できるIBSYS.但し,言語はFORTRAN,COBOL,SORT/MERGE, MAPアセンブラなど. 周辺機器はDMA方式の先駆けとなるデータチャネル方式を採用.磁気テープ,カードリーダ,プリンタ,等を接続可能
国産計算機(ETL MARK III-V) MARK IIIは点接触型トランジスタであったため故障が多かった. MARK IVは故障を抑えるために接合型トランジスタが用いられた. MARK IVをベースに国産計算機が多数作られた. 日本電気 NEAC-2201 (1958年), NEAC-2202 (1959年), NEAC- 2203 (1959年) 日立製作所 HITAC 301 (1959年), HITAC 501 (1960年) 北辰電機製作所 HOC 100 (1958年), HOC 200 (1960年) 松下通信工業 MADIC-1 (1959年) MARK V:電気試験所での業務用計算機→日立に製作を依頼 日立製HITAC102のプロトタイプ やまと:ETL内での機械翻訳の専用機 文例:“I like music.” → “ワレガ オンガクヲ コノム”
国産計算機(ETL MARK IVから) 日本のコンピュータは,計算機本体のトランジスタ化という点では先んじていた. しかし,各社から発表された商用コンピュータは,操作性を軽視した試作機的なものという評判であったらしい. 主には,ソフトウエアの不備,周辺機器が少ないなどの問題点があり,市場での競争力はあまりなかった. 私見 技術の問題というよりは,コンピュータ市場の開拓を他社に任せていたことの問題.
ソフトウエアの開発(1960前後) プログラミング言語 OS ALGOL 研究用 ハードウェアの特性とは独立に抽象的なアルゴリズムを記述する事を目指す.構造化プログラミング,再帰呼び出し,引数の参照渡し,等. Pascal等,多くの派生言語が生まれた. COBOL 事務計算用 今でも一部で使われる.帳票の作成が行いやすいように設計されていた. LISP 人工知能用 MITのジョンマッカーシーによるλ計算用の言語.後に人工知能研究に使用され,専用計算機も登場. OS CHIEF UNIVAC III用: 時分割によるマルチプログラミングOS, ジョブコントロールも可能.但し使いにくい.
第3世代へ ICの利用(1964~)
IBM-360
IBM-360の影響力 System/360 は様々なソフトウェアを入れ替える事により,多種多様の業務に対応できるのが特徴(汎用機).「360度,様々な業務に対応できる」という事で,360 と付けられた. System/360は,IBM をメインフレームの巨人メーカーへと育て上げた. 当時のメインフレーム市場における IBM の強さを「白雪姫と7人の小人」とたとえているものもある.1967年頃には、大型コンピュータにおける米国メーカーの出荷高の7割以上を IBM が占め,他社を圧倒してメインフレーム市場をほぼ独占する.他の7社は,UNIVAC,Honeywell,GE,CDC,RCA,NCR,バロースで,数%ずつのシェアを分け合った.
ハードウエア 発明されたばかりの集積回路は信頼性や可用性に不安があったため,IBMはハイブリッド集積回路を使用した. 個々のトランジスタやダイオードと基板に プリントされた抵抗などで回路を構成し, プラスチックか金属でカバーを施した.こ れをモジュールとして実装を行った. メモリはコアメモリ 360/85には,はじめてキャッシュメモリが積まれる セグメント方式とページング方式によるメモリ管理
ソフトウエア ファームウエア OS(CP-67) マイクロプログラム方式の初の商用化 →過去の計算機との互換性の確保 マイクロプログラム方式の初の商用化 →過去の計算機との互換性の確保 OS(CP-67) 時分割(TSS)方式による複数プログラムの同時実行 仮想機械による,複数OSの同時実行
互換性の意義 System/360のアーキテクチャやアプリケーション・プログラムの互換性は、2009年現在のSystem zまで引き継がれている.IBMはこの時から,自社コンピュータ全てで同じ命令セットが動作するようにした.これによって顧客は小さなシステムから、必要に応じて上位機種にアップグレードすることが可能となった. さらに多くの機種では以前の機種をエミュレーションするオプションも提供していた。これにより従来のプログラムもそのまま新しいマシンで動作させることができた。 これらの柔軟性により、導入にあたっての障害が小さくなった。 ゼネラル・エレクトリック以外の競合他社は機種間の互換性がなく,顧客の要望に応えるために個々の機種が高性能過ぎて高価になり,導入できないことが多かった. System/360はこの市場の成り立ちを全く変えてしまい、企業は低価格で安心して下位機種からリースすることができた.
IBMの勝因整理 PCS時代から続く販売方法 ①レンタル販売中心 ②中央処理装置と周辺装置、ソフトなどのバンドル販売 ③すべて自社で提供 中古市場を形成させない。 継続的売上 継続的な顧客とのコミュニケーション ②中央処理装置と周辺装置、ソフトなどのバンドル販売 ③すべて自社で提供 インタフェースを公開するが、たびたび変更することで周辺機器メーカーの参入を阻止 ④処理量が増えればレンタル料が増える。 初期費用はかからない。 ⑤ソフトウェア・ロックイン 一度つかんだ顧客は離さない。
ミニコンの登場:PDP-8 汎用計算機,初期版は1万6千ドル,トランジスタ. ソフトウエアの互換性を保ちつつ,ハードウエアの異なる変種を多数リリースし,30万台と最も普及した. 初期のPDP-8の入出力は、フロントパネル、紙テープリーダー、テレタイププリンタ、そしてオプションの紙テープパンチャーで構成されていた.その後、磁気テープ、RS-232Cなどによるダム(dumb)端末、パンチカードリーダー、固定ヘッド式磁気ディスク装置などが追加されていった.最終的にはフロッピーディスクやハードディスクが一般化した.
電卓の登場(大学新卒初任給2万) 1964 シャープ CS-10A (53.5万円) 1964 キャノン キャノーラ 130 (39.5万円)
電卓の登場 1965 カシオ 001 (38万円) 1966 ビジコン社 161 (29.8万円) 1965 カシオ 001 (38万円) 1966 ビジコン社 161 (29.8万円) 1969 シャープ QT-8D (9.98万円) 米国 ロックウエル社製LSI使用
第4世代(1970~) LSI,マイコンの時代へ
ビジコンとインテルが開いた マイクロプロセッサの時代 日本のビジコン社からの要請により、同社の嶋正利とインテルの共同による電卓用演算装置の開発が始まった.元々のビジコンの設計では、専用の12種類の半導体チップが必要とされたが、インテルの技術者テッド・ホフ は、「複数桁の演算を、1桁の演算の反復で置き換える事、外部機器の制御回路を、ソフトウェアによる制御に置き換える」という汎用計算用素子を提案、これがマイクロプロセッサの原点となった。 嶋はその後INTEL社に移り8008の開発も担当することになる
広がるマイクロプロセッサ 当初の契約では、このチップはビジコンに対する専売となっていたが、チップの汎用性に気付いたインテルが他への販売を希望し、ビジコン側に契約金の一部を支払うことで,チップの販売権を得て、 1971年11月15日に4004として出荷が開始された。 最高動作周波数 741KHz。ただし、命令アドレス出力に3クロック、命令読み出しに2クロック、命令実行に3クロックの計8クロックを要する。
Intel 4004を使った電卓 4004を使った電卓ビジコン141pf 価格は159800円 ROMを変えると 機能が追加でき る.
ポケット電卓へ ビジコン社は4004の開発と並行して米国の新興企業モステック社とワンチップ電卓用チップMK6010の共同開発を行った. これを用いた電卓:LE-120A が開発され,89800円で販売さ れた.
電卓はどうなったか? 1973年までに,下記のメーカが参入. シャープ,キヤノン,カシオ,東芝,ビジコン (日本計算機),鳥取三洋電機,ソニー,日立,リコー(大井電気),内田洋行,日本コロンビア,栄光ビジネスマシン,立石電機,松下通信工業,コクヨ,ブラザー,シチズン,タイガー計算機,SEIKO,日本通信工業,ゼネラル,YHP,MONROE,ダイエー,シルバーリード 1973年には,1万~2万程度にまで価格が下落. 安いものであれば1万未満の電卓も登場 ビジコンも倒産
ビジコンの倒産 同社は主要取引先である三菱電機がコンピュータ事業から撤退したことや、電卓の価格の激烈な低下が同社の収益基盤であった手動式計算機部門を直撃したこと、ニクソンショックによる円高で輸出が激減したことなどによりビジコン社は1974年2月に倒産した。インテルに4004の販売権を渡さなければ... 1974年3月1日朝日
360の後継機IBM-370の話 互換性を保ったまま,高速化. 主記憶は半導体メモリ キャッシュメモリの標準的使用 仮想記憶の完全サポート System/360から24ビットアドレッシングを引き継ぎ上位互換性を保ち、System/360と同様に互換性のある複数モデルを提供し,ユーザーの資産(プログラム、周辺機器など)を保護した. 主記憶は半導体メモリ キャッシュメモリの標準的使用 仮想記憶の完全サポート (サイズは16MB) 128bit浮動小数点演算
IBM-370の影響(小人が7人から5人に) System/370の成功により、GEは撤退した. System/360の互換機を製造していたRCAも撤退,しかし 日立製作所はSystem/370の互換機を開発した。 また1975年にはIBMから退職したアムダールが富士通と提携してプラグコンパチブル型(IBMのオペレーティングシステムを稼働させる)のSystem/370互換機を発表した。
マイクロプロセッサブームの到来 1973 インテル社 i-8080 8bit MPU 1973 NEC社 μCOM-4 4bit MPU 1974 モトローラ社 MC6800 8bit MPU 1975 ザイログ社 Z-80 8bit MPU 1978 インテル社 8086 16bitMPU 1979 モトローラ社 MC68000 16bitMPU
パソコンやソフトもそろい始める 1975 イムサイ社 i-8080使用パソコン発売 1975 MITS社 ALTAIR 1975 ビル・ゲーツ i-8080用 BASIC 1976 アップル社 APPLE-I 1976 NEC社 TK-80 他社OS上で動作する
パソコンビジネス 1977 アップル社 APPLE-II コモドール社 PET2001 タンディラジオシャック社 TRS-80 1978 シャープ MZ80K 1979 NEC社 PC8001 1976 CP/M 8bit OS 1980 CP/M-86 16bit OS 1981 MSDOS 16bit OS
8bit時代のOS:CP/M 1972年、ワシントン大学 より計算機科学の博士号を受けたゲイリー・キルドールは,海軍大学院大学の教授を務めその間にインテル4004、8008用の高級言語PL/Iを実装し,これをPL/Mと名付けた。その開発環境の研究も行い、それがCP/MというOSになった。 1976年、CP/Mをインテル社に持ち込んだが相手にされず、同年、開発の継続と販売のためデジタルリサーチ社を設立した。
16bitOS CP/M→CP/M-86 (ゲイリー・キルドール) IBM QDOS(ティム・パターソン) (Quick-Dirty OS) MSDOS(ビル・ゲイツ) $50,000で売却
レポート課題(次から1つ答えること) (不真面目なレポートはカウントしない) IBMはなぜ成功したか? パソコンは第2の電卓にはならないか? 次のブレークスルーはどこにあるか?