なぜ情報実験か?その1 Unix (Linux) / Internet の歴史と 学問の情報化への展開を踏まえて 北海道大学理学研究科 地球惑星科学専攻 林 祥介 shosuke@ep.sci.hokudai.ac.jp 2004年10月01日
目次 電子計算機から情報環境への発展 特に, Unix, Internet, X 日本での発展 大型計算機, ワープロ・パソコン 日本の大学 Internet 計算機科学・情報科学 V. Bush 1945 今日的計算機と諸分野での仕事 地球惑星科学では ここでは
電子計算機から 情報環境への発展
電子計算機の黎明 1930’ 計算(機械)の原理(アルゴリズム) Godel (1931): 不完全性定理 Turing (1936) : TM (Turing Machine) (配線型)電子計算機 ABC (Atanasoff Berry Computer, Atanasoff & Berry, 1939) ENIAC(Electronic Numerical Integrator And Calculator, Eckert & Mauchly, 1946) 弾道計算, 気象計算(順圧非発散二次元渦度方程式) ノイマン型(プログラム内蔵型)計算機 EDVAC (Eckert , Mauchley, Neumann),Neumann 1946 EDSAC (Wilkes, 1949) 世界初のノイマン型計算機(英)
電子計算機の黎明 ENIAC(1950.4.4) Namias Wexler Frankel Von Neumann Freeman Fjortoft Charney Von Neumann Freeman Reichelderfer UCSD ECPC(Experimental Climate Prediction Center) 写真集より http://ecpc.ucsd.edu/general/pics/eniac-50.html
計算機としての計算機 汎用大型計算機(Mainframe) 計算作業の順番待ちを自動化するソフトウェアとしてはじまる 1950’ 計算機らしい(?)計算機 IBM701(1952) 汎用大型計算機(Mainframe) 研究(軍事)機器から実用的な機器へ IBM701写真 (気象庁最初の数値予報?計算機IBM704, 1959) OS= Operating System(基本ソフト) 計算作業の順番待ちを自動化するソフトウェアとしてはじまる バッチシステム(batch systems) I/O(Input/Output)の標準化 デバイスドライバー(device driver)
計算機としての計算機 コンパイラ(compiler)によって機械語に翻訳する FORTRAN:数値計算 1950’ 高級プログラム言語の登場 (FORmula TRANslator System, J. Backus, IBM, 1954) COBOL:事務処理(帳票)計算 (COmmon Business Oriented Language, The Conference on Data System Languages (CODASYL), 1959) 計算機は計算のための道具として普及しはじめる
計算しない計算機 IBM 大型計算機は数値処理のみを念頭に設計されており, 文字処理 Unix :1969 年に発明され開発が始まったOS. 骨子は, 計算する機械に「ワープロ」もできるようにさせたこと. プログラム開発環境とプログラムのドキュメンテーション環境 文字処理を得意とするプログラミング言語 C Cとの結合によりUnixは文字のあつかいが得意な OS となった. IBM 大型計算機は数値処理のみを念頭に設計されており, 文字処理は非常に不得意であった. 1byte(=8bit)単位の処理 vs 1word(=4byte)単位の処理.
Unixの普及(1) 米国電信電話会社(AT&T) の Bell 研で作られたのに Unix は先端的な情報科学研究用環境として普及発展 情報科学研究者フレンドリー 米国電信電話会社(AT&T) の Bell 研で作られたのに ソースコードが公開, 配布されることも許容していた. 自分に都合よく改編可能 情報科学科でのテキストとして ソースコードが利用され広まる
Unixの普及(2)情報科学業界 Unix は先端的な情報科学研究用環境として普及発展 開発の幸せなフィードバック 使う人がソフトウェアを作る人 (/usr) - それぞれがそれぞれの必要からソフトウェアを開発ただで提供 - お互いに資源を出し合い, 使いあい, 修正改良しあう - たくさんの人が使うのでどんどん鍛えられる - 便利になるので使う人が増え, 作る人も増える Internet, Linux へ続くフリーウェア文化, オープン開発文化の下地
Unixの普及(3)一般研究業界 Unix は(計算機を使う)一般科学者の研究用環境としても普及発展 プログラム開発環境とドキュメント処理機能がそろっていて便利だった. ソフトウェアが作りやすくて, 計算ができて, マニュアル作成ユーティリティーを使えば文章(論文)が清書でき, その整理ができる. 計算機から情報処理環境(文房具)へ 今日の科学技術用計算機は Unix を OS とするようになったルーツのひとつ 米国の大学でのUnixの普及は早い時期(1970’ 後半)から科学諸分野と情報科学分野との交流する土台
Unixの普及(4)軍 米国の諸々の活動のスポンサーは軍 ソースコードが公開されていることは軍にとっても望ましい. 大学が研究中心 ソースコードが公開されていることは軍にとっても望ましい. 特定の企業に国防「情報」が支配されるのは喜ばしくない 国防総省 ARPA (Advanced Research Projects Agency, 今の DARPA) 核戦略・防衛兵器のための基礎研究を推進 大学が研究中心 カリフォルニア大学バークレー校 (UCB) →BSDUnix, FreeBSD マサチューセッツ工科大学 (MIT) スタンフォード大学 (SU) などでUnixは大きく発展, 研究環境といえばUnix
Internetの黎明 ARPAnet 1960’s終りから核戦争を想定した防衛システム基礎研究としてARPAが行うパケット通信計算機接続の研究 中心のないシステム, 分散統合システム どこのホストコンピュータが核攻撃によって 蒸発しても どこかのコンピュータが生き残り, ネットワーク全体としては機能が維持される ARPAnetの研究中心 スタンフォード大学 (SUN = Stanford University Network) カリフォルニア大学バークレー校 TCP/IP Transmission Control Protocol / Internet Protocol
Internetの黎明(2) ARPAnetとTCP/IPとUnix (1980) 国防総省 ARPA が OSとしてバークレー版Unix (BSD Unix)を採用 → Unix と ARPAnet の諸々の技術が結合 TCP/IP が事実上の標準に 1980 年, バークレー版 Unix (BSD Unix) が TCP/IP を実装, TCP/IPはUnixをOSにしている機器に一挙に広まる Unixは米国の研究高等教育機関現場にすでにある程度ひろまっていたので, TCP/IPは米国研究教育業界での通信プロトコルの事実上の標準 (Defuct Standard)となった
Internetへ internet (子文字): Internet (大文字): 複数の network を相互につないだもの (米国では高速道路網を interstate という, そのもじり). そのうちで特に TCP/IP でつながれたネットワークの集まり, メタネットワークのことをいう. TCP/IP 接続の特色はこのメタネットワークが あたかも一つのネットワークのごとく利用者からは見えるところにある. 複数のネットワークが接続されてできていることを全く意識しないで良い. Internet (大文字): TCP/IP で接続されたネットワークのうちの, ARPAnet をルーツに持つネットワークのことをいう. Internet とは国際的な共同運営団体に加盟し, 整合性を保ったアドレス管理, 経路制御などの運営をしているものたちである.
X window system(1) ビットマップ(bitmap)ディスプレーの登場とX ビットマップディスプレー: 文字と絵を同時にあつかえるディスプレー それまでは: 英数字のみをあつかうキャラクターディスプレーと絵のみをあつかうグラフィックディスプレーを別個に持たねばならなかった. でもハードウェアがあっただけではそれだけじゃ制御が難しい →X MIT:産官学共同研究開発の中心 (MIT X コンソーシアム) ワークステーション 三種の神器 BSDUnix+TCP/IP+X を備えた, 汎用大型計算機に対する机上サイズの小型計算機のこと
X window system(2) 様式の定式化(標準化) サーバー・クライアント Xは何が偉いか いまや当たり前になっていることをあたりまえにした サーバー・クライアント ディスプレー, マウス, キーボード, スピーカーなどの人間機械インターフェースを支配するサーバ 文字の表示, 絵の表示, 音の発生等々は個々のソフトウェア(クライアント)が担当する 個々の命令セットが体系化され標準規約化
X window system(3) Xは何が偉いか(2) ネットワーク透過(network transparent) Internet技術と結合 internet という通信手段と結合することにより遠方の資源を仮想資源としてあたかも手もとの計算機に付随する資源のごとく利用. ウインドウを飛ばす: 遠方の計算機が出力する画像を手元の計算機のディスプレー上に表示.
X window system(4) Xは何が偉いか(3) 日本語が表示できるようになった →やっと日本の一般研究者にもUnixが ただし, すでに日本語入出力技術は日本でも進んでいたから, すみやかな導入が可能だった 日本語ワープロ(1981) ようやく日本でも計算機から情報処理環境(文房具)へ それまではワープロと汎用大型計算機とはまったくの別物
ダウンサイジング第一期 1980 年代後半~1990 年代前半: ワークステーション ハードウェアの進歩, 普及と低価格化 → ダウンサイジング (downsizing) 汎用機からワークステーションへ 計算作業環境の変遷 計算機の配線 紙テープ, カード 端末 ディスプレー端末 ワークステーション(X)
ダウンサイジング第二期 1990 年代後半: パソコン ハードウェアの進歩, 普及と低価格化 → ダウンサイジング (downsizing) ワークステーションから パソコン(Macintosh, WindowsとAT互換機)へ 計算作業環境からのワークステーションの衰退 ワークステーションは特殊用途へ ほとんどの作業はPCで パソコンの登場は1980年代, どちらかというとゲームから出発し, 文房具(清書道具)として実務で本格的に使われるようになったのは1980年代後半(DOSの登場と一太郎などのワープロソフト)
Internetの大発展(WWWとブラウザ) 下地 Windows と AT 互換機 (MS-Intel 帝国)の普及 Internetの民営化 (ISP, 日本では 1992) 真の起爆剤=WWW (サーバ)と ブラウザ(クライアント) CERN → Apache NCSA mosaic → Netscape WWW = W3 = World Wide Web html = hypertext markup language URL = Uniform Resource Locator (プロトコル://アドレス/ファイルパス名) http = hypertext transfer protocol 検索エンジン(Yahoo1995,google1998) 情報社会の到来が一般に体感されるようになる
日本での発展
メインフレーム・スパコン路線 大企業的産業育成政策 = 目指せ IBM 通産省キモイリで数値処理をするための計算機開発に邁進 日立・富士通共同開発 M シリーズなど 文部省全面協力(主要大学の大型計算機センターでの実装実験・デバッグ) 数値計算用の大型汎用機やスパコンは1980 年代中盤には世界をリード, いまや, ほとんど日本製 スーパーコンピュータ=流体計算が実用化した1980年代中ごろからの大型汎用計算機の別名 地球シミュレータにいたる 安全保障上の理由で(米国の計算機メーカー保護のため)米国には買ってもらえない
ゲーム・ワープロ・パソコン路線 ゲーム・ワープロ・パソコン路線 日本語と英語の壁 計算機が日本語を実用レベルで喋れるようになったのは1981 年 研究現場ではなく逆に事務現場あるいは大衆消費=民需から 日本のパソコンは漢字を表示すること + ゲームで使えることを目指す 最初からカラービットマップディスプレーが当り前(画期的) NEC PC98 シリーズ + 一太郎 日本語と英語の壁 日本のソフトウェアは米国の機器で動かない 米国のソフトウェアは日本の機器で動かない 解消するのはAT互換機とWindows95の登場
日本の大学環境(1) 計算機は計算機 (目的は数値計算) Unix は, なかなかはやらなかった 現場(研究室等)で計算機を持てるなんてのは夢のまた夢 計算といえば, 実験制御用計算機を除けば大型計算機センターに出かけるのが通常 Unix は, なかなかはやらなかった Unix が輸入されたのは結構古くて 1977 年ごろ 東大和田研などだが, ワークステーション時代(1980年代末)になるまで Unix は情報系以外の人々が使うことはほぼなかった Unix が走るマシン(DEC の機器)は高価だった. Unix は 英語しかしゃべれなかった. そうこうしているうちにワープロ・パソコン時代へ 弊害:各分野での情報化への遅れ(情報科学者の試みが周囲に広がらない)
日本の大学環境(2) 日本のInternetは大学から Internet の文化的背景 Unixの文化の継承=基本精神は, そのまま古きよき大学の精神 自力更生(自分のことは自分でやる) 自分で自分の環境を構築できる. 自分の責任において何をやっても良い. 無保証 ボランティア(相互扶助) 研究室から学科, 学部, 大学, 研究所, そしてそれら相互のnetwork 同士を接続し, 自分のネットワーク上を他人のパケットが通過することを許容することにより総体として Internet を作っていっていった 日本における Internet の発展に大学や研究者個々人の活動は触媒として有効に機能した. WIDEプロジェクトの役割が非常に大きい Unixのワークスステーションとしての普及と同時期に開始, むしろネットワーク接続のためにUnixを導入するようになる
日本の大学環境(3) Internet の黎明: 研究実験接続の時代 WIDE 1988 年-現在 (村井純http://www.wide.ad.jp/ ) Internet それ自体を研究する目的. 大学や企業の研究室, 研究グループを会員組織とする実験プロジェクト. 多種多様な組織を繋いだ時に生じる技術的・政治的・社会的諸問題を経験する. TISN 1989 年 ~ 1996 年 東大理学部を中心として日米国際回線の共同利用のために組織された. 接続は原則として会員組織のみ. 会員は理学研究目的の組織に限定していた. 科学技術庁省際ネットワーク(IMnet)に吸収されることにより発展的に解消.
日本のInternet 日本における Internet の発展: プロバイダへ ボランティアベースのメタネットワークが巨大化するにつれ組織のネットワークに対して, ネットワークを接続するためのネットワークが分化していった. SINET (1991 年末) 大学・研究機関のためのプロバイダ 本格的に整備されたのはこの 1994 年春あたり. 文部省(文部科学省)による大学・研究組織間接続のための業務レベル基幹ネットワーク. 学術情報センター(現在の情報学研究所)が管理運営. TISN 発足のころ学術情報センターのネットワークは ``internet‘’ をサポートしていなかった. SINET の下に各大学が独自のキャンパスネットを運営 HINES, UTnet, Quins, ...
日本のInternet 日本における Internet の発展: プロバイダへ 個人や企業のための商用プロバイダ (ISP = Internet Service Provider) IIJ が1992 年末, 開業 ここにはじめて研究とは関わりのない業務でInternet に参加し通信をおこなうことができることになった. 1995 年は Internet 元年と日本では呼ばれている プロバイダにより, 個々人や企業などが契約さえすれば Internet へのアクセス提供を実質的にうけられるようになったからである. web と ブラウザの普及により一般に見えるようになった
計算機科学・情報科学 V. Bush 1945
情報化 計算機に知識を教えていくこと. 大学はInernetの触媒としてはうまく機能したが情報化の触媒としてはあまりうまく機能してこなかった 米国のUnixや坂村健のTronがやろうとしていたことがなかなか理解されなかった 日本では 90 年代後半になって, ようやく情報科学がやろうとしてきたことたちが知られるようになって来た. 非常に遅れている知の爆発への対応
V.Bush (1945) V. Bush: MITの副学長, 第二次大戦中は国防研究委員会議長, レーダーから対潜水艦作戦, マンハッタン計画にいたるまでの兵器開発計画の監督. 人類にとっての真の挑戦は原子をさらに細かく調べたり生命の複雑さを探求したりすることではなく, 科学技術が氾濫させる情報のよりよい管理方法を発見することだ. 人間の知識と経験が驚異的な速度で増大しているというのに,必要な情報を捜し出す方法が以前として「帆船時代」のままなのはおかしい, 情報を整理する新しい方法と技術が必要である.
V.Bush (1945) 「メメックス」(memex) 関連がある異種の情報を一つに結び付ける装置で, これにより, 誰もが自分専用の情報を整理蓄積できるようになる. 弁護士はボタンを押すだけで, 彼自身の経験ばかりでなく 友人や関係当局の経験から得られた関連意見や決定を呼び出せる. 弁理士も依頼人の希望に応じて, 数百万件もの特許を即座に調べることができる. 医師も診断に迷った場合には類似した症例を手早く調べたうえ, ついでに解剖学や組織学などの書物まで参考に引くことができる. 膨大な記録を整理して誰もが活用できるようにすることによろこびを見いだす, 先駆的な新しい職業も生まれてくるだろう.
V.Bush (1945)の実践 計算機に地球惑星科学の知識を教えていくこと 我々の知識の形を明らかにすること コンピュータが相互にやり取りできる知識データの構造 それぞれの専門分野の人々が情報科学の発見発明を実際に活用して行うことが必要
ここでは
地球惑星科学での展開 現在まさに研究開発中のさまざまな活動 ネットワーク透過なデータ構造とユーティリティーの設計 http://www.unidata.ucar.edu/ スーパーコンピューティング, GRIDコンピューティング 大規模シミュレーション・データ解析のためのネットワーク透過な並列計算・並列データ処理 遠隔計算・遠隔観測 観測装置(望遠鏡など)の制御と観測 データの分散統合的利用 観測データを使った数値計算 分散型リアルタイム気象データアーカイブ データをネットワーク上に分散させたままあたかもひとつのデータセットして利用可能にする 例:米国で研究教育用の道具として開発中のTHREDDS 知見情報アーカイブ
ご近所での展開 遠隔計算・遠隔観測のためのネットワーク環境の構築 各種サーバーの運営 環境研究所, 天文台, 宇宙研のスーパーコンピュータの利用 データセンターとの通信 Gbit大域のネットワークの設計と接続, 制御を自前で行う必要 Super SINET JGN(Gbit接続実験) 各種サーバーの運営 情報発信環境の維持と情報提供の試み 地球惑星科学専攻サーバ 地球流体電脳倶楽部
ご近所での展開 計算機に地球惑星科学の知識を教えていくこと ネットワーク上での知識提供実験 / ネットワーク上での教育実験 参考: School of Internet (WIDE) (http://www.soi.wide.ad.jp/) 地球惑星業界でも同様な試みを展開する必要 WIDE SOI にならった我々の活動 Mosir プロジェクト (http://www.ep.sci.hokudai.ac.jp/~mosir/ ) データの構造化, 知見プラットフォームへの試み 地球流体電脳倶楽部 (http://www.gfd-dennou.org/) 地球惑星(流体現象)にかかわる諸々の知見をネットワーク上にためる そのための道具作りをおこなう 情報交換に便利な数値データ構造の考察 地球惑星科学における知見データの構造自体を考える
情報実験では 計算情報環境の技術的基本概念を構成している をひもとく 自分の情報環境は自分で維持できるようになる Unix (Linux) Internet X window system をひもとく 自分の情報環境は自分で維持できるようになる 自分がおかれている情報環境の総体に思いをはせることができるようになることをめざす 地球惑星科学の情報化へ貢献できる人材が生まれれるきっかけになれば幸い
参考書, 参考文献 Bush, V., 1945: As we may think. Atlantic Monthly, 1945 July, 101-108. 村井純, 1997: インターネット, 岩波新書 新赤 416, 岩波書店. 村井純, 1998: インターネットII, 岩波新書 新赤 571, 岩波書店. 歌田明弘, 2000: 本の未来はどうなるか 新しい記憶技術の時代へ, 中公新書 1562, 中央公論新社 D. Libes & S. Ressler 著, 坂本 文 訳, 1990: Life with Unix, アスキー. 坂村健, 2002: 痛快! コンピュータ学, 集英社文庫. 山口 英, 2002: ブロードバンド時代のインターネットセキュリティー, 岩波科学ライブラリー85