世界中で最も人気のあるオペレーティングシステムの3つは、Windows、Mac、およびLinuxです。これらの3つのオペレーティングシステムはすべての報道を受け取り、前者の2つは後者よりも多く、おそらくあなたが聞いたことがあるのはこの3つのオペレーティングシステムだけです。
最も人気のあるオペレーティングシステムの3つのうち2つが、UNIXと呼ばれるもののコア哲学を実際に組み込んでいると言ったらどうでしょうか。これらの哲学は、複数のユーザーが1台のメインフレームコンピューターに同時にアクセスできるようにするタイムシェアリングシステムの基本概念です。
1970年に開発され、プログラマー専用の小型で柔軟なシステムとして設計されたUNIXは、すぐにワークステーションの主要なオペレーティングシステムになりました。しかし、UNIXについて本当にどれだけ知っていますか?(you)
HDGの説明:UNIXとは何ですか?
UNIXおよびUNIXライクな(UNIX-like)オペレーティングシステムは、市場で最も強力で人気のあるマルチユーザーおよびマルチタスクオペレーティングシステムです。Linuxのような最新の(Linux)POSIXシステム、その多くの変種、Mac OSなど、さまざまなマシン向けに複数世代のUNIXが長年にわたって開発されてきました。こんなに(Hard)強力な何かがそのような謙虚な始まりを持つことができるとは信じがたいです。
少数のプログラマーによってベル電話(Bell Telephone) 研究所(Laboratories)またはベル(Bell Labs)研究所で開発されたUNIXは、Cプログラミング言語で書かれていました。これにより、Cコンパイラを搭載したほぼすべてのコンピュータにインストールできるようになりました。これだけでもUNIXの自然な移植性と柔軟性が得られ、オペレーティングシステムとしてはかなり強力なオプションとして利用できました。
安価であることに加えて、ベル研究所(Bell Labs)はオペレーティングシステムをソース言語形式で配布し、それを手にした人は誰でも自分の目的に合わせてオペレーティングシステムを変更およびカスタマイズできるようにしました。これにより、10年の間に数十の異なるバージョンのUNIXが誕生し、さまざまなサイトで実行されました。
Bell Labsは、最終的に1984年に解散することになりました。それにもかかわらず、システムの標準バージョンを定義するためにUNIXのマーケティングを開始しました。(UNIX)彼らは多くの人が制限が強すぎると考えているものを開発しました。そのうちの1人はGNUプロジェクトの責任者であるRichardStallmanです。(Richard Stallman)GNUプロジェクトは、 UNIXカーネルではなくLinuxカーネルで構成されているため、今日私たちが知っているLinuxの基盤です。
ただし、Linuxは、教育目的で作成されたUNIXライクなオペレーティングシステムであるMINIXに触発されました。これは、今日利用可能なほとんどのオペレーティングシステムにある種のドミノ効果をもたらしました。GNU/LinuxはUNIXの設計から派生しており、Android、Chrome OS、Steam OS 、およびデバイス用の膨大な量の組み込みオペレーティングシステムを含む今日の多くのオペレーティングシステムは(Steam OS)Linuxをベースにしています。
UNIX標準
標準は実現しましたが、AT&Tによるものに基づくものではありませんでした。現在、商標登録されている「UNIX」はTheOpenGroup(The Open Group)が所有しています。SingleUNIXSpecificationについても同じことが言えます。UNIXを使用するオペレーティングシステムはすべて、The (Any)Open Groupによって認定されており、 SingleUNIXSpecificationに準拠している必要があります。
The Open Groupが示すように:
画像内のリンクに興味のある方は、こちら(here it is)をご覧ください。
POSIXは、前述のように、米国電気電子学会(IEEE)(Institute of Electrical and Electronic Engineers (IEEE))によって指定された一連の標準です。これらは、UNIXライクなオペレーティングシステムによって提供されるアプリケーションプログラミングインターフェイスを明確にし、統一するのに役立ちます。
これにより、 POSIX(POSIX)標準に依存するプログラムを作成するときに、 LinuxやMacOSなどのUNIXの派生製品の大規模なファミリ間での移植性と機能性が容易になります。UNIXライクな(UNIX-like)オペレーティングシステム用のPOSIXの一部として標準化されていない(POSIX)APIまたはコードを使用すると、他のUNIXライクな(UNIX-like)システムへの移植がますます困難になります。
UNIXプログラム(Programs)、システム(Systems)、およびサブシステム(Subsystems)とは何ですか?
UNIXコマンドは、(UNIX)シェル(shell)によって提供されるコマンドラインインターフェイスで実行されます。このシェルは、入力されたコマンドを読み取り、それ自体を実行するか、カーネル(kernel)に渡すプログラムです。
「コアカーネル」とは、システムと他のプロセスを管理するUNIXシステムが構築されているものです。これはUNIXオペレーティングシステムのコアであり、基盤となるハードウェアと直接対話して、一連の標準サービスを提供します。カーネル(Kernel)サブシステムには、プロセス管理、ファイル管理、メモリ管理、ネットワーク管理などが含まれる場合があります。
単一目的、相互運用可能、標準化されたテキストインターフェイスでの動作などの要件を含む、いくつかのコア哲学は、UNIXプログラムが設計されているものです。
UNIXの機能に関しては、ここにいくつかの著名な機能のリストがあります。
- 同じリソースの使用を単一のシステム上の異なるユーザーが共有できるようにします。
- (Provides)各ユーザーが同時に多くのプロセスを実行できるマルチタスクを提供します。
- 高水準言語で記述された最初のオペレーティングシステムであり、最小限の適応で他のマシンに簡単に移植できます。
- データへのアクセスと保守を容易にする階層ファイル構造。
- ユーザー間で簡単に情報を交換するための組み込みのネットワーク機能。
UNIXが重要な理由
WindowsとWindowsベースのシステムを除いて、表示されるオペレーティングシステムの大部分は、UNIXベースの哲学を持っています。Mac OS Xの端末またはファイルシステムを見ると、 Linuxと非常によく似ていることがわかります。どちらも(Both)Windowsとはまったく異なります。これは、LinuxとMacOSがUNIXライクなシステムであるためです。
これを理解することは、 UNIXがどれほど重要であり、かつてあったかを理解するのにも役立ちます。今日使用されているUNIX(UNIX)の主な哲学の1つは、非常に高いレベルの効率で単一のことを実行するための小さなモジュール式ユーティリティを作成することです。Mac OSターミナル(Mac OS Terminal)に精通していると、 Linuxターミナル(Linux Terminal)にも精通し、その逆も可能です。これは一言で言えばUNIXです。
UNIXライクなシステムは、プログラムが相互に通信するために単一のファイルシステムに依存しています。WindowsのようなシステムはDOS(DOS)に依存しています。これが、Windowsのようなシステムだけがドライブ文字を持っている理由です。他のすべてのオペレーティングシステムには、システム上のすべてのファイルが単一のディレクトリ階層の一部になるように設定されています。繰り返しになりますが、すべて(Again)UNIXの哲学に感謝します。
UNIXは、完全に設計上、 BSD、Linux、MacOSなどのオペレーティングシステムのアーキテクチャに見られます。UNIXがなければ、 (UNIX)Mac OSは存在しなかったと言えます。おそらく、Windowsを含め、競合他社についても同じことが言えます。
ここでは明らかに双曲線になっています。ただし、 (Though)UNIXは、今日使用されているすべてのオペレーティングシステムの開発において重要な役割を果たしてきたことを認める必要があります。それがUNIX(UNIX)とその哲学の重要性を説明していない場合、私は何が起こるかわかりません。
HDG Explains : What Is UNIX?
Three of the most popular operating systems the world over are Windows, Maс, and Linux. These three operating systems receive all of the рress, the two former more than the latter, and are likely the only ones yoυ’ve heard of yourself.
What if I told you that two out of three of the most popular operating systems have actually incorporated the core philosophies of something called UNIX? These philosophies being basic concepts of a time-sharing system allowing multiple users to access a single mainframe computer at the same time.
Developed back in 1970 and designed to be a small, flexible system used exclusively by programmers, UNIX had quickly become a leading operating system for workstations. But how much do you really know about UNIX?
HDG Explains : What Is UNIX?
UNIX and UNIX-like operating systems are the most powerful and popular multi-user and multi-tasking operating systems on the market. Multiple generations of UNIX have been developed for various machines over the years including modern POSIX systems like Linux, its many variants, and Mac OS. Hard to believe something so powerful could have such humble beginnings.
Developed at Bell Telephone Laboratories, or Bell Labs, by a handful of programmers, UNIX was written in the C programming language. This allowed it to be installed on practically any computer that possessed a C compiler. This alone afforded UNIX natural portability, flexibility, and lent itself as a rather powerful option as an operating system.
On top of being inexpensive, Bell Labs distributed the operating system in its source language form, allowing anyone who got their hands on it to modify and customize it for their own purposes. This birthed dozens of different versions of UNIX in the span of a decade, running on various sites.
Bell Labs would eventually come to break up in 1984. Nevertheless, they began marketing UNIX in an attempt to define a standard version of the system. They developed something that many saw as too restrictive, one of them being Richard Stallman, responsible for the GNU project. The GNU project is the basis for the Linux we know today as it’s made up of the Linux kernel and not the UNIX kernel.
However, Linux was inspired by MINIX, which was a UNIX-like operating system created for educational purposes. This has led to a domino effect of sorts for most of the operating systems available today. GNU/Linux is descended from UNIX’s design and in turn, many operating systems today, including Android, Chrome OS, Steam OS, and a huge amount of embedded operating systems for devices, are based on Linux.
The UNIX standard
A standard did come to be, but not based on anything by AT&T. Today, the trademarked “UNIX” is owned by The Open Group. The same can be said for the Single UNIX Specification. Any operating system that uses UNIX has had to have been certified by The Open Group and conform to the Single UNIX Specification.
As illustrated by The Open Group:
For anyone interested in visiting the link in the image, here it is.
POSIX, as mentioned earlier, is a family of standards, specified by the Institute of Electrical and Electronic Engineers (IEEE). They serve to clarify and make uniform the application programming interfaces provided by UNIX-like operating systems.
This makes it so when you write a program reliant on POSIX standards, portability and functionality is made easy among UNIX’s large family of derivatives such as Linux and Mac OS. Using API or code not standardized as part of POSIX for UNIX-like operating systems will make portability to other UNIX-like systems increasingly more difficult.
What Are UNIX Programs, Systems, and Subsystems?
UNIX commands are executed on a command line interface provided by a shell. This shell is a program that will read the entered commands and either execute them itself, or pass it along to the kernel.
A “core kernel” is what the UNIX systems are built around that manages the system and the other processes. This is the core of the UNIX operating system and directly interacts with the underlying hardware to provide a set of standard services. Kernel subsystems may include process management, file management, memory management, network management and others.
A few core philosophies, including requirements like single purpose, interoperable, and working with a standardized text interface, are what UNIX programs are designed around.
When it comes to UNIX features, here is a list of a few prominent ones:
- Allows for the use of the same resources to be shared by different users on a single system.
- Provides multi-tasking, wherein each user can execute many processes at the same time.
- The first operating system written in a high-level language, making it easy to port to other machines with minimum adaptations.
- Hierarchical file structure allowing easier access and maintenance of data.
- Built-in networking functions to easily exchange information between users.
Why UNIX Matters
Aside from Windows and Windows-based systems, the bulk majority of operating systems you’ll see have philosophies based in UNIX. If you Take a look at the Mac OS X terminal or file system, you’ll notice a striking similarity to Linux. Both of which are completely different from Windows. This is because Linux and Mac OS are UNIX-like systems.
Understanding this will help you also understand how important UNIX is and has been. One of the main UNIX philosophies used today is of creating small, modular utilities to do a singular thing at an exceptional level of efficiency. Being familiar with the Mac OS Terminal will also make you familiar with the Linux Terminal and vice versa. This is UNIX in a nutshell.
UNIX-like systems rely on a single file system for programs to communicate with one another. Windows-like systems rely on DOS. This is the reason that only Windows-like systems have drive letters. All other operating systems have it so that every file on the system is part of a single directory hierarchy. Again, all thanks to UNIX philosophies.
UNIX can be seen in the architecture of operating systems such as BSD, Linux, and Mac OS, completely by design. One could say that without UNIX, there’d be no Mac OS, and quite possibly the same could be said about its competitors, Windows included.
We’re obviously being hyperbolic here. Though, you’ll have to admit that UNIX has played an important role in the development of every operating system used today. If that doesn’t illustrate the importance of UNIX and its philosophies, I’m not sure what will.