第2回 プロセス管理 ジョブ、プロセスとは? プロセスの状態遷移 プロセス制御ブロック スケジューリング.

Slides:



Advertisements
Similar presentations
オペレーティングシステムと は オペレーティングシステム 第 3 回. 今回の講義内容 OS の目的 何のためにあるのか コンピュータの利用形態 パソコンだけではない いくつか補足.
Advertisements

第8回 今日の目標 §3.1 ソフトウェア 機械語と記憶装置の関係を示せる ソフトウェアの階層を示せる OSの役割を示せる
ARTLinuxの特徴 ARTLinux: ハードリアルタイム処理機能を拡張したLinuxカーネル 固定優先度に基づくスケジューリング機能
第3回 並列計算機のアーキテクチャと 並列処理の実際
コンピュータ概論B ー ソフトウェアを中心に ー #03 プログラムの実行形態 (前回の復習+残り)
オペレーティングシステム 第3回 プロセスの管理とスケジューリング
システムソフトウェア講義の概要 計算機システムの復習:中央演算処理装置(CPU),プログラムの実行,主記憶装置,補助記憶装置
計算機工学III オペレーティングシステム #14 ファイル: より進んだファイルシステム 2006/07/21 津邑 公暁
計算機システム概論・3回目 本日のトピック:割込みと入出力制御について 割込み制御について 問題点の明確化 割込みとは
セキュリティ機構のオフロードを考慮した仮想マシンへの動的メモリ割当
記 憶 管 理(1) オペレーティングシステム 第9回.
基本情報技術概論(第12回) 埼玉大学 理工学研究科 堀山 貴史
入 出 力 管 理 オペレーティングシステム 6/26/09.
第8回 今日の目標 §3.1 ソフトウェア 機械語と記憶装置の関係を示せる ソフトウェアの階層を示せる OSの役割を示せる
過負荷時のWebアプリケーションの性能劣化を改善する Session-level Queue Scheduling
オペレーティングシステム 第9回 実記憶管理 38号館4階N-411 内線5459
報告 (2006/9/6) 高橋 慧.
オペレーティングシステムJ/K 2004年10月7日
システムプログラミング 第11回 シグナル 情報工学科  篠埜 功.
仮想マシンの並列処理性能に対するCPU割り当ての影響の評価
P,Q比が変更可能なScaLAPACKの コスト見積もり関数の開発
記 憶 管 理(2) オペレーティングシステム 第10回.
ソフトウェア階層 分類 具体例 応用ソフト 基本ソフト アプリケーションソフト 個別アプリケーション SEやユーザが開発するプログラム
計算機システム概論・2回目 本日のトピック:プロセスについて プロセスとは プロセスのスケジューリングについて 多重プロセスの問題 排他制御
コンピュータ概論B ー ソフトウェアを中心に ー #03 プログラムの実行形態
Ibaraki Univ. Dept of Electrical & Electronic Eng.
第3回 CPUの管理と例外処理 OSによるハードウェアの管理 CPUの構成、動作 CPUの管理 例外処理、割り込み処理 コンテキストスイッチ
Ibaraki Univ. Dept of Electrical & Electronic Eng.
第5回 CPUの役割と仕組み3 割り込み、パイプライン、並列処理
割 込 み(1) オペレーティングシステム No.5.
システムプログラミング 第11回 シグナル 情報工学科  篠埜 功.
CONCURRENT PROGRAMMING
情報コミュニケーション入門b 第6回 Part1 オペレーティングシステム入門
第9回 プロセスの協調と排他制御 並行プロセスと資源の競合 競合問題 セマフォ 不可分命令の実装 プロセス間通信 PV命令
オペレーティングシステムとは オペレーティングシステム 第3回.
過負荷時のWebアプリケーションの 性能劣化を改善する Page-level Queue Scheduling
Occam言語による マルチプリエンプティブシステムの 実装と検証
過負荷時の分散ソフトウェアの 性能劣化を改善する スケジューリングの提案
第11章 UDPユーザ・データグラム・プロトコル
Xenによる ゲストOSの監視に基づく パケットフィルタリング
オペレーティングシステム (プロセス管理とスケジューリング)
オペレーティングシステム 第4回 プロセス生成とスレッド
オペレーティングシステム (プロセス管理とスケジューリング)
OSの仕組みとその機能 1E16M001-1 秋田 梨紗 1E16M010-2 梅山 桃香 1E16M013-3 大津 智紗子
オペレーティングシステム イントロダクション
Ibaraki Univ. Dept of Electrical & Electronic Eng.
オペレーティングシステム 第3回 プロセスの管理とスケジューリング
第7回 授業計画の修正 中間テストの解説・復習 前回の補足(クロックアルゴリズム・PFF) 仮想記憶方式のまとめ 特別課題について
コンピュータの基本構成について 1E16M001-1 秋田梨紗 1E16M010-2 梅山桃香 1E16M013-3 大津智紗子
情報コミュニケーション入門b 第6回 Part1 オペレーティングシステム入門
情報コミュニケーション入門e 第11回 Part1 オペレーティングシステム入門
オペレーティングシステム 第2回 割り込みとOSの構成
東京工業大学 情報理工学研究科 数理・計算科学専攻 千葉研究室 栗田 亮
担当:青木義満 情報工学科 3年生対象 専門科目 システムプログラミング 第6回 システムプログラミング概要 プロセスの生成 担当:青木義満
情報通信制御 情報通信工学科 3年 森村 知弘.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
オペレーティングシステムJ/K 2004年11月15日2時限目
ウェブアプリケーションサーバの Degradation Schemeの 制御に向けて
組込みシステムとは コンピュータ制御システム?
コンピュータの仕組み ~ソフトウェア~ 1E15M009-3 伊藤佳樹 1E15M035-2 柴田将馬 1E15M061-1 花岡沙紀
第5回 メモリ管理(2) オーバレイ方式 論理アドレスとプログラムの再配置 静的再配置と動的再配置 仮想記憶とメモリ階層 セグメンテーション
明星大学 情報学科 2012年度前期     情報技術Ⅰ   第1回
オペレーティングシステム (プロセススケジューリング)
第4回 メモリ管理 主記憶(メインメモリ)の管理 固定区画方式と可変区画方式 空き領域の管理 スワッピング.
オペレーティングシステムJ/K (並行プロセスと並行プログラミング)
オペレーティングシステム (プロセススケジューリング)
システムプログラミング 第11回 シグナル 情報工学科  篠埜 功.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
スケジューリングってなんだ? -やり方ひとつで大きく変わる
明星大学 情報学科 2014年度前期     情報技術Ⅰ   第1回
Presentation transcript:

