Amazonで利用すべきコスパ最高のサービス一覧

OSとは?主な役割7つを簡単に解説!

今井

こんにちは!
今井(@ima_maru)です。

今回は、皆さんのパソコンにも入っているであろう「OS」についてです。

OSはオペレーティングシステムの略称であり、コンピュータの中核を担う存在です。

この記事に書かれていること
  • OSとは?
  • OSの主な機能7つの簡単な解説
  • 有名なOSの種類

それでは解説していきます。

OS(Operating system)とは?

OSはコンピュータのとても大事な部分を担う存在です。

コンピュータは、ハードウェア(CPUや記憶装置など)がまず必要ですが、OSもなくてはなりません。

OSがないと、コンピュータはただのガラクタとなってしまいます。

イメージは、操縦士のいないロボットのようなものです。

OSはコンピュータを自在に操り、ユーザとの情報伝達を効率的に行い、さらに多くのソフトウェアを動かすための環境を用意してくれます。

キーボードからの入力がディスプレイに表示されたり、マウスを動かすとカーソルが動いたりすることはすべてOSがあってこそ実現しているといってもよいでしょう。

最近では当たり前ですが、本来一つの処理しかできないCPUで、YouTubeを見ながらWordに文章を書くなんてことができるのも、OSのおかげといっていいでしょう。

こんな風に、コンピュータを使う人ならわかる「当たり前のこと」を提供しているのがこの「OS」と呼ばれるソフトウェアです。

ここから、OSが担っている主要な機能を紹介していきます。

OSの主な役割7つ

OSが担う役割はいろいろあるのですが、今回はその中でも重要だと思う7つを解説します。

OSが担う機能①:ハードウェア管理・制御

OSはハードウェアを管理・制御する役割を担っています。

ハードウェアとは、パソコンでいえば「マウス」「キーボード」「ディスプレイ」「スピーカー」といったものです。

そして、ハードウェアの入力・出力を管理しているのはOSとデバイスドライバと呼ばれるソフトウェアです。

OSがなければ、ディスプレイには何も映らないし、マウスを動かしても何も起きません。

また、OSはハードウェアを抽象化する役割も担っています。

同じマウスでも、製造元が違ったりして、細かな仕様の違いが生まれることがあります。

そういった違いは、OSとデバイスドライバが吸収してくれるので、アプリケーション開発などにおいて、具体的にハードウェアを意識しなくても開発ができるようになります。

今井

OSがなければ、コンピュータはただのガラクタ!

OSが担う機能②:マルチタスク・プロセス管理

OSはプロセスを管理する役割を担っています。

プロセスとは、コンピュータの中のプログラムの実行単位です。(プロセスについては、むずかしいので割愛)

例えば、インターネットブラウザでYouTubeを開けば、新しくプロセス生成したことになります。

そして、プロセスがプログラムを実行するにはメモリ領域が必要です。

なので、プロセス生成時に、OSが使用可能なメモリ領域をプロセスに割り当ててあげます。

今度は逆に、ブラウザを閉じると、そのプロセスは消滅します。

この時、いらなくなったメモリ領域は、OSによって解放されます。

このように、OSは、プロセスの生成や消滅に伴って発生するメモリ領域の割り当てと解放というプロセス管理の役割を担っています。

今井

メモリの割り当ては、OSのお仕事です。

また、最近の汎用的OSはマルチプロセスという仕組みが普通になってきています。

「マルチプロセス」とは、複数のプロセスを並行して動かす仕組みのことで、「マルチタスク」と呼んだりもします。(環境によって違う呼び方をする)

マルチプロセスの実現は、プロセスを微小時間区切りで切り替えを行うというテクニックなどを使います。例えば、

  • OS:プロセスAに制御を渡す
  • プロセスA:処理を実行する(微小時間)
  • OS:制御を戻す
  • OS:プロセスBに制御を渡す
  • プロセスB:処理を実行する(微小時間)
  • OS:制御を戻す
  • OS:プロセスAに制御を渡す
  • プロセスA:処理を実行する(微小時間)
  • ・・・

といったように、高速でプロセスを切り替えることにより、あたかも同時に複数のプロセスの処理を行っているように見せるのです。

また、一つのプロセスが何秒間使えるかは、そのプロセスの優先度などによってきまります。

優先度の高いプロセスほど、長い間使っていられるので、長期的に見ればそれだけほかのプロセスより処理できる時間が長くなるのです。

このプロセスのどのように切り替えるかを考え、実際にプロセスの切り替えを行っているのもOSです。

今井

複数のアプリケーションが同時に動くのは、OSのおかげなんですね!

