トップ その他 ITスキル体系 基本ソフトウェア

基本ソフトウェア―OS(オペレーティングシステム)

基本ソフトウェアであるOS(オペレーティングシステム)をテーマにしています。タスク管理、割込み制御、主記憶の管理、仮想記憶の管理、OSの機能・種類・特徴について説明していきます。

▲記事トップへ

タスク管理

タスクのスケジューリング方式

待ち行列状態にあるタスクをどのような順位で処理するかについて、その方法を大別すると、 優先度方式とラウンドロビン方式の2つに分けられます。

  1. ラウンドロビン方式
    すべてのタスクに対等の優先度をあたえ、一定時間経過後に終了しないタスクは待ち行列の最後尾に置き、 待ち行列の先頭のタスクにCPU使用権をあたえる方式です。
  2. 優先度方式
    各タスクに優先度をあたえ、優先度の高いタスクからCPU使用権をあたえる方式です。

割込み制御

マルチタスクを実現するためには、ある一定の時間間隔ごと、 または入出力要求を出したタイミングなどでタスクを切り替えます。 この切り替える制御を割込み(Interrupt)といいます。

割込みとは、プログラムの実行中に、 何らかの条件によってプログラムの命令実行を強制的に中断し、他のプログラムに制御を移すことです。

割込みが発生すると、コンピュータの各命令の実行ごとに、 コンピュータの実行と非同期の事象が発生したかどうかを調べ、 実行中のプログラムより優先順位の高い事象が生じていれば、特定番地の命令に制御を移します。

この場合、現在処理しているプログラムを一時待避させ、割り込んで入ってきたプログラムを実行します。 割込みの処理が終了すると、待避させたプログラムを回復させ、中断したところから実行を再開します。

主記憶の管理

スワッピング

スワッピング方式は、主記憶上の領域が不足してプログラムを実行できない場合、 優先度の低いプログラムをいったん主記憶から追い出し、優先度の高いジョブの実行を行う手法です。

仮想記憶の管理

ページング方式

仮想記憶方式では、プログラムの実行中、主記憶領域に存在しないページが参照されると、 ページフォールトという入出力を伴うプログラムの割込みをきっかけに、 必要なページを主記憶領域にロードするページインが行われます。

ページングアルゴリズム

FIFOによるページ置き換え

ここでは、FIFO(First-In First-Out)によるページ置き換えのアルゴリズムを説明します。

FIFOは、先入れ先出し方式です。先にページインしたページから先に追い出します。

たとえば、仮想記憶におけるページ置き換えアルゴリズムとしてFIFO方式を採用し、 初期状態では、主記憶には何も読み込まれていないものとします。 主記憶のページ枠が3で、プログラムが参照するページ番号の順序が、 4→3→2→1→3→5→2のとき、ページインの回数は次のようになります。

参照枠内イン回数説明
  4[4][][]  14を読み込みます。
  3[4][3][]  23を読み込みます。
  2[4][3][2]  32を読み込みます。
  1[3][2][1]  4一番古い4を消し、1を読み込みます。
  3[3][2][1]  43は読み込まれているのでページインは不要です。
  5[2][1][5]  5一番古い3を消し、5を読み込みます。
  2[2][1][5]  52は読み込まれているのでページインは不要です。

よって、ページインは5回です。

OSの機能・種類・特徴

API(Application Programming Interface)

API(Application Program Interface)とは、 ソフトウェアからOSの機能を利用するための仕様、またはインタフェースのことをいいます。 一般的には、APIはOSの機能を利用するための関数を指します。

汎用性のあるAPIが定められていれば、周辺機器との連携やインターフェース、 ドライバの作成が容易に行えるといった互換性の高いプログラミングを行うことが出来るため、 アプリケーション開発が容易になります。

OSのデータ管理

データ管理は、OSの制御プログラムの機能の一つです。 データを主記憶装置に割り付けたり、磁気ディスクへのファイルのアロケーション、 スペース管理、ディレクトリの管理などを行う機能があります。

ファイルのアクセス方法を応用プログラムに提供し、 ユーザはハードウェアを意識しないでファイルを使用することが出来ます。

知識の幅を広げるための参考

戻る

スポンサーリンク

サイト内のページ

言語
C・C++ /HTML /Java /JavaScript /PHP /シェルスクリプト

開発環境
Ant /Burp /Eclipse /Fiddler /gcc /gdb /Git /g++ /JDK /JMeter /JUnit /Teraterm /ZAP

技術・仕様
Ajax /CORBA /Jakarta EE(旧称J2EE、Java EE) /JNI

ライブラリ/Framework/CMS
bootstrap /jQuery /FuelPHP /Lucene /MyBatis /Seasar2 /Spring /Struts /WordPress

Web API
Google Maps

ITインフラOSとミドルウェア
Linux /Windows /シェル
ActiveMQ /Tomcat /MariaDB /MySQL /Nagios /Redis /Solr

ITインフラサーバー
公開Webサーバー

ITインフラネットワーク
プログラミング /構築

ITインフラセキュリティ
公開サーバーのセキュリティ

PC製品
ZOTAC

SI
ホームページの作り方

その他
IT用語 /ITスキル体系

スポンサーリンク

関連サイト内検索ツール

zealseedsおよび関連サイト内のページが検索できます。

IPアドレス確認ツール

あなたのグローバルIPアドレスは以下です。

3.128.78.41

HTMLの表示色確認ツール

パスワード生成ツール

文字数のプルダウンを選択して、取得ボタンを押すと「a~z、A~Z、0~9」の文字を ランダムに組み合わせた文字列が表示されます。

ここに生成されます。

スポンサーリンク