1

部分的に抽象化に関するものであることは理解していますが、私は初心者なので、これらの概念は非常に曖昧です。Mac OS は Linux アーキテクチャの上に構築されていますか? Linux は Unix/Ubuntu とどのように関係していますか? 私はこれを他の場所で調査しようとしましたが、非常に明確な説明を見つけるのは困難です.

4

4 に答える 4

4

Unixは、もともと1970年代に開発されたオペレーティングシステムであり、MacOSXのベースとなっています。Linuxはカーネル(ハードウェアとインターフェイスするオペレーティングシステムの一部)ですが、UbuntuやFedoraなどのディストリビューションは残りのソフトウェア(その多くはGNUプロジェクトからのもの)を追加して完全なOSにします。LinuxとGNUプロジェクトは元々、クローズドソースのUnixの無料の代替手段を提供するために存在するようになったため、コードはUnixの子孫ではありませんが、非常によく似ています。

于 2013-01-13T18:38:13.237 に答える
3

Linux はオペレーティング システム カーネルのみであり、Unix 標準に準拠しています。カーネルは、最新のオペレーティング システムで実行される最小限のソフトウェア コンポーネントであり、プログラムの実行を処理し、ハードウェア、メモリ、IO などを管理します。これは、通常のユーザーが直接やり取りするものではなく、認識しているものでもありません。

Ubuntu は、Linux カーネルを使用する完全なオペレーティング システムです。完全なオペレーティング システムには、プログラム (Web ブラウザー、ファイル エクスプローラー、フォト ビューアー、プリンター ドライバー、デスクトップ環境など) が含まれ、完全なユーザー インターフェイスが提供されます。Linux カーネルを実行するため、Unix 標準に準拠しています。

Unix は、オペレーティング システム カーネル、ユーザー空間ユーティリティ、および 1970 年代に最初に開発された標準に付けられた一般名です。

Mac OS は、Darwin カーネルと FreeBSD ユーザー空間ユーティリティを実行する完全なオペレーティング システムであり、Unix 標準に準拠しています。

これは、POSIX/Single UNIX 仕様 (一連のオペレーティング システム標準) に準拠する C で書かれたプログラムが、Linux、Mac OS、FreeBSD などで同じようにコンパイルおよび動作することを意味します。は POSIX/Single UNIX に準拠しておらず、上記のオペレーティング システムとは大きく異なり、大幅な変更なしにそのプログラムを実行できるとは限りません。

于 2013-01-13T18:52:06.483 に答える
0

それらはすべて「UnixLike」システムです。

UbuntuはLinuxです。Linuxカーネルを実行します(Androidも実行します)。

Unixは今日、具体的なオペレーティングシステムとして存在していません。アーキタイプを除いて、そのアーキタイプはPosix(Posixは標準仕様であり、既存のソフトウェアではありません)であり、現在はOpenGroup Unix(これも標準仕様です)です。 。

古いATTUnixコードは、破産したSCOに法的にほとんど失われています。

リストするすべてのシステムはPosixを実装しています。

したがって、Posix準拠のCプログラムは、相互に簡単に移植できます。おそらく、再コンパイルするだけで済みます。

于 2013-01-13T18:37:46.213 に答える
0

Unix は、70 年代に C プログラミング言語とともに開発されたオペレーティング システムです。UNIX パラダイムは、それ以来開発されたすべてのオペレーティング システムに大きな影響を与えてきました。その要素は、Windows にも見られます。

Unix パラダイムに従ういくつかのオペレーティング システムが作成されています。Mac OS には、BSD Unix と呼ばれる、PC 用に作成された Unix の最初のバージョンの 1 つに基づくカーネルがあります。

Linux は趣味用のオペレーティング システムとして始まりましたが、その後非常にプロフェッショナルなオペレーティング システムになりました。名前が示すように、Unix パラダイムにも従っています。これは、通常、Unix でコンパイルされるプログラムは、Linux および MacOS でもコンパイルされることを意味します。

多くのオープン ソース オペレーティング システムにはディストリビューションと呼ばれるものがあるため、Linux と BSD のディストリビューションがあります。これらのディストリビューションは基本的に、構成済みのソフトウェアのセットにすぎませんが、努力すれば同じものを自分でゼロから組み立てることができます。Ubuntu はそのようなディストリビューションの 1 つです。

さまざまな UNIX ライクなオペレーティング システムがあるため、Unix C API は Posix という名前で標準化されています。ほとんどのオペレーティング システムは、ネイティブで Posix をサポートしています。Microsoft は、Windows 用の Posix レイヤーも提供しています。

于 2013-01-13T19:01:43.417 に答える