macOSとLinuxカーネルの違いは何ですか

macOSとLinuxカーネルの間には類似したコマンドや類似したソフトウェアを処理できるため、類似性があると考える人もいるかもしれません。 AppleのmacOSはLinuxをベースにしていると考える人さえいます。 真実は、両方のカーネルが非常に異なる歴史と機能を持っているということです。 今日は、macOSとLinuxカーネルの違いを見ていきます。

macOSカーネルの歴史

まずはmacOSカーネルの歴史から始めましょう。 1985年に、スティーブジョブズは最高経営責任者(CEO)ジョンスカリーとアップルの取締役会との脱落のためにアップルを離れました。 その後、NeXTという新しいコンピュータ会社を設立しました。 Jobsは(新しいオペレーティングシステムを搭載した)新しいコンピュータをすぐに市場に投入したいと考えていました。 時間を節約するために、NeXTチームはCarnegie MellonのMachカーネルとBSDコードベースの一部を使ってNeXTSTEPオペレーティングシステムを作成しました。

彼がまだAppleにいたようにJobsがお金を使う習慣のせいで、NeXTは決して経済的な成功にはなりませんでした。 その間、Appleは何度か失敗して自分たちのオペレーティングシステムをアップデートしようとしたが、IBMとのパートナーシップまで行っていた。 1997年に、AppleはNeXTを4億2, 900万ドルで購入しました。 契約の一環として、Steve JobsはAppleに戻り、NeXTSTEPはmacOSとiOSの基盤となりました。

Linuxカーネルの歴史

macOSカーネルとは異なり、Linuxは商業的努力の一環として作成されたのではありません。 代わりに、それはフィンランドのコンピュータサイエンスの学生Linus Torvaldsによって1991年に作成されました。 当初、カーネルはLinusの新しい80386プロセッサを利用したいと考えていたため、Linusのコンピュータの仕様に基づいて書かれていました。 1991年8月、Linusは新しいカーネルのコードをUsenetに投稿しました。すぐに、世界中からコードと機能の提案を受けました。 翌年、Orest ZborowskiはX Window SystemをLinuxに移植し、グラフィカルユーザーインターフェースをサポートできるようにしました。

過去27年間で、Linuxはゆっくりと成長し、機能を獲得してきました。 それはもはや学生の小規模プロジェクトではありません。 現在では、世界のほとんどのコンピューティング機器と世界のスーパーコンピュータが稼働しています。 汚すぎる格好はやめて。

macOSカーネルの特徴

macOSカーネルは正式にはXNUと呼ばれています。 頭字語は「XNUはUnixではない」を表します。AppleのGithubページによると、XNUは「Carnegie Mellon Universityで開発されたMachカーネルとFreeBSDおよびC ++ APIを組み合わせたドライバ作成用のコンポーネントを組み合わせたハイブリッドカーネル」 コードのBSDサブシステム部分は、「マイクロカーネルシステムのユーザースペースサーバーとして通常実装されています」。 Mach部分は、マルチタスク、保護されたメモリ、仮想メモリ管理、カーネルデバッグサポート、コンソールI / Oなどの低レベルの作業を担当します。

Linuxカーネルの特徴

macOSカーネルはマイクロカーネル(Mach)とモノリシックカーネル(BSD)の機能を兼ね備えていますが、Linuxはもっぱらモノリシックカーネルです。 モノリシックカーネルは、CPU、メモリ、プロセス間通信、デバイスドライバ、ファイルシステム、およびシステムサーバーの呼び出しを管理します。

MacとLinuxカーネルの違い

macOSカーネル(XNU)はLinuxよりもずっと長く、2つのさらに古いコードベースの組み合わせに基づいていました。 一方、Linuxは新しく、一から書かれており、さらに多くのデバイスで使用されています。

この記事が面白いと感じた場合は、ソーシャルメディア、Hacker News、Redditで共有してください。

推奨されます

UbuntuとLinux MintにJavaをインストールする方法
2019
42ドル相当のLinuxシェルスクリプティングeBookを学ぶ
2019
中国政府、Ubuntu Kylinでオープンソースを推進
2019