• 検索結果がありません。

オペレーティングシステム

N/A
N/A
Protected

Academic year: 2021

シェア "オペレーティングシステム"

Copied!
24
0
0

読み込み中.... (全文を見る)

全文

(1)

オペレーティングシステム

樋口さぶろお

龍谷大学理工学部数理情報学科

情報処理の基礎

L12(2015-01-07 Wed)

今日の目標

オペレーティングシステムの例を挙げられる オペレーティングシステムの機能を説明できる コンピュータが起動してから

Word

Excel

が 同時に起動するまでに起きることを

(

一定の詳

しさで

)

説明できる http://hig3.net

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 1 / 24

(2)

略解:アセンブリ言語と機械語

L11-S1

Quiz

略解

+

コメント

:

機械語 略解

読込

[A][1200]

読込

[B][1204]

演算

(

加算

)[A][B]

書出

[A][1214]

読込

[A][1208]

読込

[B][120C]

演算

(

減算

)[A][B]

演算

(

減算

)[A][B]

読込

[B][1214]

演算

(

乗算

)[A][B]

書出

[A][1210]

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 2 / 24

(3)

オペレーティングシステム オペレーティングシステムとは

ここまで来たよ

1 略解

:

アセンブリ言語と機械語

2 オペレーティングシステム オペレーティングシステムとは

OS

によるモジュール化

OS

によるマルチタスク化 マルチタスクの管理

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 3 / 24

(4)

オペレーティングシステム オペレーティングシステムとは

オペレーティングシステムとは

現在の一般的なコンピュータの構成

計算機システム

=

ハードウェア

+

ソフトウェア

=

ハードウェア

+ (OS + AP)

OS=Operating System

オペレーティングシステム

AP=Application Program

アプリケーションプログラム ハードウェアコンピュータの機械としての実体

.

語源

:

金物

種類の例

: PC, Mac, Android

タブレット

, iPad, · · · .

AP

それ自体

,

人間にとって意味のある入出力をするプログラム 例

:

ワードプロセッサ

, Web

ブラウザ

,

エディタ

, · · · .

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 4 / 24

(5)

オペレーティングシステム オペレーティングシステムとは

オペレーティングシステムの目的と機能

オペレーティングシステム

AP

の実行を助け

,

調整する基本ソフトウェア オペレーティングシステムの目的

ソフトウェアのモジュール化

:

ソフトウェアの開発と保守を楽にする 計算機システムのマルチタスク化

:

複数の

AP

を独立

/

協調して実行 させる

その方法

:

仮想化

=virtualization

AP

,

ハードウェアの機能をそのまま使わず

,

ハードウェアのふるまい を真似るソフトウェア

(=

いまは

OS)

を通して利用するようにする

.

オペレーティングシステムの例

Windows (PC)

Linux (PC,

いろいろ

) Ubuntu, Redhat, Fedora, SuSE, · · · Unix (PC,

いろいろ

) Solaris, FreeBSD, · · ·

OS X (Mac) Android (

いろいろ

) iOS (iPhone, iPad)

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 5 / 24

(6)

オペレーティングシステム OSによるモジュール化

ここまで来たよ

1 略解

:

アセンブリ言語と機械語

2 オペレーティングシステム オペレーティングシステムとは

OS

によるモジュール化

OS

によるマルチタスク化 マルチタスクの管理

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 6 / 24

(7)

オペレーティングシステム OSによるモジュール化

OS によるモジュール化

これまで語ってた計算機システム

OS

のある実際の計算機システム

論理

物理

上のレイヤー

(

)

,

下のレイヤーの機能を利用している

.

上が下に依存 している

.

仮想化

=

あるレイヤー

(

AP)

の下にソフトウェアのレイヤーをはさむ

. AP

の直下をハードウェアからソフトウェアに変更する

.

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 7 / 24

(8)

オペレーティングシステム OSによるモジュール化

ライブラリ

多くの

