1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ソフトウエア_OSについて

1
Posted at

はじめに

基本情報の勉強に伴い、学習した部分(ソフトウエア_OS)の内容となります。

OSについて

コンピュータのデバイスを管理・制御するソフトウエア
ハードウェア上にOS→API・ミドルウェア→アプリケーション・ソフトウェアの順番に乗っているイメージとなる

アプリケーション・ソフトウエア:様々な機能を提供する
API・ミドルウェア:アプリケーションソフトウエアとOSをつなぐ役割
OS:機能(入出力管理・ファイル管理・タスク管理・メモリ管理・周辺機器管理)を提供する(OS例:Windows、MAC、UNIX等)※カーネルという中枢部分あり

タスク管理

OSの重要な役割として、タスク管理がある
CPUやメモリなどのハードウェアに対し、リソースに空きができないように効率的にタスクの割り当てを実施する

タスク状態遷移

タスクは以下3つの状態で管理する
実行可能:タスク生成時になる状態、CPU割り当て・解放を実行する
実行中:タスクを実行する(終われば消滅)、平行して止めておく必要のあるものは「wait命令」をする
待ち状態:タスクを止めている状態、SIGNAL命令がくると、実行可能に変わる※割込み発生時もこの状態になる

割り込み種類

実行プログラムに処理を一旦止めてもらうことを割り込みという
以下種類あり

・外部割り込み(ハードウェア側)
 タイマ割込み:タイムアウト時
 機械チェック割込み:機械エラー時の割込み
 入出力割込み:入出力時の割込み
・内部割り込み(プログラム側)
 スーパーバイザーコール割込み:OSへのお願い割込み
 プログラム割込み:プログラムエラー時に発生する割込み

タスクスケジューリング

OSは複数のタスクをどのような順番で処理するかをスケジューリングする
手法は以下の通り

到着順方式:到着した順番でタスクを処理す方法
優先順位方式:優先度が高いものから処理をしていく方法※スタベーションを防ぐ仕組みが必要
ラウンドロビン方式:処理時間を決めて、順番にタスクを処理していく方法

※スタベーション:優先度が低いタスクが永遠に処理されない状態

スプーリング

CPUと入出力装置では処理時間に差が発生してしまう(CPUがかなり速い)
そのため、一時的に記憶装置にCPUが処理した結果を保存し、
徐々に入出力装置で処理していく方法
※処理高速化を図るもの

マルチプログラミング(マルチタスク)

プログラムを複数組み合わせて実行することで高速化を図るもの
※コンピュータは複数の作業を同時に実施している

仮想記憶管理

仮想的に記憶領域を扱うことで、効率的に処理を実行できる

実記憶領域:実際の主記憶装置の領域
仮想記憶領域:補助記憶装置+主記憶装置の合わせた領域

また、仮想記憶管理の方法として、以下種類あり

固定区画方式(スワッピング有):初めから区画を分けておく※スワッピング無より結果返答が短い
固定区画方式(スワッピング無):初めから区画を分けておく※最も制約が強い
可変区画方式(動的割り当て):プログラムに応じて調整する※メモリコンパクションを行うことで、常に最適な領域を確保可能
可変区画方式(固定割り当て):プログラムに応じて調整する※割り当てアルゴリズムを適切に通用する必要あり

※スワッピング:主記憶装置の容量不足の際、補助記憶装置へ優先度が低いプログラムを一時退避すること
※メモリコンパクション:フラグメンテーションをなくす処理ができる

ページング

物理的な配置可能領域より大きなプログラムをロードするための仕組み
※ページフォールトをなるべく避ける必要あり

ページ書き換えアルゴリズム

FIFO:最初にページインしたものから順番にページアウトしていく
LIFO:最後にページインしたものがページアウトされる
LRU:長い間参照されないページがページアウトされる
LFU:参照回数が少ないページがページアウトされる

※ページフォールト:物理メモリ上に存在しないページにアクセスしたときに起きる割込み

参考文献
https://www.udemy.com/course/lerning-fe/learn/lecture/22742379#overview
https://shikaku-dou.com/fe-lesson-21/
https://nlab-notebook.com/entry/typical-os-type-part1
https://www.foresight.jp/fe/column/role-os/
https://www.momoyama-usagi.com/entry/info-calc-sys17#google_vignette
https://medium-company.com/%E5%9F%BA%E6%9C%AC%E6%83%85%E5%A0%B1-%E3%83%9A%E3%83%BC%E3%82%B8%E3%83%B3%E3%82%B0%E6%96%B9%E5%BC%8F/
https://medium-company.com/%e3%83%9a%e3%83%bc%e3%82%b8%e3%83%95%e3%82%a9%e3%83%bc%e3%83%ab%e3%83%88/
https://shikaku.pepenoheya.blog/basic-information-frequent-memory/

おわりに

ソフトウエア_OS部分を各サイトを閲覧しながら、学んでいきました。
本日もありがとうございました。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?