第2回 プロセス管理 ジョブ、プロセスとは? プロセスの状態遷移 プロセス制御ブロック スケジューリング

タスク、ジョブ、プロセス ジョブ: ユーザから見た仕事の単位 タスク: コンピュータシステム稼動の基本単位 ジョブ: ユーザから見た仕事の単位 タスク: コンピュータシステム稼動の基本単位 プロセス: OSが管理する基本制御単位 cf)スレッド タスク(ジョブ)の実行過程の制御もOSの仕事 タスクスケジューリング ジョブスケジューリング プロセススケジューリング

プロセス管理とは? OSが依頼されたユーザからの仕事の管理をすること 近年の多重化(仮想化)されたマシン環境では複数のタスクを同時に扱わなければならない 具体的には、 資源(CPU,メモリ)の割り当て、管理 実行管理 スケジューリング 状態管理

並行処理と並列処理 並行処理(Concurrent Processing) 1つのCPUを持つコンピュータシステムにおける同時実行(並行処理)とは、プログラムを切り替えながら交互に実行すること … コンテキストスイッチ 並列処理(Parallel Processing) 複数のプロセッサ上で、(本当に)同時に実行する プログラムA プログラムB

プロセスの状態遷移 CPUの獲得 CPUの解放 入出力の完了 入出力待ち Ready Queue 新規 実行可能状態 実行状態 停止 待ち状態

