OSとは何?初心者の方向けに種類や機能までわかりやすく解説!

エンジニアの方は必ず覚えてほしい用語になるOSについて詳しく解説していきます。

私自身エンジニアになる前は、OSという単語は知っていましたが、具体的な説明をすることができませんでした。

私と同じようにOSは知っているが、具体的に説明できないという方向けにOSについて詳しく解説していきます。

OSについて詳しく知りたい方はぜひ、参考にしてみてください。

この記事でわかること
・基本ソフトウェアと応用ソフトウェアについて
・OSの種類・構成・機能について




OSとは

基本ソフトウェア

OSとは、オペレーティング・システムの略でパソコンを操作したりする際に基盤になる基本ソフトウェアになります。

OS=基本ソフトウェアと覚えていただければ問題ないです。

ユーザとハードウェア間や応用ソフトウェアとハードウェア間を繋ぐ役割をしています。

OSが存在しなければアプリケーション(応用ソフトウェア)を使用することができません。

応用ソフトウェア

応用ソフトウェアはアプリケーションのことを指します。

例えば、パソコンでよく使うWord、Excelなどは応用ソフトウェア該当します。

上記のようなアプリケーションを使用するために基本ソフトウェアであるOSを使用する必要があります。

OSってすごい重要だね
OSのイメージ図はこちら

OSの種類

OSには様々な種類があります。

OSごとの特徴やメリット・デメリットについて詳しく解説していきます。

Windows

Windowsは、マイクロソフト社が開発したOSになります。

市販で販売されているコンピュータは基本的にWindowsがインストールされています。

Windows95が出るまではキーボードで操作するCUIでしたが、Windows95からGUIへ変更になりました。

Windowsの特徴としては、ウィンドウと言われる画面にアイコンが表示された状態で操作することが基本になります。

メリット
・対応デバイスやアプリケーションが多い
・トラブルの際の解決方法がサイトに載っていることが多い
・無償で機能を追加・アップデートできる
デメリット
・ウイルスのターゲットになりやすい
・修正パッチの適用作業が多い

Linux

Linuxは、オープンソースのLinuxカーネルを使用して実装したUnix系のOSで誰でも無償で使用することができます。

Linuxといっても種類が複数ありますが、代表的なものはCentOSRedhatになります。

CentOSは無償で使用できますが、Redhatは有償で提供されているものもあります。

Windowsはアイコンを操作するのに対してlinuxはコマンドを使用し、操作を行うという特徴があるため、linuxを操作する方はコマンドを覚える必要があります。

主なLinux系ディストリビューション
・Red Hat Linux(レッドハット・リナックス)
・CentOS(セントオーエス)
・Ubuntu(ウブントゥ)
・Debian(デビアン)
・openSUSE(オープン・スーゼ)
・Fedora(フェドラ)
・Vine Linux(ヴァイン・リナックス)
・Turbo Linux(ターボリナックス)
・Linux Mint(リナックス・ミント)
・Manjaro(マンジャロ)
・MX Linux(エムエックス・リナックス)
・elementaryOS(エレメンタリーオーエス)
・Zorin OS(ゾーリンオーエス)
・Manjaro(マンジャロ)

メリット
・無償で使用することができる
・古いバージョンのパソコンでも機能する
・ネットにlinuxに関する情報が多い
デメリット
・最初は操作が難しい
・日本語環境が完全ではない

macOS

macOSは、アップル社が開発したOSになります。

アップル社が提供しているMacintoshハードウェア上でのみ動作することができ、安定性が高く洗練されたGUI環境が特徴になります。

非常に高性能なソフトウェアがインストールされており、動画の編集音楽の編集などで使われることが多くあります。

現在は、エンジニアの方でmacOSを使用している方は少ないですが、今後macOSを使用するエンジニアも増えるのではないかと思います。

メリット
・高性能なソフトウェアがインストールされている
・デザインがきれい
・ハードウェアとソフトウェアを同一メーカーが作っている
デメリット
・価格が高い
・サポートの期間が短い

Chrome OS

Chrome OSは、google社がLinuxをベースに開発・提供しているOSになります。

GUIを搭載しており、インターネット接続やWebアプリケーションの使用はChromeブラウザを使用することを前提にしています。

Chrome OSは、googleアカウントを使用しログインすることができるため、新たにアカウントの作成をする必要がなく、セキュリティ機能も充実しています。

メリット
・安価で購入することが可能
・PC本体のウイルス対策をする必要がない
・セキュリティ機能が充実している
デメリット
・原則ネット環境が必要になる
・デスクトップ版のソフトが使えない

Android

Androidは、google社がlinuxやオープンソースソフトウェアを元に開発したスマートフォンなどのモバイルデバイス向けのOSになります。

Androidは、多くのベンダーで使用されており、全世界で約71%のシェア率を誇っています。