AP

が共通に持ちたい機能がある

.

AP

が持つと開発も配布 もたいへん

ハードウェアよりのプログラム

(

:

キーボード読取プログラム

)

ハードウェアごとに異なる

.

全ソフトウェアメーカーにキーボード 読取プログラムを送りつける

?

新しいキーボードが発売されるたび に更新

?

そういう部分は

OS

に任せ

,

AP

OS

の機能を呼び出す

. OS

側の

,

サービス受付窓口

:

API

= Application Programming Interface

似た概念

:

ライブラリ

,

システムコール

ライブラリの例

printf, scanf,

ファイル保存ダイアログ

,

コピーバッファ ユーティリティプログラム

ユーザが直接使うが

,

計算機システムの保守

,

調整に使うもの

.

: Windows Update.

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 8 / 24

(9)

オペレーティングシステム OSによるモジュール化

Quiz(

オペレーティングシステム

)

次のうちオペレーティングシステム

(OS)

についてうそはどれ

?

1 オペレーティングシステムはプログラミング言語で記述されたプロ グラムである

2 アプリケーションプログラムの種類のほうが

, OS

の種類よりも多い

3 アプリケーションプログラムよりも

OS

のほうがハードウェアに近い

4 同じ

PC

なら

, OS

が異なっても

,

同じアプリケーションプログラムが そのまま動作する

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 9 / 24

(10)

オペレーティングシステム OSによるマルチタスク化

ここまで来たよ

1 略解

:

アセンブリ言語と機械語

2 オペレーティングシステム オペレーティングシステムとは

OS

によるモジュール化

OS

によるマルチタスク化 マルチタスクの管理

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 10 / 24

(11)

オペレーティングシステム OSによるマルチタスク化

OS がない計算機システムの起動から終了まで

1 何らかの方法で人間がメモリに

1

個の

AP

のプログラムを書き込ん でおく

2 人間が電源オン

3

PC=0000

から実行開始

4

AP

のプログラムが演算や入出力を行う

5 プログラム内の停止命令で停止

6 人間が電源オフ

レストランの例 レストランの調理場に例えると…

自分の言葉でどうぞ

1

1

.

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 11 / 24

(12)

オペレーティングシステム OSによるマルチタスク化

こうだと便利なのに…

人間の気まぐれに次々に

AP

を実行したい ハードウェアよりソフト ウェアのほうが楽

複数の

AP

を同時に実行したいマルチタスク 複数の

AP

を協調させて動作させたい 例えば

自分の言葉でどうぞ

複数のユーザが同時に

1

個のコンピュータを使いたい

Windows

Linux

では実際にそういうことが可能になっている

.

現在実行されているプロセスを観察する方法

次週

Windows

タスクマネージャー

Control+Alt+Delete Linux

ターミナルで

ps aux

iOS

ホームボタンダブルクリック

(AP

のみが表示

)

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 12 / 24

(13)

オペレーティングシステム OSによるマルチタスク化

OS のあるコンピュータの起動

1

0000-1000(

)

のメモリは

ROM.

ここにブートローダというプログ ラムが書き込まれている

2

PC=0000

でブートローダが実行される

.

3 ブートローダは

,

補助記憶装置

(

ハードディスク

)

からメモリ

(RAM)

1000(

)

以降に

OS

というプログラムを読み込む

4 分岐命令により

PC

1000

を指す

5

OS

はユーザの入力をうけとる

.

6 ユーザが

AP

の実行を指示するたびに

, AP

のプログラムが補助記憶 装置

(

ハードディスク

)

からメモリ

(RAM)

に読み込まれ

, CPU-

メモ リをエミュレートするプロセスが作られて実行される

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 13 / 24

(14)

オペレーティングシステム OSによるマルチタスク化

これまで語ってた計算機システム

マルチタスクな計算機システム

ブートする

=

起動する 語源

: bootstrap,

ブートストラップ

(

くつひも

)

