情報リテラシー コンピュータの構造と応用 今日の内容 コンピュータの五大

今日の内容
情報リテラシー
コンピュータの構造と応用
• コンピュータ解体
– コンピュータの構成を学ぶ
• オペレーティングシステム(OS
)について
オペレーティングシステム(OS)について
– OSの役割や基本概念を学ぶ
OSの役割や基本概念を学ぶ
石橋 直樹
E-mail: naoki@komazawanaoki@komazawa-u.ac.jp
• プログラミング言語とは…
プログラミング言語とは…
• コンパイラって何?
コンパイラって何?
コンピュータの基本構成部品
(外観)
コンピュータの五大装置
• (1)制御装置
と(2)演算装置
をあわせて中央処理装置(CPU
(CPU:
:Central
(1)制御装置と
(2)演算装置をあわせて中央処理装置
Processing Unit)と呼ぶ。
Unit)と呼ぶ。
• (3)記憶装置
は主記憶装置と補助記憶装置から構成されている。
(3)記憶装置は主記憶装置と補助記憶装置から構成されている。
• (4)入力装置
、(5)出力装置
、補助記憶装置をあわせて周辺装置と呼んでい
(4)入力装置、
(5)出力装置、補助記憶装置をあわせて周辺装置と呼んでい
る。
• 本体
– ディスプレイ、プリンタ(出力装置)
– キーボード、マウス(入力装置)
補助記憶装置
入力装置
主記憶装置
記憶装置
制御装置
出力装置
周辺装置
演算装置
中央処理装置(CPU)
コンピュータの基本構成部品
(内部概略)
• マザーボード
– CPU、メモリ(主記憶装置)
CPU、メモリ(主記憶装置)
– ビデオカード、USB
カード、IEEE1394
IEEE1394カード、ネ
カード、ネ
ビデオカード、USBカード、
ットワークカード、サウンドカード
– フロッピードライブ、ハードディスク、CD
-ROM
フロッピードライブ、ハードディスク、CD-
(補助記憶装置)
コンピュータの基本構成部品
(内部詳細Ⅰ)
• マザーボード
– もっとも重要な部品(基本性能を決定付ける)
– CPU、メモリ、各種インターフェース(
FD,IDE
IDE))がある。
CPU、メモリ、各種インターフェース(FD,
– 各種カードをさすバススロットがある。
» ISA,
ISA,PCI
• 参考サイトhttp://
www.mars.dti.ne.jp/~oohara/
/
参考サイトhttp://www.mars.dti.ne.jp/~oohara
コンピュータの基本構成部品
(内部詳細Ⅱ)
• ビデオカード
– ディスプレイに映像を出力する。
– 出力端子
» VGAが標準
VGAが標準
– 性能
» 内部メモリの容量によって、扱える解像度と色数が決まって
くる。
» 例:DynaBook
例:DynaBook SS 3300(
3300(2.5MB)の場合
2.5MB)の場合
• 1,280×
:256色、
色、1,024
1,024×
×768ドット
:1,677万色、
万色、
1,280×1,024ドット
1,024ドット:256
768ドット:1,677
• 800×
:1,677万色、
万色、640
640×
×480ドット
:1,677万色
万色
800×600ドット
600ドット:1,677
480ドット:1,677
コンピュータの基本構成部品
(内部詳細Ⅳ)
• ネットワーク(Ethernet
)カード
ネットワーク(Ethernet)カード
– インターネットに接続するのに必要
– ケーブルの種類
» 10Base10Base-T…ツイストペアケーブルを使用
ツイストペアケーブルを使用
» 10Base10Base-2 ・・・細い同軸ケーブルを使用
» 10Base10Base-5・・・通称イエローケーブルを使用
オペレーティングシステム(OS)
とは?
• コンピュータシステムの各種資源を管理
し,アプリケーションがこれを利用できるよ
うにする基本ソフトウェア.
• 例:WindowsXP
例:WindowsXP,, MacOS X, Linux,
Linux,
FreeBSD,
FreeBSD, Solaris
– マルチタスク(ある1つのコンピュータシステム
マルチタスク(ある1つのコンピュータシステム
で,複数のプログラムを同時に実行すること)
C.F タイムシェアリング
コンピュータの基本構成部品
(内部詳細Ⅲ)
• USB,
社のFirewire
Firewire,, Sony社の
USB, USB2,
USB2, IEEE1394(Apple
IEEE1394(Apple社の
Sony社の
iLINK),
iLINK), Bluetooth
– 近年、Plug
近年、Plug & Play(
Play(つないだらすぐ使える)
つないだらすぐ使える)により外部機器へ接続
する技術が広く使われている
– それぞれ、転送速度、ケーブルの形状
等が異なる
それぞれ、転送速度、ケーブルの形状等が異なる
– USB(USB 1.x)は爆発的に普及した規格で、近年発売されたコン
1.x)は爆発的に普及した規格で、近年発売されたコン
ピュータにはほぼ付属している
– IEEE1394は
IEEE1394はUSBに比べ高速なデータ転送を実現しているため、
USBに比べ高速なデータ転送を実現しているため、
DV(Digitai Video)等の機器で普及が進んでいる
Video)等の機器で普及が進んでいる
– Bluetoothは無線により周辺機器を接続する規格で、情報家電等
Bluetoothは無線により周辺機器を接続する規格で、情報家電等
への応用が期待されている
– USBフラッシュメモリ、外部ハードディスク、
CD-R、DVDUSBフラッシュメモリ、外部ハードディスク、CD
DVD-RW、ス
RW、ス
キャナ、プリンタ等、近年販売されている外部機器は概ねこれら
の規格により接続される
コンピュータの基本構成部品
(内部詳細Ⅴ)
• サウンドカード
– 音声を入出力するカード
– 音声をやり取りする端子がついている
» イヤフォン出力端子
» スピーカ出力端子
» マイク入力端子
OSの必要性
• コンピュータの複雑化
– コンピュータ操作の複雑化
» ユーザビリティーの向上(GUI
)
ユーザビリティーの向上(GUI)
– プログラムの多様化
• プログラムとコンピュータのギャップを埋める必
要性
ユーザー
プログラム
>オペレーティングシステム
コンピュータ
OSの役割
• コンピュータの実体の抽象化
– ハードウエアをあまり意識させない
– 使いやすいインターフェースの提供
– プログラミングの負荷の軽減
• コンピュータ資源の管理
– 複数のプログラムを同時に実行
– プログラムによるシステムの破壊を防ぐ
– コンピュータ資源の効率的な利用を助ける
OSの概念Ⅰ
• プログラム
– コンピュータが行う処理を記述したもの
• プロセス
– コンピュータの行う仕事の単位
– 1つのプログラムを処理する
• レストランの例
– 客(ユーザ)、レシピ(プログラム)、コック(プロセス)、
料理長(OS
)
料理長(OS)
OSの概念Ⅱ
• ファイル
OSの概念Ⅲ
• カーネル
– データの記録単位
• ディレクトリ(フォルダ)
– ファイルやディレクトリ(フォルダ)の入れ物
– 階層的なデータの管理が可能
– コンピュータ資源を直接操作するプロセス
• ユーザプロセス
– ユーザの命令を実行するプロセス
• シェル
– ユーザの命令を受け付けるプロセス
仮想記憶(メモリ)
• 仮想メモリ領域のごく一部だけに物理メモリを割
り当てることで,物理メモリ量を超える仮想メモリ
空間を作り出したり,複数の仮想空間を作り出し
たりする.
• 物理メモリが不足すると,一定時間以上アクセス
されていない物理メモリの一部をスワップファイ
ルと呼ばれる一時ファイルに待避し,その物理メ
モリを空きにする.
タイムシェアリング
• 1つのCPU
は同時に1つの仕事しか出来ない
1つのCPUは同時に1つの仕事しか出来ない
• 複数のプロセスを見かけ上同時に実行する.
プロセスD
プロセスC
プロセスB
プロセスA
時間
コンピュータの計算
• コンピュータはスイッチの集まり
– 電気が流れる状態と流れない状態
• スイッチのON/OFF
で情報を現す
スイッチのON/OFFで情報を現す
– 1個のスイッチで表現できる情報量は1であ
り,その単位は「bit(ビット)」という.
• ビットの集まりで数字を表現
「数の表し方」
• 10進数
10進数
– 0から9
個の数字と位取り
から9まで10
まで10個の数字と位取り
• 2進数
– 1と0の2個の数字と位取り
• 2進数の計算
– 1+1=10!
• 補足(指を用いて2
補足(指を用いて2進数を数える方法)
ビットとバイト
8進数と16進数
• ビットの数と表せる数
• 2進数の欠点
– 大きな数を表せば表すほど桁数が膨大になる
1bit
2bit
3bit
4bit
5bit
• 8進数・・・4bits
を一つにまとめる
8進数・・・4bitsを一つにまとめる
– 0から7までの8つの数字で表現
• 16進数
…8bitsを一つにまとめる
16進数…
8bitsを一つにまとめる
– 0から9までとA,B,C,D,E,Fで表現
•例
– 11(8)=9(10)
2A(16)=42(10)
2
4
8
16
32
6bit
7bit
8bit
9bit
10bit
64
128
256
512
1024
• byte(バイト)・・・何ビットかの集まり
– 通常,1byte
は 8bitsを示す
通常,1byteは
– 8bits=
8bits=1octet(オクテット)
1octet(オクテット)
• word(ワード)
word(ワード)
– 1word=16bits
機械語:CPUの命令
• 計算機が理解できる言語(機械語)は、そ
のCPUの命令
CPUの命令
• デジタル電子計算機では、CPU
の命令は
デジタル電子計算機では、CPUの命令は
電気的なデジタル数値
– 10000111 = ADD A,(HL)
» メモリからデータを読み出し、加算する
CPUの中身
• 算術演算ユニット
– 計算を行う
• レジスタ
– 値の一時的な記憶
• BUS
– 情報が流れる回線
計算の役割分担
• メモリ
– データやプログラム(命令)を格納する
• レジスタ
プログラムの制御
• 通常,プログラムはプログラムカウンタで示され
る番地から順番に実行される
– 順次処理、逐次処理
– 数値を一時的に記憶する入れ物
• ALU(Arithmetic Logical Unit)
– 演算装置.基本的な演算を行う
• プログラムカウンタ(レジスタの一種)
– 次に実行する命令の位置
プログラミング言語とは?
• プログラムは計算機の動作を記述したもの
cf. アルゴリズム
• プログラムを作成することをプログラミング
といい、その言語をプログラミング言語とい
う
• プログラムカウンタの値を変更する命令を用意す
ることで,プログラムの流れを制御することがで
きるようになる.
– 分岐,条件分岐
• プログラムは実行を中止することができる.
プログラミング言語の歴史
• 低水準言語
– コンピュータの命令体系そのものに相当するか、それ
を強く意識した言語。
– CPUに依存,機械語,アセンブリ言語
CPUに依存,機械語,アセンブリ言語
• 高級言語
– 利用者がハードウェアをあまり意識しなくても、処理を
容易に記述できるよう設計された言語。
– CPUに依存しない。
Fortran,
,Pascal, C, Basic, Perl
CPUに依存しない。Fortran
• オブジェクト指向言語
– 大規模開発向き。C++,
大規模開発向き。C++, Java
コンパイラ
• テキスト形式のプログラムをソースプログ
ラムといい,実行可能形式のファイルをオ
ブジェクトファイルという
• ソースプログラムをオブジェクトファイルに
変換することをコンパイルといい、それを行
うプログラムをコンパイラという
コンパイラとインタプリタ
• コンパイラ(
コンパイラ(例:C
例:C言語 etc)
– プログラムを一括翻訳する
– 実行が速い
– デバッグに手間がかかる
• インタプリタ(
インタプリタ(例:Basic
例:Basic etc)
– プログラムを翻訳しながら実行する
– 実行が遅い
– デバッグが簡単
ハードディスクドライブ