アップル社が提供している端末では、Androidは使用しておりませんがそれ以外の多くのモバイル端末でAndroidは使用されています。

確かにAndroidって携帯ショップに行くとよく聞く
メリット
・Playストア以外のアプリをインストールできる
・メモリの拡張がしやすい
・様々なメーカーがある
デメリット
・googleアカウントが必要になる
・OSアップデートが受け取れないこともある

iOS

iOSはアップル社が開発・提供しているiPhoneやiPod Touchなどで動作するモバイルデバイス向けのOSになります。

macOSをベースに開発されており、アップル社製デバイス上でのみ動作することが可能です。

当初はアップデートは有償でしたが、現在は無償でアップデートが可能になり、セキュリティも強化されています

メリット
・OSを自動アップデートする
・無償でアップデートされる
・容量が大きい
デメリット
・高価での購入になる
・SDカード非対応になる

OSの構成

OSが具体的にどのように構成されているのか解説していきます。

OSの構成を理解することでOSについての理解を深めることができるようになります。

ブートローダー

ブートローダは、コンピュータを起動した際に呼び出されて(BIOS)、OSを動かすプログラムになります。

私たちがOSを使用する際には電源を入れるとOSが起動するイメージがあると思いますが、実際は下記のような順番でOSが起動しています。

STEP

電源を入れる

STEP

BIOSの起動

STEP

ブートローダの起動

STEP

OSの起動

カーネル

カーネルはOSの中核にあるソフトウェアになります。

具体的には、ソフトウェアとハードウェアの仲立ちをする役割があります。

主な機能
・プロセス管理
・ファイルシステム
・ネットワーク
・時間管理
・CPU
・メモリ管理など

デーモン

デーモンは、メモリ上でコンピュータが起動したら起動する常駐プログラムになります。

Windowsではサービスでlinuxではデーモンと呼ばれます。

デーモンが起動しないと使うことができないソフトウェアが多くあるのでかなり需要な役割です。

シェル

シェルは、人間が入力した文字をコンピュータに伝えるプログラムのことをいいます。

わかりやすく説明するとコマンドプロンプトのことを言います。

コマンドプロンプトで入力したコマンドをコンピュータが理解をし、処理を動かしてくれるような動きをします。

デスクトップ環境

デスクトップ環境は、アイコンなどが表示されたデスクトップを提供するソフトウェアになります。

デスクトップ環境が整っていることによって画面を見ながらファイルの操作を行うことができるようになり、操作効率を上げることができます。

アプリケーション

アプリケーションは、OSだけでは、基本的な機能しか使えず作業するのが困難なためユーザーが使いやすいようにするために必要になってきます。

ファイルの管理やブラウザやメールなどの標準アプリケーションなどになります。

OSの機能

OSにはどのような機能があるのか解説していきます。

OSの機能についても理解することが大事になるのでしっかり理解しましょう。

ファイル管理

ファイル管理は、画像やテストなどのデータをわかりやすく管理する機能になります。

コンピュータを使っている人なら誰でも使ってる機能だとおもいますが、OSの代表的な機能の1つになります。

ファイル管理を使うことで自分自身がデータを取り出しやすくなり、作業効率を上げることができます。

デバイス管理

デバイス管理は、外部接続するハードウェアを管理する機能になります。

例えば、マウスやマイクやスピーカーなどもデバイスになります。

この機能がないとデバイスを使用することができないためかなり重要な機能になります。

タスク管理

タスク管理は、PCで設定されている作業や処理などを管理している機能になります。

わかりやすく説明すると人間でいうところのスケジュール表の管理がコンピュータのタスク管理にあたります。

対象の時間に動いて欲しい処理を設定したスケジュール表みたいなものをコンピュータ上で読み込み自動で実行してくれるイメージです。

メモリ管理

メモリ管理は、パソコン内の情報を保有する記録を管理する機能です。

メモリが不要となった時に再利用出来るメモリ空間を開け、新たな要求時に再度提供出来る状態にするのも、メモリ管理の大切な役割になります。

メモリが重複するとできなくなる作業も多いため、すごく大事な機能になります。

まとめ

いかがでしたか。

本記事では、OSについてわかりやすく解説してきました。

エンジニアなら必ず知っておきたい知識になるので覚えておきましょう。

初心者エンジニアの方やOSの知識が足りていないと感じている方はぜひ、参考にしてみてください。

プログラミングスクールによっては、OSのような基本的なエンジニアの用語について学ぶ機会があると思いますので、プログラミングスクールを利用するのもいいかもしれません。

【初心者エンジニア必見!エンジニアが持っておきたい持ち物・ガジェット一覧】

エンジニアにおすすめの持ち物とガジェットを一覧でまとめています。

利用することで作業効率を上げることのできる物を厳選して紹介しているため、エンジニアの方やリモート勤務の方は特に参考にしてみてください。