エミュレートする

=

模倣する

プロセス

=

プロセッサに処理されるもの

. CPU=Central Processsing Unit.

レストランの例

OS=

キッチンマネージャー

複数の注文がいろんなタイミングで来たときに

,

料理人に割り振り

,

コン ロ

,

材料

,

水道の利用を管理し

,

味付けが混ざらないようにする

.

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 14 / 24

(15)

オペレーティングシステム OSによるマルチタスク化

シェル

実行の指示を受け取るユーティリティプログラム

Linux

ならターミナルの中で動いているプログラム

.

指示方法

:

./a.out

Windows

ならエクスプローラやタスクマネージャ

.

指示方法

:

ダブル

クリックやファイル名指定

.

iOS

ならホーム画面

.

指示方法

:

アイコンタッチ

シェルは

OS

の皮膚にすぎない

.

語源

:

貝の貝殻

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 15 / 24

(16)

オペレーティングシステム OSによるマルチタスク化

Quiz(

マルチタスキング

)

次のうち

, OS

のマルチタスキング機能を活用しているわけじゃないのは どれ

?

1

Word

Excel

を同時に開いてコピーアンドペースト

2 プリンタに印刷している間もワープロで編集ができる

3 シューティングゲームで敵機が動いている間も自機は動ける

4 ワープロ使っているうちに自動的に

Windows Update

されてた

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 16 / 24

(17)

オペレーティングシステム マルチタスクの管理

ここまで来たよ

1 略解

:

アセンブリ言語と機械語

2 オペレーティングシステム オペレーティングシステムとは

OS

によるモジュール化

OS

によるマルチタスク化 マルチタスクの管理

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 17 / 24

(18)

オペレーティングシステム マルチタスクの管理

CPU の管理 = プロセス管理

本当の

CPU

1

個しかないのにどうやって複数プロセス

?

両方のプログラムをメモリにおき

,

時分割

=

タイムシェアリング方式で 実行

.

OS

が管理して

,

一定時間

(

:10

3

s)

ごとにタスク

A,B,C,. . .

の間を切り 替える

.

タスク切替

=PC

を適切な値におき

,

レジスタの値を復元する

.

レストランの例 複数の料理を同時に作りたいのにコンロは

1

個しか ない…

自分の言葉でどうぞ

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 18 / 24

(19)

オペレーティングシステム マルチタスクの管理

メモリの管理

実記憶

(

物理的

)

仮想記憶

(

論理的

)

プロセスからはアドレス連番のひとつながりのメモリ

(

仮想記憶

)

が見え るが

,

実際には

,

ページ単位で

,

メモリ

(

実記憶

)

上のいろいろな場所や

,

ハードディスクに置かれ

, OS

がアドレスを変換する

.

あるプロセスが

,

別のプロセスの仮想記憶にアクセスできないように

OS

が監視している

.

ページング 実記憶が不足したとき

,

一部を補助記憶装置

(

ハードディス ク

)

に置くこと

ページアウト 当面不要な情報をメモリからハードディスクに追い出す ページイン 必要に応じてメモリに戻す

速度と価格のトレードオフ

:

メモリはハードディスクより速いが

,

高価 レストランの例 調理台は狭い…

自分の言葉でどうぞ

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 19 / 24

(20)

オペレーティングシステム マルチタスクの管理

Quiz(

メモリ管理

)

次のうち

,

計算機のメモリを増設しても解消しなそうなものは

?

1 動画サイトの再生が始まるまでが遅い

2 ゲームを

5

個までは同時にできるけど

, 6

個目からは遅くなる

3 長い動画で

,

解像度を変更する編集に時間がかかる

4 表計算しているときに

,

最小化していたワープロを呼び出すのに時間 がかかる

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 20 / 24

(21)

オペレーティングシステム マルチタスクの管理

デバイスの共有・管理

2

種類のワープロから同時に「印刷」しても

,