OSが担う機能③:メモリ管理

OSはメモリ管理・保護の役割を担っています。

上で挙げたマルチプロセスの環境であれば、各プロセスが並行して動作していくこととなります。

そこでこのような問題が生じます。

「ほかのプロセスの記憶領域にアクセス・上書きをしてしまう」

プログラムの中に間違いがあって、割り当てられたメモリ領域以外にアクセスしようとしてしまうことはよくあります。

また、悪意のあるプログラムウイルスなどによっても引き起こされる問題です。

これらを制御できなければ、ひとつのプロセスのバグによってほかのプロセスまでもが正常に動作しなくなってしまいます

これは、OSのメモリ保護によって解決されます。

OSは、プロセスのメモリアクセスを監視します。

そして、そのプロセスが使っていいメモリ領域外にアクセスしようとした場合、割り込み処理を行い対処します。

このようにして、OSはプロセスが独立して実行できるようにメモリ管理・保護をしています

今井

マルチプロセスの環境において、とても重要な役割です。

OSが担う機能④:ファイルシステム・ディスクアクセス

OSには、ファイルシステムと呼ばれるデータを管理する機能があります。

これは皆さんもなじみ深い「ファイル」「フォルダ」といったデータの格納方法に当たります。

パソコン、厳密にいえばHDDSSDといった補助記憶装置には、画像や動画、文書や実行ファイルなどいろいろな種類のデータを格納することができます

OSはこの中のデータにアクセスすることはもちろん、データを「ファイル」という形式できれいに格納することができます

このような機能を「ファイルシステム」といいます。

データなんてどう格納しても同じかと思いがちですが、そうでもありません。

  • 高速アクセス:データに素早くアクセスできるか?
  • 利用効率:領域を無駄なく使えているか?
  • 暗号化機能:特定のユーザーのみ閲覧可能か?

などデータの格納・保存方法にも重要な要素があります。

ほとんどのOSはデータを管理する機能を担っているのです。

参考 ファイルシステムとは?今さら聞けない基礎知識とOSごとの種類|発注成功のための知識が身に付く【発注ラウンジ】発注ナビ

OSが担う機能⑤:ネットワーク

多くのOSはネットワークの機能を持っています。

これにより、異なるコンピュータ間での通信が可能になります。

OSが担う機能⑥:セキュリティ

OSはセキュリティの機能を担っています。

これは、認証といった技術を用いて、特定のユーザにのみリソースへのアクセスを可能にすることがそうです。

これがなければ、ほかのユーザーでもデータ見放題盗み放題です。

また、OSが実行していいコードなのか実行してはいけないコードなのか判別する機能もあります。

攻撃側が用意したコードをOSで実行してしまうと、攻撃側の意図したことが容易にできてしまうためです。

このように、セキュリティ面においてもOSは活躍するのです。

OSが担う機能⑦:ユーザインタフェース

OSはユーザインタフェースを提供する役割を担っています。

ユーザインタフェースとは、ユーザとコンピュータ間での情報伝達の窓口です。

ハードウェア面は上に書いた通りですが、ソフトウェア面でいえば、「GUI」「CUI」があげられます。

  • GUI(Graphical User Interface):マウスでポチポチできるやつ(普通のやつ)
  • CUI(Character User Interface):キーボードだけで操作するやつ(ハッカー黒い画面のやつ)

OSの種類

OSにも色々な種類がありますが、今回はその中でも、

  • Windows
  • Mac OS
  • Linux
  • iOS
  • Android

の5つを紹介しようと思います。

Windows

Microsoft社が開発する、パソコン用のOSです。

圧倒的なシェアを誇るため、対応しているソフトが多いことが挙げられます。

ただ、セキュリティ面での脆弱性が注目されています。

Mac OS

Apple社が開発している、パソコン用のOSです。

グラフィックや操作性が良いと評判です。

また、動画編集などによく使われています。

Linux

主にサーバー用に使われるオープンソースのOSです。

オープンソースのため、日々いろんな派生OSが開発されています。

Chrome OS

Google社が開発している、パソコン用のOSです。

ウェブブラウザ上で作業を行うことや、Androidアプリを扱えることが特徴的です。

iOS

Apple社が開発している、スマホ用のOSです。

日本では高いシェアを誇り、Androidのシェア率を抜いています。

Android

Google社が開発している、スマホ用のOSです。

世界で一番高いシェアを誇り、iOSと並んで二大スマホOSとなっています。

 

以上「OSとは?主な役割7つを簡単に解説!」でした!

今井

最後までご覧いただきありがとうございます!