弊ブログ(あのかぼ)ではOpenCore Legacy Patcher (OCLP)の使い方とともに、OpenCore Legacy PatcherがMacでどのように動作しているのかについても紹介してきました。この記事では、さらにOpenCore Legacy Patcherでよく出てくる用語の解説を分かりやすく紹介していけたらと思います。
なお、このページはOpenCore Patcher Terminology (英語)の内容和訳とともに筆者(かぼしー)が注釈とあのかぼのガイドに登場する用語の解説を追加したものです。原文の意味合いを極力保ったまま抄訳したものについてはOpenCore Legacy Patcher専門サイトのOCLP.netに掲載しました。
サポート対象外のMacにOCLPを使って最新のmacOS をインストールする方法については「あのかぼ」と「おんかぼ」で詳しく紹介しています。
- OCLPで非対応MacにmacOS Sonomaをインストールする方法
- OCLPで非対応MacにmacOS Sonoma以外をインストールする方法
用語解説
用語 | 説明 |
---|---|
macOS | Apple独自のUNIXベースのOS (オペレーティングシステム)で、Macで使用されているOSです。これが「MacをMacとたらしめるもの」です。 |
Windows | Windowsは1985年にリリースされたMicrosoftの独自OSで、多くのデバイスで使われ、サポートされています。 |
Linux | Linuxカーネルに基づくオープンソースのUNIX系オペレーティングシステム群で、1991年9月17日にリーナス・トーバルズ(Linus Torvalds) 氏が初めてリリースしました。一般的にLinuxディストリビューションとして提供されます。macOSとLinuxはどちらもUNIXベースですが、まったく異なるシステムです。 |
Bootloader (ブートローダー) | OSを読み込むためのソフトウェアで、基本的にはOSの開発者が作成します。OpenCore自体は厳密にはブートローダーではありません (下記のブートマネージャーの説明を参照)。AppleのBoot.efiはMacでの実際のブートローダーです。 |
Boot Manager (ブートマネージャー) | ブートローダーを管理するためのソフトウェアです。Clover、systemd-boot、OpenCore、rEFInd、rEFItなどがあります。これらは通常、実際のブートローダーを準備する役割を果たします。 |
用語 | 説明 |
---|---|
OpenCore | Acidantheraチームによって開発されたセキュリティ重視のブートマネージャー。従来のブートマネージャーよりも高速で軽量で、SIP、FileVault、Secure Bootなど、多くのMacネイティブ機能をサポートします。 |
ACPI | ハードウェアを定義するファームウェア内のテーブルで、IOKit/IOServiceがデバイスのセットアップを処理する方法と直接関連しています。 |
NVRAM (不揮発性RAM) | Non-Volatile Random Access Memoryの略。設定情報の保存や高速なデータアクセスのために利用されています。デフォルトのブートオプション、ハイバネーションキー、Secure Boot情報など、多くの変数が保存されます。 |
用語 | 説明 |
---|---|
XNU | XNUという名前は「X is Not Unix」の略。 macOSやiOSの「カーネル」として知られ、macOSの心臓部を成しています。 XNUの由来となっている「X is Not Unix」はリチャード・ストールマン氏によって提唱されたGNUの「GNU’s Not Unix」をオマージュしたもの。 XNUカーネルは、Unixの設計原則に従っている部分もあれば、独自の拡張や変更が加えられている部分もあります。 |
Kexts | macOSのドライバーであり、カーネル拡張とも呼ばれます。デバイスドライバーとして動作したり、OSのパッチ適用、情報の注入、タスクの実行などさまざまな目的に使用されます。 |
KernelCollection | カーネル(XNU)とカーネル拡張(Kexts)のバンドルであり、macOSの起動に使用されます。OpenCoreはこれをメモリ上でパッチを適用することでシームレスな操作を可能にします。PrelinkedKernel、ImmutableKernel、KernelCollectionの3つのバージョンがあります。 |
IOKit | IOKitは、macOSのデバイスドライバを開発するためのフレームワークであり、システムのI/Oデバイスをカーネルレベルで効率的に管理します。Appleが設計したこのフレームワークは、オブジェクト指向のアプローチを採用し、カーネル拡張(Kexts)としてカーネルモジュールを管理し、ハードウェアの検出とドライバの適用を支援します。 |
WindowServer | macOSのGUIインターフェースのバックボーンで、ユーザー向けプログラムの最初の一つです。 |
OTA | Over The Airの略で、システム環境設定経由のOSアップデートを指します。サポートされているMacと同様に使います。 |
DELTA | OTAと併せて使用されることが多く、フルインストーラーよりもかなり小さいOSアップデート(通常3GB程度) を指します。ただし、ルートボリュームに変更が加えられている場合には、12GB程度のアップデートが必要です。 |
用語 | 説明 |
---|---|
EFI | 次の2つを意味します。 – Macのファームウェアで、Mac専用に大きく修正されているため、必ずしも「ユニバーサル」ではありません。 – UEFIによってOSを読み込むためのソフトウェア(Windowsのブートローダーのような)やUEFIアプリケーション(OpenCoreのような)を格納する、ハードドライブ上のパーティション。通常、100MBから400MBのサイズで、FAT32フォーマットされています。あのかぼでは「ファームウェアのEFI」と区別するためESP (EFI System Partition)と表記しています。 |
HFS+ | Mac OS拡張(ジャーナリング)とも呼ばれ、macOS 10.13までの標準ドライブ形式です。 |
APFS | SSD用に設計され、macOS 10.13以降の標準ドライブ形式。Mojave以降ではすべてのドライブで標準化されています。 |
32/64 bit CPU (32/64 ビット CPU) | CPUのビット数は、CPUがアドレスできるデータ量を決定します。 32ビットCPUは、Mac OS X 10.6 (Snow Leopard)までサポートされていました。 |
32-Bit Firmware (32ビットファームウェア) | ファームウェアのビット数は、ファームウェアがアドレスできるデータ量を決定します。古いMacでは、64ビットCPUと32ビットファームウェアが共存している場合があります。 32ビットファームウェアは、Mac OS X 10.7 (Lion)までサポートされていました。 |
SSE命令 | SIMD単精度浮動小数点命令とも呼ばれ、CPUがサポートする命令セットです。macOSでは、正常な動作に必要な命令セットが以下の通りです。 – SSE3: Intel CPUすべてでMac OS X 10.4 (Tiger)から必須 – SSSE3: Intel 64ビットCPUすべてでMac OS X 10.6 (Snow Leopard)から必須 – SSE4.1: Intel CPUすべてでmacOS 10.12 (Sierra)から必須 |
追加の用語集
オリジナルの用語集にはないキーワードリストを作成しました。弊サイトやおんかぼのガイドに出てくる用語についてまとめました。
用語 | 説明 |
---|---|
MBR | MBR (Master Boot Record) は1983年にPC DOS 2.0と共に導入され、IBM PC互換システムで使われるマスストレージデバイスの標準的なパーティション方式となりました。固定ディスクやリムーバブルドライブなどのストレージデバイスの先頭に配置される特別なブートセクターです。MBRには論理パーティションの情報と、オペレーティングシステムのブートを担当するコードが含まれています。 MBRは、32ビットのアドレスを使って512バイトの標準セクターサイズでディスクを管理するため、2TiBまでのディスクサイズに制限されています。また、プライマリパーティションは最大4つまでしかサポートされず、それ以上必要な場合は拡張パーティションを使って論理パーティションを追加する必要があります。 MBRは、起動時にコードを実行するため、マルウェアなどの攻撃に対して脆弱な面があります。 |
GPT | GPT (GUID Partition Table) はMBRの制限を克服するために設計され、UEFI(統合拡張ファームウェアインターフェイス。前述のEFI項を参照。)標準の一部として導入されました。これは、BIOSの代替として提案されたもので、MBRの機能的制約を超えるパーティション管理方式。 GPTは、ディスク全体のレイアウトを記述するパーティションテーブルの標準であり、各パーティションには一意のGUID (Globally Unique Identifier: グローバルユニーク識別子) が割り当てられます。 GPTは、ディスクサイズの制限がほとんどなく、理論上9.4ゼタバイト(ZB)以上の容量をサポートできます。パーティションの数も実質的に無制限で、128個以上のパーティションを容易に扱えます。(GPTの場合パーティションの制限は、パーティション スキーム自体ではなくOSによって異なります。) GPTは、ディスクの先頭と末尾に複数のパーティションテーブルのコピーを保存するため、破損からの復旧が容易です。さらに、チェックサムによりパーティションテーブルの整合性も確保します。 |
説明 | 説明 |
---|---|
config.plist | OpenCoreブートローダーにおける重要な設定ファイルです。 ファイル形式はXMLベースのAppleの「Property List」(.plist)形式です。OpenCoreの起動プロセスを制御し、ハードウェアの互換性やmacOSの起動に必要な調整を行うために使用されます。 |
Lilu | LiluはOpenCoreを開発しているAcidantheraが開発しているmacOS用のカーネルエクステンションフレームワーク。Lilu自体はフレームワークのような役割を果たし、多くの異なるプラグイン(他のカーネルエクステンション)がこの上で動作する基盤を提供します。Liluはカーネルレベルで動作することが特徴の一つ。 |
説明 | 説明 |
---|---|
BIOS | 「Basic Input/Output System」の略。1981年のIBM PCで初めて導入された基本的なファームウェアシステムで、PCが起動するときにハードウェアを初期化し、オペレーティングシステムの起動を行います。16ビットリアルモードで動作し、メモリ空間が1MBに制限されます。POSTPower-On Self-Test)によりハードウェア診断を行い、ブートデバイスを指定します。 |
UEFI | 「Unified Extensible Firmware Interface」の略。UEFIは、BIOSに代わる次世代のファームウェア規格として開発され、2000年代初頭に広まった。32ビットおよび64ビットモードで動作し、より高速で柔軟なシステム初期化や起動を提供します。 Macのファームウェアは標準のUEFI仕様と互換性がある部分もあるものの、Appleの特定の要件を満たすために変更されています。Apple独自の実装であるため、他のPCメーカーのUEFI実装とは異なり、「汎用性」が制限されます。(前述のEFI項を参照。) |
CSM | 「Compatibility Support Module」の略。CSMはUEFIファームウェアの一部で、レガシーBIOSのエミュレーション機能を提供します。UEFIを搭載したPCでも従来のBIOSと同じような互換性を保ち、古いOSや古いハードウェアと連携するための機能です。 |
SMBIOS | System Management BIOSの略。SMBIOSは、BIOSまたはUEFIとOSの間で、ハードウェア情報にアクセスし、システム構成の詳細を標準化された形式で提供するためのインターフェース規格。DMTF (Distributed Management Task Force)によって策定および管理される標準規格です。(Appleは加盟していない) OpenCoreの「config.plist」では、SMBIOS情報をカスタマイズする機能があり、互換性を向上させるために情報(例えば、Macのモデル名やシリアル番号)を提供できます。 |
お疲れさまです。
ここまでOpenCore Legacy Patcherのインストールやメンテナンスを行う際に出てくるキーワードの解説を行ってきました。このガイドをご閲覧いただいた方はOCLP (OpenCore)を使ったmacOSの起動機序を解説した「OpenCore Legacy Patcherのブートプロセスを徹底解剖!―電源を投入してからログイン画面が表示されるまで。」もオススメです。
紛らわしい用語が所々に出てきますが、ぜひこの用語集が手助けになることを願っています。
2024.05.29 タグ「OpenCore Legacy Patcher ドキュメント」を追加しました。