文書が混ざって印刷される ことはない

OS

,

プリンタを管理していて

,

一度には

1

個のプロセスに許可を与え る

.

排他処理

他のプロセスの印刷要求は待機場所に貯められる

(

スプールされる

)

デッドロックの危険

レストランの例 複数の料理を作りたいのに炊飯器は

1

個しかない…

レストランの例 複数の料理を作りたいのに

2

人の料理人が炊飯器と圧力 鍋をとりあった…

自分の言葉でどうぞ

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 21 / 24

(22)

オペレーティングシステム マルチタスクの管理

補助記憶装置 ( ハードディスク ) の管理

2

種類のワープロから

同時

に「保存」しても

,

文書が混ざって保存され ることはない

ファイルという単位で制御されることが多い

.

出入はタイムシェアリング的に

.

レストランの例 複数の料理を作りたいのに冷蔵庫は

1

個しかない…

自分の言葉でどうぞ

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 22 / 24

(23)

オペレーティングシステム マルチタスクの管理

Quiz(OS

の機能

)

次のうち

, OS

の機能と関係してなさそうなのはどれ

?

1

C

の課題で

,

間抜けなプログラムを書いて実行しても

, Web

ブラウザ やエディタが悪影響を受けることはない

2

C

の課題で

,

無限ループを持つプログラムを書いて実行しても

, Control-C

で止めることができる

3

C

の課題で

,

ターミナルから自分のプログラムを実行できる

4

C

の課題で

,

どのコンピュータでも同じプログラムを実行すると同じ 結果になる

https://attend.ryukoku.ac.jp/

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 23 / 24

(24)

オペレーティングシステム マルチタスクの管理

連絡

2015-01-14

3

たぶん直前に教室変更

.

掲示

/

ポータル

/

メールに 注意

.

2015-01-14

/ 54

たぶんプチテストリベンジ希望者のみ参加

.

参加登 録受付中

.

プチテストと同じ出題計画

.

これと前回のプチテストのう ち

,

点数の高いほうを

30

ピーナッツ分とします

.

プチテストで

70%

以上を得た人は

,

無視してファイナルトライアルに集中することをお すすめします

.

2015-01-15

木 ごろまで

.

レポート問題提出期限

RaMMoodle

から個 人別問題取得

.

2015-01-21

水 たぶん補講

2015-01-28

3

たぶんファイナルトライアル

(40

ピーナッツ

)

別紙 参照

.

樋口のオフィスアワー 木

6(1-539),

金昼

(7-002/1-502).

チューターは月火水木昼

(1-614).

樋口さぶろお (数理情報学科) L12オペレーティングシステム 情報処理の基礎(2014) 24 / 24

参照

関連したドキュメント

③ コマンドプロンプトで「 nslookup remote.anyclutch.net 」を実行し remote.anyclutch.net の IP アドレスが 20.48.13.110 と表示されているか. →remote.anyclutch.net

1) 特に力を入れている 2) 十分である 3) 課題が残されている. ] 1) 行っている <選択肢> 2) 行っていない

 地表を「地球の表層部」といった広い意味で はなく、陸域における固体地球と水圏・気圏の

本節では本研究で実際にスレッドのトレースを行うた めに用いた Linux ftrace 及び ftrace を利用する Android Systrace について説明する.. 2.1

●お使いのパソコンに「Windows XP Service Pack 2」をインストールされているお客様へ‥‥. 「Windows XP Service

るエディンバラ国際空港をつなぐ LRT、Edinburgh Tramways が 2011 年の操業開 を目指し現在建設されている。次章では、この Edinburgh Tramways

Windows Hell は、指紋または顔認証を使って Windows 10 デバイスにアクセスできる、よ

ESMPRO/ServerAgent for GuestOS Ver1.3(Windows/Linux) 1 ライセンス Windows / Linux のゲスト OS 上で動作するゲスト OS 監視 Agent ソフトウェア製品. UL1657-302