プロセスの構造 プロセスは、PCBと呼ばれるデータ構造で管理される PCB (Process Control Block) … プロセス制御ブロック プロセスID プロセスの状態 プログラムカウンタ 優先度(プライオリティ) CPUレジスタ 退避されたプロセッサ状態語(Processor Status Word) 記憶管理情報 使用する計算資源に関する情報(ファイル、入出力装置)

スケジューリングの目的 スループット(処理効率)の向上 応答時間(レスポンスタイム)の短縮 公平な割当て 応答時間が予測可能であること

スケジューリング 実行順序管理 Ready 状態(実行可能状態)にあるプロセスのどれを実行させるかを決定 優先度(priority) 横取り(preemption) preemptive … 横取り可能 nonpreemptive … 横取り不能

スケジューリングアルゴリズム FCFS(first come first service) … 到着順 SJF (shortest jobs first) またはSPT(shortest processing time first) … 処理時間順 期限付きスケジューリング(deadline scheduling) リアルタイム処理 優先度順(priority) ラウンドロビン(round-robin)

FCFS (first come first service) プロセスの到着順に処理していく nonpreemptive … 横取りなし ready queue の先頭から順に処理する ready queue job の投入 CPU へ

SJF (shortest job first) 処理時間の短いプロセスから順にCPUに割り当てる 横取りなし 全プロセスの平均応答時間を最小にする 処理時間の長いプロセスほど後ろのプロセスの待ち時間を長くしてしまう 一般には、予めそのプロセスの処理時間はわからない ユーザによる処理時間の指定 統計による処理時間の予測

SRPT (shortest remaining processing time first) 残余処理時間順 新しいプロセスが実行可能になるたびにその時点で残っているプロセスの処理時間を比較して最も小さいものを優先的に実行 横取りあり(preemptive) SJFと同様、プロセスの処理時間を正確に予測するのが難しい

優先度順(priority) 各プロセスに優先度をつけ、優先度の順に実行 preemptive 優先度は、使用するメモリの大きさ、CPU処理時間、入出力時間などの基準で定義される 優先度は、OSが動的に割り当てることもある 入出力の多いものは高い優先度 SRPTやdeadline schedulingも優先度順スケジューリングの一種

優先度順 横取り 到着 終了 優先度順に並ぶ 100 CPU 中断 100 88 65 40 93 65 40 88 88 65 40 優先度順  横取り 到着 100 CPU 終了 中断 100 88 65 40 93 65 40 88 88 65 40 100 88 65 40 93 65 40 88 65 40 88 100 93 優先度順に並ぶ 93 40

優先度順 starvation と aging 優先度順では、優先度の低いプロセスがいつまでもCPUを獲得できないという状態がおこる(飢餓状態:starvation) プロセスの優先度を待ち時間の長さに応じて徐々に上げていく(時効化:aging)

ラウンドロビン(round-robin) 一定の時間ごとにプログラムの実行を切り替える preemptive 実行時間が一定時間を過ぎたプロセスは、実行を中断され、待ち行列の最後に回される 待ち行列を巡回しながら実行されていく TS (Time sharing)システムに適している 全てのユーザに公平に一定の応答時間を保証する

その他のスケジューリング手法 多重レベル待ち行列 多重レベルフィードバック待ち行列 優先度ごとに待ち行列を設け、各優先度のレベルでそれぞれ異なったスケジューリング手法を適用する リアルタイム処理、バッチ処理、対話処理の混在が可能 多重レベルフィードバック待ち行列 優先度の付いた複数の待ち行列を用意 ある待ち行列で一定のCPU時間、実行されたプロセスは優先度の低い待ち行列にフィードバックされる 各待ち行列では、ラウンドロビンを適用 処理時間の長いプロセスは飢餓状態になるが、UNIXなどでは、時効化によってこれを解決している 多くのTSSで用いられている