Unix - 地球惑星科学科

Download Report

Transcript Unix - 地球惑星科学科

なぜ計算情報科学・技術を学ぶか?
Unix (Linux) / Internet の歴史と
学問の情報化への展開を踏まえて
神戸大学
大学院理学研究科
地球惑星科学専攻
林 祥介
[email protected]
石渡正樹・倉本圭
北海道大学 大学院理学研究院・理学院宇宙理学専攻
2009年04月17日
目次
• 目標
• 電子計算機から情報処理環境への発展
– 電子計算機の発展(1)汎用計算機
– 電子計算機の発展(2)情報処理装置へ
• Unix
• Internet
• X window system
– 電子計算機の発展(3)インターネット爆発と情報
革命
• おわりに: 知の爆発と情報革命
目標
高い理想
• 計算機・ネットワークに関する高いスキル(技術と倫理)を身
につける
– 各研究室で活躍
– 各企業で活躍
– 個人事業主として活躍
• 地球惑星科学の情報化へ貢献できる人材が(勝手に)生ま
れれる
– 情報利用者から,情報提供者へ,そして,科学の情報インフラのデ
ザイナーへ
地球惑星科学におけるさまざまな展開
• ネットワーク透過なデータ構造とユーティリティーの設計
– http://www.unidata.ucar.edu/
• スーパーコンピューティング, GRIDコンピューティング
– 大規模シミュレーション・データ解析のための
ネットワーク透過な並列計算・並列データ処理
• 遠隔計算・遠隔観測
– 観測装置(望遠鏡など)の制御と観測
– データの分散統合的利用
• 観測データを使った数値計算
– 分散型リアルタイム気象データアーカイブ
• データをネットワーク上に分散させたまま
あたかもひとつのデータセットして利用する
• 例:米国で研究教育用の道具として開発中の
THREDDS
•
知見情報アーカイブ
– 計算機に知識をおしえること
すばる望遠鏡
高い理想の実現には
「時間」や「根性」や「熱意」や「才能」も
必要
全員ができるわけではない
全員にやってもらいたいものは。。。
立派な大人に
なって欲しい
情報化時代の立派な大人
• 自分のことは自分でできる
– 仕組みを(ある程度)理解している
– 問題があったときに自分で解決できる
• 社会的な行動(人に迷惑かけない)ができる
• 以上を子供(他人)に教えることができる
目標
• 計算情報環境の技術的基本(古典)概念
– 計算機(パソコン)の金物の構造(CPU・メモリ・…)
– Unix (Linux)・Internet・X window system
を実体験し,自分の情報環境は自分で維持できるようになる
• 自分がおかれている情報環境の総体に思いをはせる
– ネットワーク社会人(常識や作法を知る)
– 安全性,安定性への理解
電子計算機から
情報処理環境への発展
なぜ歴史を知る必要があるのか
• 物事を理解する基本手順
計算機・ネットワークを理解する上でも同じ
– UNIX, TCP/IP, X Window System, …
• 文化的背景を知る
– 良くも悪しくも米国文化
– 「自力更生」
• これから進むべき道を模索する
界隈の歴史
• 1988:地球流体電脳倶楽部
• 1989:TISN東大国際理学ネットワークにまつわる東京大
学理学部地球物理学科ネットワーク支援グループ
• 1994:北海道大学地球環境科学研究科大気海洋圏環境
科学専攻ネットワーク友の会
• 1995:東京大学数理科学研究科・理学部数学科計算数
学, カリキュラム化
• 1998:北海道大学理学研究科・理学部地球科学専攻
epnetfan, mosir(動画配信)
• 2007:神戸大学理学研究科・理学部地球惑星科学科,
実習, カリキュラム
• 2008:惑星科学研究センター(CPS)人材育成プログラム
電子計算機の発展(1)
汎用計算機
手回し計算機
山田学氏撮影(2007.10.20) 於 国立天文台
電子計算機のはじまり
• 計算機・情報理論の原理
Turing (1936) :
万能計算機の理論的可能性を指摘
(Turing Machine)
Shannon (1948) :
情報理論「全ての情報はビットにコード化できる」
• (配線型)電子計算機
Claude Elwood Shannon
ABC
(Atanasoff Berry Computer, Atanasoff & Berry, 1939)
裁判所には世界で最初の電子計算機と認定された
ENIAC(Eckert & Mauchly, 1946)
• ノイマン型(プログラム内蔵型)計算機
Neumann (1946): プログラム内蔵型計算機の提案
EDSAC (Wilkes, 1949) 世界初のノイマン型計算機(英)
EDVAC (Eckert , Mauchly, Neumann) 1951
ENIAC
• Electronic Numerical Integrator And Calculator
Eckert & Mauchly (1946)
• 計算に応じて配線を変える
– 水爆開発
(最初に走った
プログラム)
– 弾道計算
– 気象計算
(順圧非発散二次元
渦度方程式,
岸保勘三郎)
ENIAC(1950.4.4
Namias
Frankel Fjortoft Charney
Wexler
Von Neumann
Freeman
Reichelderfer
UCSD ECPC(Experimental Climate Prediction Center) 写真集より http://ecpc.ucsd.edu/general/pics/eniac-50.html
汎用計算機
• 汎用大型計算機(Mainframe)
研究(軍事)機器から実用的な機器へ
いろいろな用途に使える計算機らしい計算機
– UNIVAC-1(1950)
米国国勢調査局に納入
開発したのは Eckert と Mauchlyの会社
– IBM701(1952)
IBM704, 1959
=気象庁最初の数値予報(?)
用計算機
http://www-1.ibm.com/ibm/history/exhibits/701/701_141512.html
高級プログラム言語の登場
1950’ 高級プログラム言語の登場
コンパイラ(compiler)によって機械語に翻訳する
FORTRAN:数値計算
(FORmula TRANslator System, J. Backus, IBM, 1954)
COBOL:事務処理(帳票)計算
(COmmon Business Oriented Language,
The Conference on Data System Languages
(CODASYL), 1959)
計算機は計算のための道具として普及しはじめる
汎用計算機=標準化・仮想化
• IBM360(1964)
– OS= Operating System(基本ソフト)
• バッチシステム(batch systems)
計算作業の順番待ちを自動化す
るソフトウェアとしてはじまる
– I/O(Input/Output)の標準化
デバイスドライバー(device driver)
– 世界的な大ヒット
• ビックブルーの威力
• IBMは計算機の代名詞になる
(2001年宇宙の旅のHAL9000)
http://www.computermuseum.li/Testpage/IBM
-360-1964.htm
紙テープ
山田学氏撮影(2007.10.20) 於 国立天文台
パンチカード
高速カードリーダ
http://museum.ipsj.or.jp/computer/device/pape
0036_win01.html
(コンピュータ博物館 http://museum.ipsj.or.jp/ )
山田学氏撮影(2007.10.20) 於 国立天文台
磁気テープ
FACOM 602磁気テープ装置 FACOM 241Dに接続されたFACOM 602(1962頃)
コンピュータ博物館 http://museum.ipsj.or.jp/computer/device/magnetic_tape/0002.html
汎用機のその後
• OSの発展
– 1960年代:国防総省 ARPA (Advanced Research Projects
Agency, 今の DARPA.核戦略・防衛兵器のための基礎研究を推進)
プロジェクト
– 「多くの人がパーソナルに使いやすい計算機を」
GUIベースのOS、マルチウインドウ、後のMac、Windows へ
– 「大型計算機を複数の人間で共有したい」:Multics
バッチ処理からタイムシェアリグシステム、後のUnix へ
• ハードウエアの発展
– 1971:マイクロプロセッサ(CPUの回路を1つのチップに収めたも
の)4004 開発
– 計算機のダウンサイジング:パーソナルな計算環境へ
– IBMが焦って(?)パーソナル市場へ
チップはインテル、OSは「マイクロソフト社」のMS-DOS
互換機の誕生、帝国の崩壊へ
電子計算機の発展(2)
情報処理装置へ
Unix
UNIX前夜
• 複数のユーザによる計算機の共有
– ARPAプロジェクトのMultics
(ゼネラル・セントリック、 MIT、
米国電信電話会社(AT&T) のベル研究所
の共同開発)
– 強固なセキュリティ機能
– 速度があまりに遅く使い物にならない.
ベル研
UNIX
• Thompson & Ritchie がベル研でお古になって
いたDEC社PDP-7で遊んだのが始まり
• 1969: Multix に対する Unix
(Uniplexed Information and Computing
System)
http://en.wikipedia.org/wiki/Ken_Thompson
– 所内のプログラム開発・計算環境として広ま
る・認知される
UNIXの画期的な側面=情報処理
• 情報=文字を処理する(計算しない計算機)
– プログラムを書く人に幸せな環境
– 文字(アルファベット)処理をさせたい
• 文字処理→1byte(=8bit)単位の処理
• 数値処理→1word(=4byte)単位の処理
– プログラム(=文字列)開発環境
• ファイルエディター
• 文字やファイルの処理
– プログラムのドキュメンテーション(解説文章作成)環境
• roff とオンラインマニュアル
– 文字処理を得意とするプログラミング言語 C
• ソースコードをタダで公開, 改変, 再配布することも
許容.
Unixの普及
• 情報科学研究者に便利なプログラミング
環境
– 自分たちに都合よく改編可能.
– 米国の情報科学科でソースコードが教科書として
利用され広まる.
– 使う人が作る人 (/usr) :お互いに資源を出し合い,
使いあい, 修正改良しあう
– Internet, Linux へ続くフリーウェア文化, オープン
開発文化
Digital‘s VT100 video terminal (1978)
http://vt100.net/
Unixの普及:一般研究業界
(計算機を使う)一般科学者の研究用環境として普及
• 文房具←プログラム開発環境+ドキュメント処理機能
–
–
–
–
–
ソフトウェアが作りやすい
計算ができる(そもそも計算機)
マニュアル作成ユーティリティーを使えば文章(論文)が清書できる
その整理(情報処理)ができる
計算機から情報処理環境(=文房具)へ(ただし英語だけ)
米国の大学では1970’ 後半にはUnixが普及
– 科学技術用計算機が Unix (Linux)を OS とするようになったルーツ
• 科学諸分野と情報科学分野とが交流する土台
– 情報科学が目指していることが他分野にも流れ出しそれぞれの分野で
の情報化を促す
– 今日の科学の情報化に結びつく基盤,グローバリゼーションの土台
Unixの普及:軍によるサポート
• 米国での諸々の活動のスポンサーは軍
• ソースコードが公開されていることは軍にとっ
ても望ましい.
– 特定企業に国防「情報」が支配されてはいけない
• よって大学に委託.
– 結果として軍がオープン開発を支援
– カリフォルニア大学バークレー校 (UCB)→BSDUnix, Free
BSD,MIT, CMU, SU, …
• 70年代から80年代にUnixは大学で大きく発展
– 1980年代後半には研究環境といえばUnix
– その後はInternet の歴史と不可分
日本ではUnixはなかなか流行らなかった
• Unixが輸入されたのは1970年代後半(東大和田研)
だったが, 情報科学研究者以外は使わない・使えない
– Unixは英語しか喋らない
• ワープロやパソコンのほうが先に日本語(1980年代前半)
– 貧乏
• 研究室で計算機なんてありえない
• Unixが動く米国製計算機(DEC)は高くて買えない
– 拠点大学には大型計算機センターが設置され, 良質な
計算環境を提供
• 情報科学者と科学計算ユーザとが分離
• 情報科学が遅れる原因
→1980年代後半のワークステーション時代に初めて普及
– X Window System による日本語表示
Internet
ARPAnet
• 1957年:ソ連が人工衛星スプートニク
打ち上げ成功
• 1960’s終りから核戦争を想定した防衛
システム基礎研究としてARPAが行う
パケット通信計算機接続の研究
– スタンフォード研究所(SRI)、カリフォルニア大学、ユタ大学
– 1967年:UCLAとSRIで最初のデータ通信
– 1983年:研究目的ネットワークとして独立
• 基本設計
– 中心のないシステム, 分散統合システム
• どこのホストコンピュータが核攻撃によって 蒸発してもどこかのコン
ピュータが生き残り, ネットワーク全体としては機能が維持される
– パケットによる通信
– プロトコルの標準化
• TCP/IP(Transmission Control Protocol / Internet Protocol)
初期の接続経路
An atlas of cyber spaces
http://www.cybergeography.org/atlas/arpanet_sept1973_large.gif
ARPAnetのプロトコルの標準化
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へ(1)
internet (小文字):
• TCP/IP でつながれたネットワークの集まり, メタネット
ワークのことをいう.
– 複数の network を相互につないだもの (米国では高速道
路網を interstate という, そのもじり).
• TCP/IP 接続の特色はこのメタネットワークがあたか
も一つのネットワークのごとく利用者からは見えるとこ
ろにある.
– 複数のネットワークが接続されてできていることを全く意識
しないで良い.
Internetへ(2)
Internet (大文字):
• TCP/IP で接続されたネットワークのうちの,
ARPAnet をルーツに持つネットワークのことをいう.
– Internet とは国際的な共同運営団体に加盟し, 整合性を
保ったアドレス管理, 経路制御などの運営をしているものた
ちである.
日本のインターネットは大学から
• Internet の黎明: ネットワーク研究接続
– 日本のInternetは大学のネットワーク研究活動に端を発
し, 科学一般の研究室がワークステーションを使いだした
時代と一致して急速に広まった
– 文化的背景:Unix文化の継承=基本的に古きよき大学
の精神
•
•
•
•
自力更生(自分のことは自分でやる)
自分で自分の環境を構築できる. 自分の責任において何をやっても良い.
無保証
ボランティア(相互扶助)
– 研究室から学科, 学部, 大学, 研究所, そしてそれら相互
のnetwork 同士を接続し, 自分のネットワーク上を他人
のパケットが通過することを許容することにより総体とし
て Internet を作っていっていった
日本におけるインターネットの黎明
• Internet の黎明: 研究実験接続の時代
– WIDE 1988 年-現在 (村井純)
•
ネットワーク接続実験
– TISN 1989 年 ~ 1996 年(釜江常好)
•
•
•
日本のインターネットの拡大には高エネルギー
物理学がリード(∵金持ちでDEC持ち)
東京大学国際理学ネットワーク
最初の日米回線、 つまりInternet
http://biography.sophiait.com/imgb/bimu001.png
http://www.slac.stanford.e
du/slac/faculty/hepfaculty/
kamae.html
日本における Internet の発展: プロバイダへ
• プロバイダ=Internet 接続サービスの提供「組織」
– 組織のネットワークを接続するためのネットワークが分化
• SINET (1991 年末):大学・研究機関
–
–
–
–
本格的に整備されたのはこの 1994 年春あたり.
文部科学省による研究組織間接続のための業務レベル基幹ネットワーク.
学術情報センター(現在の情報学研究所)が管理運営.
SINET の下に各大学が独自のキャンパスネットを運営
• HINES, UTnet, Kuins, ...
• ISP ( Internet Service Provider)個人や企業
– IIJ が1992 年末, 開業
• 研究とは関わりのない業務でInternet に参加し通信をおこなうことがで
きることになった.
– 1995 年は Internet 元年と日本では呼ばれている
• プロバイダにより, 個々人や企業などが契約さえすれば Internet への
アクセス提供を実質的にうけられるようになったからである.
• web と ブラウザの普及により一般に見えるようになった
日本の大学におけるネット環境
• 日本における Internet の発展に大学や研究者個々人の活
動は触媒として有効に機能した.
– WIDEプロジェクトの役割が非常に大きい
– Unixのワークスステーションとしての普及と同時期に開始, むしろ
ネットワーク接続のためにUnixを導入するようになる
– 日本の大学の触媒機能
• 情報科学発展に対してはいまいち(各業界との交流があまり生まれな
かった)
• 大型計算機・スーパーコンピュータの発展には大きく寄与
• Internet の発展には本質的に寄与
• このことが逆に大学におけるネットワークの運用を現在困難
にしている
– 予算がないこともあり昔と同じままの体制(使う人が作る人=利用者
は高いモラルと技術知識を持っていることが前提)
X window system
文字を書く計算機から絵を描く計算機へ
• ビットマップディスプレー: 文字と絵を同時に扱かえる
– それまではキャラクターディスプレーとグラフィックディスプ
レーを別個に
– マルチウィンドウ=ディスプレーをいっぱい持ってるのと同じ
• X Window System
– MIT:産官学共同研究開発の中心 (MIT X コンソーシアム)
• ワークステーション
– 三種の神器 BSDUnix+TCP/IP+X を備えた机上サイズ計算機
X window systemの偉大な点
• 規格化(標準化)とサーバー・クライアント
– 個々の命令セットが体系化され標準規約化:Athena Widget
– ディスプレー, マウス, キーボード, スピーカーなどの人間機械インター
フェースを支配するサーバ
– 文字の表示, 絵の表示, 音の発生等々は個々のソフトウェア(クライアン
ト)が担当
• ネットワーク透過(network transparent)
– 遠方の資源を仮想資源として利用.
– ウインドウを飛ばす
• 日本語が表示できるようになった
– ようやく日本でも計算機から情報処理環境(文房具)へ
– それまでは文字処理と数値処理はまったくの別物
• UNIX、Xのアイディア・技術は他のOSの発展にもつながる
計算機の発展(3)
インターネット爆発と情報革命
情報処理装置としての計算機
• ハードウエアの進歩、普及と低価格化→ダウンサイジング
(downsizing)
• ダウンサイジング第一期:1980 年代後半~1990 年代前半
– 汎用機からワークステーションへ
– 計算作業環境の変遷
• 計算機の配線
• メディア:紙テープ, カード
• 端末
• ダウンサイジング第二期: 1990 年代後半
– ワークステーションからパソコン(Macintosh, WindowsとAT互換機)へ
– ワークステーションは特殊用途へ
– ほとんどの作業はPCで
• パソコンの登場は1980年代, どちらかというとゲームから出発し, 文房具
(清書道具)として実務で本格的に使われるようになったのは1980年代後
半(DOSの登場と一太郎などのワープロソフト)
PC9801
山田学氏撮影(2007.10.20) 於
NEC府中事業所の応接棟内展示
世の中における計算環境の普及
• 世の中みんなネットワーク・計算機
– DS-light もPS3も Wii も「高性能計算機」
– 本を買うのもアニメを見るのもインターネットで
• 情報化時代
http://www2.ttcn.ne.jp/
~honkawa/6200.html
Internetの大発展
• 1990年代後半の爆発
– 下地
• Windows と AT 互換機 (MS-Intel 帝国)の普及
• Internetの民営化 (ISP, 日本では 1992)
– 起爆剤=WWW (サーバ)と ブラウザ(クライアント)
• CERN → Apache
• NCSA mosaic → Netscape
• WWW = W3 = World Wide Web
• html = hypertext markup language
• 検索エンジン:1990 年代後半
– Yahoo1995
– Google1998
• Bush (1945)の夢が実現?
おわりに
知の爆発と情報革命
一連の流れの背景思想
Vannevar Bush (1945)
MITの副学長, 第二次大戦中は国防研究委員会議長, レーダーから対
潜水艦作戦, マンハッタン計画にいたるまでの兵器開発計画の監督.
人類の課題=知の爆発への対応
http://en.wikipedia.org/wiki/Vannevar_B
ush
メメックス(memex)
• V. Bush:
– 人類にとっての真の挑戦は原子をさらに細かく調べたり生命の複雑
さを探求したりすることではなく, 科学技術が氾濫させる情報のよりよ
い管理方法を発見することだ.
– Memex=関連がある異種の情報を一つに結び付ける装置で, これに
より, 誰もが自分専用の情報を整理蓄積できるようになる.
• 弁護士はボタンを押すだけで, 彼自身の経験ばかりでなく 友人や関係当局の経
験から得られた関連意見や決定を呼び出せる. 弁理士も依頼人の希望に応じて,
数百万件もの特許を即座に調べることができる. 医師も診断に迷った場合には類
似した症例を手早く調べたうえ, ついでに解剖学や組織学などの書物まで参考に
引くことができる. 膨大な記録を整理して誰もが活用できるようにすることによろこ
びを見いだす, 先駆的な新しい職業も生まれてくるだろう.
情報化時代の科学とは
• 科学者
– 新たな知見を見出す人
– 情報を作る人
– 一次生産者
• 情報化時代の科学(V.Bush1945)
– 細分化専門化,情報の爆発
– 情報の流通,加工,掌握が科学においても大きな役割
• 「先進国」の要件
–
–
–
–
情報の掌握
情報利用者だけの国は先進国から脱落
グローバリゼーションの恐怖
日本では大幅な出遅れ
V.Bush (1945)の実践
地球惑星科学の情報化
• 計算機に地球惑星科学の知識を教えていく
– 我々の知識の形を明らかにすること
• われわれが何を知っているかを知ること
– コンピュータが相互にやり取りできる知識データ
の構造
• 知識の標準化
– それぞれの専門分野の人々が情報科学の発見
発明をそれぞれの分野の知識の集積に対して実
際に活用して行うことが必要
参考書, 参考文献
• Bush, V., 1945: As we may think. Atlantic Monthly, 1945
July, 101-108.
• 朝日ジャーナル編1989:世界経済三国志:覇権の150年,
42節, 朝日新聞社
• 村井純, 1997: インターネット, 岩波新書 新赤 416, 岩波書
店.
• 村井純, 1998: インターネットII, 岩波新書 新赤 571, 岩波書
店.
• 歌田明弘, 2000: 本の未来はどうなるか 新しい記憶技術の
時代へ, 中公新書 1562, 中央公論新社
• D. Libes & S. Ressler 著, 坂本 文 訳, 1990: Life with Unix,
アスキー.
• 坂村健, 2002: 痛快! コンピュータ学, 集英社文庫.
• 水村美苗, 2008: 日本語が亡びるとき―英語の世紀の中で,
筑摩書房, 330pp.
• ITホワイトボックス http://www.nhk.or.jp/itwb/