class: title, smokescreen, shelf, no-footer # クラウドコンピューティング<br><small>第06回 コンピュータの構成要素と階層概念</small> <div class=footnote> <small><small> 3年、秋学期、選択; 旧「オペレーティングシステム」; ;脚注はELや定期試験の範囲ではありません </small></small> </div> --- class: compact,img-right # <small>コンピュータの構成要素【ほぼ復習】</small> <div class=footnote> <small><small> (脚注) 復習 <- たいていは「情報〜概論」とか「コンピュータアーキテクチャ」といったタイトルの科目で取り上げているはず </small></small> </div> ![height240px](../../../os/internal/basic/images/5elements.png) ![height240px](/images/nsrg/NEC_110rb-1h_internal__P_20211014_175658.jpg) <small> - コンピュータは多くの要素(部品)が組み合わさって動いています <small> - CPU、メモリ、ストレージ(HDD,SSD)、ネットワーク、時計、... </small> - 部品を共用しているとも言えます <small> - たとえば、一つのOSを複数のユーザで利用しているので、メモリも共有しています </small> - 右図も参照 <small> - 右図(上)は「五大装置」(基本情報処理試験の出題範囲、基本中の基本) - 右図(下)はサーバ機の蓋を開けた様子 </small> </small> --- class: compact,img-right # <small>デバイスドライバ</small> <div class=footnote> <small><small> (脚注1) すぐに4文字略称を考える日本人なので、業界人は「デバドラ」と発音しています <br> (脚注2) モノによってはOSが起動した後にデバイスドライバを追加することも出来ますが、 基本は起動前に、つまり最初からOSの(配布物の)中にデバイスドライバが含まれている必要があります。 対応するストレージやネットワークなどのデバドラがないとOSが起動すらできません。 なお、新しいハードウエアが登場したら、当然そのデバイスドライバを開発する必要があります </small></small> </div> ![height240px](/images/nsrg/NEC_110rb-1h_internal__P_20211014_175658.jpg) - 部品を挿せば動くわけではありません - 部品ひとつひとつが小さなコンピュータで、OSから、その部品を読み書きする必要があります - そのため、OSの中には各デバイスごとの専用プログラムが搭載されています。 これをデバイスドライバと呼んでいます --- class: compact,img-right # <small>仮想記憶システム(Virtual Memory)の必要性</small> <div class=footnote> <small><small> (脚注) 本科目で「仮想記憶の動作原理」は扱いません。それは大学院の授業いき </small></small> </div> ![height400px](../../images/physical-memory-maps.png) - TSSの特徴はマルチユーザつまり一つのOSを同時に複数のユーザが使えることです。 とうぜん複数のプロセスが同時に動いています - 同時に複数のプロセスが動くので、メモリ上にも同時に複数のプロセスがロードされています (右図はイメージ) --- class: compact,img-right # <small>仮想記憶システム(Virtual Memory)の目的</small> <div class=footnote> <small><small> (脚注1) 本科目で「仮想記憶の動作原理」は扱いません。それは大学院の授業いき <br> (脚注2) もともと必要だったのは1.で、これは今でも重要な機能です。 一方2.は、(むりやりにでも)巨大なメモリを利用したいという需要が生んだ機能です (例:人工知能(シンボリックAI)のためのLISPマシンとして使いたい)。 ただし、2.には無理があるので猛烈にプロセスの動作が遅くなります。 この使い方は推奨できません。 昔はメモリが小さかったので仕方ないのですが、 昨今のメモリは安価なので、 無理なことは考えず、金で解決(札束を用意してメモリを購入:-)するべきです <br> (脚注3) もうすこし詳細な説明をすると、 1.の機能は「プログラマがメモリ空間の使い方を気にせずプログラムを書ける」ために必要です。 本来は(物理)メモリのどこに何を配置してといったことを詳細に考えなければプログラムは動作しません。 そして、OSで動くプロセスが一つであれば、うまく動くかもしれませんが、 複数プロセスを動かしたら互いに衝突してしまいます。 だからといって、いちいちプログラマ間でメモリの使い方を相談しあうわけにもいきません。 VMの機能1.は、これを解決してくれます </small></small> </div> - VMの目的はおもに2つあります 1. 同時に複数のプロセスがメモリを利用できること 2. 物理メモリよりも巨大な仮想メモリ空間が利用できること </small> --- class: compact,img-right # <small>階層という概念</small> <div class=footnote> <small><small> (脚注1) 分類に関係する表現 ... クラス分け(classify)、カテゴライズ(categorize)、ソートする(sort)、グループ分け(grouping) <br> (脚注2) たとえば、Unixの場合、ファイルもプロセス群も階層構造になっています。このあと演習で確認します <br> (脚注3) そもそも、分類することが学問とも言えます。 かつては学問=哲学でした。 いまの学問の分類はアリストテレスに由来しており、 極論「学問する」は「アリストテレスのように考えること」です。 ただし「論理的定義=階層型分類」は師匠のプラトン由来 </small></small> </div> ![height240px](../../../os/internal/storage/images/tosyokan_book_tana.png) ![height180px](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgB96uIO0XucTeJzFG1M0Oz0OFMy6XqBMbegSJrfFuHISXPghBh8YHbSHmvg38XYdppKqqTZ2xQfIwQD-zGNgAkQ0PvJ4bTEZRsLYYkWt0KYLrP3i2AxDJOOBD5-Gdy7u8bVF-kcGqWztbq/s800/computer_folder.png) <small> - 分類 = 階層 - 身のまわりでは本棚が代表例ですが、階層は1階層です <small> - 「情報関係の書物」「数学」の本棚のように内容の種類で置いてある場所が異なります - 本棚は複数階層ではなく「1階層でグループ分けされている」と考えられます </small> - コンピュータの部品(物理)も概念(論理)も細かく分類して考えていけます </small> --- class: compact,img-right # <small>階層型ファイルシステム</small> <div class=footnote> <small><small> (脚注1) 次回以降、ファイルシステムをもう少し詳しく取り上げます (脚注2) 論理的にはファイルシステムの無限の階層化が可能です </small></small> </div> ![](../../../os/internal/storage/images/dir-tree.png) ![height180px](../../../os/internal/storage/images/tosyokan_book_tana.png) ![height180px](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhljj9__n5f7Jx0ZRN8Ff2c5pW81HXVXOQEYKjQL2Fs7hjPeM-ctiLZqTPwIiB9qj5WjgLsupx7G0tIFXBknZKjKHJUw23ZfmwaXCwSsmqTYZN3Ew5DTSgKMlRfJumtdWorbeL4Uu3PD-k/s450/matryoshkas.png) <small> - ファイルは本、ファイルを格納するフォルダ(ディレクトリ)は一つの本棚と考えられます - コンピュータは論理空間なので、この本棚も階層構造に出来ます - 本棚(/)の中にはファイルも置けるし、より小さな本棚(usr)も作成できます。 さらに本棚(usr)の中に本棚(bin)を作り、その中に本(vi)を置けます。 これがviの実体(/usr/bin/vi)。 この仕組みを(階層型)ファイルシステムと呼んでいます(図上) - 本棚は1階層しかない例(図の下左) - マトリョーシカのイメージ(図の下右) </small>