皆さんはOSとは何か?明確に説明することが出来ますか?OSはiPhoneならiOS、Android端末ならAndroid、パソコンではWindowsやMac OSなど、様々な種類があります。
実はOSは機械にとってなくてはならない存在で、中枢機能ともいえる大事な存在。今回は
などについて初心者向けに徹底解説します!プログラミングにもOSに対する知識は必要になります。勉強中の皆さんも息抜きとしてご覧ください。
目次
OSとは?
OSの基本情報
OS(Operating System)はオペレーティングシステムの略で、その名の通り機械に搭載されている機能を全て統括して管理する役割があります。
ここから徐々に話が難しくなってくるので、まずOSとは全ての機能を統括するものと覚えておきましょう。
OSはどこにある?
ではOSはどこにあるのでしょうか?これを理解するには機械の仕組みを理解しておかなければなりません。
例として1台のノートパソコンを思い浮かべてみましょう。パソコン本体、物体的な部分を「ハードウェア」といい、その中にインストールされるアプリケーション類を「ソフトウェア」といいます。
OSはこのハードウェアとソフトウェアの真ん中に位置していて、ユーザーのパソコン操作を補助するのが主な役割です。実は以前はパソコンの操作はもっと複雑なものでした。しかしOSが進化し、ユーザーが操作と作業により集中できるようになったのです。
OSはソフトウェアのまとまり
ここでOSには実態があるのかという疑問が浮上してきました。ここまでの説明を見るとOSはハードウェアとして存在していそうですが、OSはソフトウェアに属します。
さらに詳しく説明すると、OSは機械を制御するシステムの集まりとも言えます。少しずつOSの実態がつかめてきたでしょうか?
プログラミング学習にはmacが必須?最適なパソコンについて解説します!【もっと詳しく!】OSの役割と機能をざっくり解説
ここからは話が更に複雑に、分かりにくくなります。専門用語には注釈を付けますが、それでも理解できなかった方はしっかり検索して理解しておいてください。
インターフェースの提供
インターフェースとは、私たちユーザーが直接操作したり、結果を確認したりする入出力の部分を指します。直訳すると境界面や接点という意味がありますが、IT業界では異種類の2つの世界を仲介するという意味で使われています。
OSはこのインターフェースの提供を行っています。
このインターフェースは、ハードウェア同士を接続するハードウェアインターフェース、プログラム間でのデータのやり取りの形式を定めるソフトウェアインターフェース、そしてコンピューターと人間に接点を持たせるユーザーインターフェースの計3種類。
その中でもOSが主に行うのがユーザーインタフェースの提供です。今ではアイコンをクリックしたり、カーソルで直感的な操作が出来たりと、パソコンは誰にでも馴染みやすいものになりましたが、少し前までは文字で機械の内部とやり取りしていました。
しかしOSの進化によって、より複雑な直感的な操作を行えるようになったのです。
リソース管理
リソースとは英語で資源や資産という意味があります。IT業界ではパソコンやサーバ自体だったり、CPUやメモリの性能や容量、開発に与えられる人数や予算のことをまとめて「リソース」と呼んでいます。
普通に機械を利用する際はあまり想像することはありませんが、機械には定められた容量があり、それを超えればエラーが発生してしまいます。
なぜこうも快適に機械を扱えるのか?それはOSが必要な制御に必要な分だけの資源を割り当て、処理が終了してから資源を開放する=リソース管理を行っているからなのです。
ハードウェアリソース
続いてリソースの種類について理解していきましょう。リソースには大きく分けて3つの種類があります。1つはハードウェアリソース。ザックリ説明すると「実体のあるリソース」です。
ハードウェアリソースには主にCPU、主記憶装置、補助記憶装置、入出力装置があります。
ソフトウェアリソース
ソフトウェアリソースはソフトウェア上で利用する、プログラムやライブラリ(よく使うプログラムのまとまり)、データを指します。ソフトウェアリソースはそれぞれ異なり、様々な種類があります。
ヒューマンリソース
ヒューマンリソースは日本語で「人的資源」を指します。何が人的資源にあたるのかというと、機械を操作するために必要な人間一人ひとり。
以前は高性能な機械が高価だったため、機械の性能を上げるよりも人材を投入することが一般的でした。しかし最近は高性能な機械が安価に提供できるようになったため、人的資源の削減が重視されるようになっています。
OSの種類
冒頭で代表的なOSを紹介しましたが、現在は様々なOSが存在しています。ここではOSの種類を簡単にまとめて紹介します。
提供企業 | OS | 使用例 |
---|---|---|
Apple | MacOS | Macbook |
iOS | iPhone | |
iPadOS | iPad | |
Android | スマートフォン端末 | |
Android-x86 | PC | |
Android TV | ブラビア アクアス FUNAI Smart TV Chromecast with Google TV その他メディアプレーヤー |
|
Android Auto | レクサス アキュラ インフィニティなどの自動車 その他オーディオ機器 |
|
Wear OS | Asus CASIO Huawei LG Sony などのウェアラブル端末 |
|
Google Chrome OS | Chromebook Chromebox |
|
Microsoft | Microsoft Windows | PC |
Windows Phone | スマートフォン端末 | |
ー | Linux | サーバ スーパーコンピューター デスクトップ |
現在は様々なデバイスが発売され、テレビや自動車、スピーカーなど、ありとあらゆる場面でOSの活躍が見られるようになりました。OSは基本的には有料の製品ですが、Linuxに限ってはオープンソースソフトウェアとして、全てのソースコードが公開されています。
このコードは頒布方法に関する制約はあるものの、基本的には誰でも取得、改変、再公開が可能です。OSに興味を持った方は身近な端末のOSも調べてみてください。
まとめ
今回はOSの役割について解説しました。最後にOSの目的と役割を確認しておきましょう。
・3つのリソースの効率的な管理と有効利用
・リソース管理の簡略化
つまりOSは資源を無駄にせず、なおかつ操作性を向上させるために存在するのです。先述した通り、最近では機械の価値より人間の価値の方がはるかに高くなっています。人間がより効率的に作業を行うために、性能の良いOSが必要になってくるのです。
この記事でOSについては大体内容が掴めたはず。普段はあまり意識することがありませんが、プログラミングを行う際には必須の知識です。ぜひここでOSの理解を深めておきましょう。
【基礎知識】パソコンやスマホのOSとは何のこと?種類などを解説!