たとえるなら
大きなビルの管理人のような存在です。テナント(アプリ)が「電気を使いたい」「荷物を届けたい」と言うたびに、管理人(OS)が設備への取り次ぎを一手に引き受けます。テナントはビルの配線や配管の仕組みを知らなくても営業できるのです。
もう少しくわしく
OS(オーエス)はオペレーティングシステムの略で、コンピューター全体を管理する基本ソフトです。画面の表示、キーボードやマウスの入力、ファイルの保存、メモリの割り当てといった土台の仕事をすべて引き受け、アプリはOSにお願いするだけでこれらの機能を使えます。
もしOSがなかったら、アプリを作る人は「この機種のこのキーボードから入力を受け取る方法」を機種ごとに全部自分で書かなければなりません。OSがハードウェアの違いを吸収して、共通の頼み方を用意してくれているおかげで、アプリは中身の目的だけに集中できます。
身近なOSには、パソコン向けのWindowsやmacOS、スマホ向けのiOSやAndroidがあります。同じアプリでも「iPhone版とAndroid版」が別々に作られるのは、OSが違うとお願いの仕方(作法)が違うためです。
OSの仕事の中でも中心にあるのが資源の割り振りです。CPU(計算する部品)とメモリ(作業机)は限りがあるので、複数のアプリが同時に動くとき、誰にどれだけ使わせるかをOSが決めています。パソコンが重くなるのは、この机が足りなくなっている状態です。ファイルの置き場所を整理し、どのアプリがどのファイルを触ってよいかを管理するのもOSの役目です。
そしてサーバーの世界では、Linux(リナックス)というOSが広く使われています。無料で使えて安定性が高く、世界中のWebサービスの裏側で動いています。エンジニアが黒い画面に文字を打ち込んで操作しているのは、多くの場合このLinuxのサーバーです。インフラエンジニアを目指すなら、最初に学ぶ定番の分野と言えます。
OSは更新し続けることが前提のソフトでもあります。弱点(脆弱性)が見つかれば修正版が配られ、更新を怠ると、そこを狙われて侵入されることがあります。「更新してくださいという通知を後回しにしない」は、個人でも会社でも通用する基本のセキュリティ対策です。
サポート期限にも注意が必要です。OSには提供元が面倒を見る期間が決まっており、期限を過ぎると新しい弱点が見つかっても修正されません。会社のシステムで「そろそろOSの更改を」という話が持ち上がるのは、この期限が近づいたときです。
現場での使われ方
「このソフト、OSは何に対応してますか?」
Windows用かMac用か、どの基本ソフトの上で動くのかを確認する質問です。OSが違うと動かないソフトは珍しくありません。
「サーバーのOSはLinuxです」
このサーバーはWindowsではなくLinuxという基本ソフトで動いています、という構成の説明です。
「OSのバージョンを上げないと、この機能が使えません」
新しい機能が古いOSでは動かない、という制約の説明。アプリ開発では避けて通れない話題です。
「そのOS、来年でサポートが切れます」
提供元の面倒を見る期間が終わる、という注意喚起。切れると弱点が修正されなくなるため、計画的な更改が必要になります。
よくある質問
OSとアプリの違いは何ですか?
OSはコンピューター全体を管理する土台のソフトで、アプリはその上で動く目的別のソフトです。家にたとえると、OSが土台と柱、アプリがその中に置く家具にあたります。
Linuxはなぜサーバーでよく使われるのですか?
無料で利用でき、長時間動かし続けても安定していて、細かい設定の自由度が高いためです。世界中の技術者が改良を重ねてきた歴史があり、サーバー用途の定番になっています。
OSは何の略ですか?
オペレーティングシステム(Operating System)の略です。日本語では「基本ソフト」と訳されます。目的別のアプリを「応用ソフト」と呼ぶのに対しての「基本」です。
OSを更新しないとどうなりますか?
見つかった弱点が直らないまま残るため、攻撃を受けやすくなります。また、新しいアプリが動かなくなることもあります。更新の通知が来たら、都合のよいタイミングで早めに適用するのが安全です。
iPhoneとAndroidでアプリが別々に作られるのはなぜですか?
OSが違うと、画面の描き方やカメラの使い方といった「お願いの作法」が異なるためです。近ごろは1つのコードから両方のアプリを作る仕組みも普及していますが、細かい部分ではOSごとの対応が残ります。