OS / Operating System / オペレーティングシステム / 操作システムとは、ハードウェアとカーネルを中心として各種コマンドやツールやアプリケーションソフトウェアなどとの仲介をするソフトウェアであることから基本ソフトと呼ばれることもあります。
OSは、メインフレーム、ミニコン(オフコン・ミッドレンジ)、PCの他、ケータイ、スマートフォン、家電、産業機械やロボット等々といったいわゆる組み込み系システムといわれる分野でも利用されることがあります。
比較的一般的なOSには、DOS、Windows、Mac OS/Mac OS X/OS X、*BSD、UNIX、Linuxなどがあり、モバイル用途としてSymbian OS、BlackBerry OSやLinuxベースのAndroid、iPhone/iPad/iPodなどのiOSといったものがあります。
メインフレームの操作には、当初、物理的なスイッチやボタンを備えた操作卓(コンソール)とデータの入出力(出力というより記録)用のテレタイプ端末を利用していましたが、後にハードウェアメーカーオリジナルのOSが開発され、仮想化技術が進展、それらは(現代のTera TermやPuTTYのような)モニタ上の仮想端末となり、ミッドレンジコンピュータ(ワークステーション/ミニコンピュータ(ミニコン)/オフィスコンピュータ(オフコン)でも専用OSと仮想端末が採用され、後にUNIXを汎用OSとして採用、メインフレームでは、更に後年、仮想化技術と記憶装置の論理化を利用して複数のLinuxを動作させるケースも出てきています。
組み込み系システムでは、メモリやキャッシュ、ハードディスクなどの物理的なスペースも限られ、OSがないものさえありますが、そうでないものでは、専用OSやWindows CE、あらゆる技術を駆使して軽量化したLinuxを採用するケースもあり、何れにしてもより素早い応答性能を要求されることからReal Time OS/RTOS/リアルタイムオペレーティングシステムとして開発・チューニングされます。
各種PDA(携帯情報端末)などもこれに当たり、スマホ以前のモバイル分野の内、日本のいわゆるガラパゴス携帯(ガラケー)には、1980年代に東大の教授が考案した国産OSであるTRONに端を発するITRON、μITRON、T-Kernelなどが、海外ではNokiaが採用するSymbian社のSymbian OS、BlackBerryも専用のBlackBerry OSが、スマホでは前述の通り、Android、iOSが日本も含めた事実上の国際標準となっています。
PC-UNIXやLinuxは、その多くがBD/CD/DVD/USBメモリなどブータブルメディアに焼いたり、インストールすることも想定されており、Windowsでもブータブルメディアからの起動を前提とした簡易WindowsであるPEがあり、これらは、ソフトウェア的な不具合などにより、HDDにインストール済みのOSの起動や機能が不安定になった際などにレスキュー用途として、場合によってはパーティションサイズ変更や空き領域がある場合には、OSインストール、もしくは、インストール済みOSのアンインストール及び再インストールなどを行うことも可能となっています。
Microsoft社が提供したPEは、ネットワークを介して大量のマシンへ一斉にWindowsをインストールすることを想定し、当初、メーカーや特定の販売代理店にのみ配布されていましたが、当然単体のPCにも使えるとすれば、従前のフロッピーに代え、旧Windows用の起動ディスクの役割も担えるという点を含め、レスキュー用簡易Windows作成ソフトウェアとして別途、一個人がリリースしたフリーソフトウェアに起因して限定配布されていたPEも後に一般公開されるに至りました。
(WANや)LAN内における閉じたシステムであるC/Sシステムでは、サーバOS、クライアントOSといったそれぞれの役割や機能に応じた区別もありますが、LAN内で閉じたシステムもあるもののインターネットを介したオープンなシステムも一般的なブラウザをクライアントとするWeb系システムでは、サーバOSはともかくもブラウザが動く環境であればOSを問わないこともあり、(ブラウザを指して)クライアントと呼ぶことはあってもクライアントOSと呼ぶことはないかもしれません。
PC、タブレット、スマホ。。。とインターネットの利用が大前提となり、Webアプリが広く浸透するようになったこともあり、ブラウザをOSとする動きも出てきています。
OS仮想化の歴史は、遡るとかなり古いことに気づきますが、CPUやOSの仮想化として一般に広く公開、認知されているものとしてVMwareやVirtualBox、QEMU、KVM/QEMU、Bochs、Xen、Hyper-V、Virtual PC...といった仮想化ソフトウェアがあります。