NixOctet
  • Home
  • SASOSについて

NixOctet Blog

Featured

🚀 これまでの軌跡:v0.0.1 から v0.0.1-2-1 への進化

kayo PangeaOS 2026年06月27日 参照数: 8

プロジェクトの初期段階である v0.0.1 から、先日到達した特異点とも言えるアップデート v0.0.1-2-1 まで、このOSがどのような進化を遂げてきたのか。そして、これからどのような未来を描こうとしているのか。

コードの書き方や難しい構築手順は一旦脇に置いて、技術の「面白さ」と「凄さ」にフォーカスして、やさしく丁寧に解説していきます!

🚀 これまでの軌跡:v0.0.1 から v0.0.1-2-1 への進化

PangeaOSは、単に古いOSを作り直すプロジェクトではありません。「現代のハードウェアとセキュリティの視点から、OSの根幹をどう再定義するか」という壮大なテーマに挑んでいます。これまでの歩みを2つの大きなマイルストーンに分けて振り返りましょう。 

1. ハードウェアへの依存を断ち切る(v0.0.1-2 の世界)

OS開発の初期段階では、キーボードの入力を受け取ったり、画面に文字を出したりする「基礎工事」が行われます。通常のOSはここで、マザーボード(ファームウェア)が提供する「割り込み(Interrupt)」という仕組みに頼ります。

しかし、PangeaOS(v0.0.1-2 "Zero-Interrupt Polling Engine")は、あえてこのセオリーを完全に破壊しました。 

割り込みの完全破棄(Zero-Interrupt Polling): ファームウェアの挙動を「信用できないもの」と見なし、OS側から超高速でハードウェアに「入力はないか?」と直接監視(ポーリング)し続ける強硬手段を採用しました。これにより、環境に依存しないレイテンシ・ゼロの確実な入力網を確立したのです。 
チラつきのない描画エンジン(O(1) Batch Rendering): 画面描画においても、OSのスタックメモリを消費しない安全な設計(裏画面へのバッファリング)を行い、物理的な画面のチラつきを完全に消滅させました。 
この時点で、PangeaOSは「ハードウェアの理不尽に振り回されない、堅牢な独立国家」としての基盤を築き上げました。

2. メモリの完全掌握と覚醒(v0.0.1-2-1 の世界)

そして直近のアップデートである v0.0.1-2-1 では、OSの最も重要な資源である「メモリ」に関する歴史的ブレイクスルーが起きました。 

絶対防壁の構築(GDT & True IDT): 万が一OSの中枢で致命的なエラーが起きても、システム全体が道連れになってクラッシュしないよう、安全な「避難所(専用スタック)」を備えた例外処理の防壁を完成させました。 
物理メモリの制圧(Physical Memory Mastery): UEFI(ブートローダ)から数GBに及ぶ全RAMの管理権限を奪い取り、OS自身で一元管理するシステム(PMM)を構築しました。 
Rustエコシステムの解禁(Global Allocator): これまで制限されていた、Rust言語の強力な動的メモリ機能(Box や Vec など)が、OSの最深部(Ring 0)でついに使えるようになりました。 
魔法の「Meshプリミティブ」: 最新の学術研究に基づく、仮想メモリ空間の「折り畳み」機能の基礎が実装されました。これは、バラバラになったメモリの空き地を、物理的に1つにガッチャンコして再利用するための超高度な技術です。 
これにより、PangeaOSは「計算と描画ができるだけのシステム」から、「自在にメモリを操り、複雑なデータ構造をノーコストで扱える近代的なOS」へと劇的な進化を遂げたのです。

https://github.com/forestnote/pangea-ring0-os

Featured

仮想メモリを「折り畳む」次世代技術。PangeaOSに実装された『Meshプリミティブ』の仕組みを徹底解説!

kayo PangeaOS 2026年06月27日 参照数: 6

「PangeaOS」が、待望のアップデート v0.0.1-2-1 "Memory Defense & Allocator Awakened" をリリースしました! 

今回のアップデートでは、OSがコンピュータの「物理メモリ(RAM)」を完全に掌握し、さらにRust言語の強力な動的メモリ機能(Box や Vec など)が解放されました。しかし、今回最も注目すべき技術的ブレイクスルーは、「Meshアロケータ」を見据えた「仮想空間の折り畳み(Mesh Primitive)」の実装です。 

今日は、作り方やコードの羅列は少しお休みして、この「Meshアロケータ」という現代コンピュータサイエンスの魔法が、PangeaOSの心臓部でどのように実装されたのか、その仕組みを超詳細に、そして世界一わかりやすく解説していきたいと思います!

そもそも「メモリの断片化(フラグメンテーション)」ってなに?

Meshアロケータの凄さを知るためには、まずOSが長年抱えてきた「不治の病」について知る必要があります。それがフラグメンテーション(断片化)です。

OSは、アプリケーションから「メモリを貸して!」と言われると、大きなメモリの塊から必要な分だけ切り取って貸し出します。そして使い終わったら返してもらいます。

これを繰り返していると、どうなるでしょうか?

貸したり返したりをバラバラなタイミングで行うため、メモリ空間が「虫食い状態」になってしまうのです。全体の空き容量としては十分にあるのに、「連続した大きな空きスペース」が存在しないため、新しいデータが配置できなくなってしまう……。これがメモリの断片化です。

昔から、この虫食いを防ぐために様々なアルゴリズム(BuddyシステムやSlabアロケータなど)が考案されてきましたが、数学的に「どうしても防ぎきれない限界」があることがわかっていました。

マサチューセッツ大学が生んだ魔法「Mesh」

そこで登場したのが、2019年頃にマサチューセッツ大学アマースト校の研究チームが発表した「Mesh」という全く新しいアロケータ(メモリ管理システム)の概念です。

彼らはこう考えました。

「虫食いになったページ(メモリの区画)同士を見比べて、お互いの空きスペースがピッタリ噛み合うなら、2つのページを1つにガッチャンコしてしまえばいいじゃないか!」

パズルピースのように、穴と出っ張りが補完しあう2つのページを「圧縮」してしまうのです。しかし、普通にデータを移動させると、アプリケーションが覚えている「メモリアドレス(ポインタ)」が変わってしまい、プログラムがクラッシュしてしまいます。

そこでMeshが使った魔法が、「仮想メモリ(ページテーブル)のハッキング」です。

PangeaOSに実装された「Meshプリミティブ」の超詳細解説

今回、PangeaOS v0.0.1-2-1では、このMeshの魔法を実現するための土台である「Meshプリミティブ(仮想空間の折り畳み基盤)」が特権レベル(Ring 0)に実装されました。 

これがOSの内部でどのように動いているのか、CPUの仕組みと合わせて詳しく見ていきましょう。

1. 物理メモリと仮想メモリの「分離」
私たちが普段プログラムを書くときに見ている「メモリアドレス」は、実は本物の物理的なRAMのアドレスではありません。OSが見せている「仮想アドレス」という幻です。

CPUの中には「MMU(メモリ管理ユニット)」という翻訳機があり、OSが管理する「ページテーブル」という辞書を使って、仮想アドレスを物理アドレスに瞬時に変換しています。

2. PMMによる「本物の物理メモリ」の確保
PangeaOSはまず、「PMM(Physical Memory Manager)」というシステムを使って、まっさらな本物の物理メモリ(物理フレーム)を1枚(4KB分)確保します。これは、ハードウェア上に実在する「ただ1つの箱」です。 

3. CR3レジスタとページテーブルの掌握
ここからがOSカーネルの真骨頂です。PangeaOSは、CPUの「CR3」という特別なレジスタから、現在使われているページテーブル(翻訳辞書)を直接奪い取り、OSの完全な支配下に置きます。 

4. 禁忌の「折り畳み」マッピング(Mesh Mapping)
そして、PangeaOSはページテーブルを直接書き換えて、次のような設定を行います。

仮想アドレス A(例: 0xdeadbeef000)の翻訳先を、先ほど確保した物理フレームに設定する。 
全く無関係な仮想アドレス B(例: 0xcafebabe000)の翻訳先も、同じ物理フレームに設定する。 
おわかりでしょうか? プログラムからは「アドレスA」と「アドレスB」という、遠く離れた全く別のメモリ領域に見えています。しかし、OSがページテーブルをハッキングしているため、どちらにアクセスしても、最終的にはハードウェア上の「同じ1つの箱(物理フレーム)」にたどり着くのです。 

5. 実証された「重なり合い」
今回のv0.0.1-2-1のテストコードでは、仮想アドレスAに対してデータを書き込み、それを仮想アドレスBから読み取れるか、という実証実験が行われました。結果は見事成功。異なる2つの仮想ページが、物理的な1点に折り畳まれた瞬間です。 

これが意味する未来:究極のメモリ圧縮

今回PangeaOSに実装されたこの「Meshプリミティブ」は、単なる面白い実験ではありません。 

今後、システムが長時間稼働し、メモリが虫食い状態になってきたとします。

その時PangeaOSは、裏側でこっそりと「噛み合う虫食いページ(仮想ページAと仮想ページB)」を探し出します。そして、データをうまくマージした後、このMeshプリミティブを使ってページテーブルを書き換えます。

すると、プログラム側は「今まで通り仮想アドレスAとBを使っている」つもりなのに、物理的なRAMの消費量は半分に減っていることになります。ポインタを一切壊すことなく、OSの最も深い特権レベル(Ring 0)で、ノーコストで物理メモリが回収されるのです。 

これこそが、次世代のベアメタルOSが目指す「特異点アーキテクチャ」の一端です。 

おわりに

いかがでしたでしょうか? PangeaOS v0.0.1-2-1が成し遂げたのは、単にメモリが使えるようになったということではありません。ハードウェアの翻訳機能(MMU)をソフトウェアから完全にねじ伏せ、メモリの断片化という永遠の課題を「空間の折り畳み」によって解決するための、とてつもなく強力な基盤を手に入れたということなのです。 

OS開発の歴史と、最新の学術研究が見事に融合していくこのプロジェクト。今後の進化(次はいよいよタイマー割り込みと非同期タスクの実装でしょうか?)からも、絶対に目が離せませんね!

それでは、また次回の記事でお会いしましょう!

https://github.com/forestnote/pangea-ring0-os

 
Featured

ハードウェアの理不尽を物理的にねじ伏せる。Rustで書く『Ring 0』OSの異常なアーキテクチャ

kayo PangeaOS 2026年06月26日 参照数: 7

今日は、少しマニアックだけれど最高にエキサイティングな「OS(オペレーティングシステム)の裏側」についてお話ししたいと思います。

皆さんは普段、WindowsやmacOS、Linuxなどを当たり前のように使っていますよね。でも、それらの根底にある「OSそのもの」がどのように動いていて、作るのがどれほど大変か、想像してみたことはありますか?

今回は、現在絶賛開発中の次世代ベアメタルOSプロジェクト「PangeaOS」の最新バージョン(v0.0.1-2)を題材に、OSの心臓部である「Ring 0(リング・ゼロ)」の魅力と、そこに潜む途方もない困難さ、そしてセキュリティ構築の奥深さについて、やさしく丁寧に紐解いていきます。

ぜひ、コーヒーでも飲みながらリラックスして読んでみてくださいね!☕️

👑 究極の特権階級「Ring 0」OSとは?その圧倒的なメリット

コンピュータの世界には、セキュリティと安定性を保つための「保護リング(Protection Ring)」という階級制度があります 。

私たちが普段使っているブラウザやゲームなどのアプリは、一番外側の「Ring 3(ユーザー空間)」という制限された安全なエリアで動いています。もしアプリがバグを起こしても、OS全体が巻き込まれてフリーズしないのはこのおかげです。

一方、「Ring 0(カーネル空間)」は、城の中心にある玉座の間です。

PangeaOSは、まさにこのRing 0で直接動作するシステムとして設計されています。

Ring 0でOSを動かす最大のメリットは「絶対的な支配力とパフォーマンス」です。

間に入る余計なソフトウェア(仲介役)が一切存在しないため、ハードウェア(CPUやメモリ、キーボードなど)と直接、遅延ゼロで対話することができます。ハードウェアの限界性能を100%引き出し、自分の思い通りにシステム全体を操ることができる……これは、多くのエンジニアにとって魔法のような究極の体験なのです。

🧗‍♀️ 想像を絶する「構築の難しさ」と PangeaOS v0.0.1-2 の決断

しかし、Ring 0という玉座に座ることは、決して簡単なことではありません。そこは「セーフティネットが全く存在しない荒野」だからです。

PangeaOS v0.0.1-2 の開発プロセスを見ると、OS開発特有の凄まじい壁に直面し、それを乗り越えた軌跡がはっきりと分かります。

1. ハードウェアの「理不尽」との戦い
私たちがキーボードを押すと、普通は文字が入力されますよね?これはハードウェアがCPUに「キーが押されたよ!」と合図(割り込み:Interrupt)を送ってくれるからです。

しかし、現代のPC(UEFI環境など)では、OSを起動する過程でこの「古いキーボードからの合図」をマザーボード側が勝手に切断してしまうという理不尽な現象が頻発します。

これに対し、PangeaOS v0.0.1-2 は「Zero-Interrupt Absolute Polling(割り込みの完全破棄)」という驚くべき決断を下しました。

ハードウェアからの合図を待つことをやめ、CPU自身が「キーは押されたか?」「今はどうだ?」と、毎秒数百万回の猛スピードで直接キーボードのポートを監視し続ける(ポーリングする)という、力技でありながら絶対確実な手法を採用したのです。

2. 目に見えない「メモリの限界」
さらに、OSの起動直後は自由に使えるメモリ(スタック)がたったの64KBほどしかありません。ここに画面を描画するための大きなデータを置こうものなら、一瞬でメモリが溢れ(スタックオーバーフロー)、PCは永遠に再起動を繰り返す「トリプルフォルト」という死のループに陥ります。

PangeaOSではこれを回避するため、スタックを使わずに静的なメモリ領域(.bss)に直接「裏画面」を作り、画面のチラつき(フリッカー)を物理的に消滅させる「$O(1)$ ダブルバッファリング」という高度な描画エンジンを実装してこの危機を乗り越えています。

🛡️ 守るべきものがない場所での「セキュリティ構築」の難しさ

Ring 0には「OSを守ってくれる存在」がいません。自分自身がルールブックだからです。

たった1行のコードのミス、たった1バイトのメモリの読み違えが、システム全体の致命的な破壊や、悪意あるハッカーへのバックドア(裏口)に直結します。

PangeaOSが目指しているのは、攻撃者の視点を先回りした「Offensive Defense(攻撃的防御)」という概念です。

C言語などで書かれた従来のOSは、長年「バッファオーバーフロー」などのメモリの脆弱性に悩まされてきました。PangeaOSでは、これらのエラーを未定義動作になる前にコンパイルの時点で弾き返す「Rust」というモダンな言語を採用することで、物理的な防壁を築いています。

しかし、それだけでは十分ではありません。

前述のキーボードの監視処理でも、一瞬のスキにデータを取りこぼさないよう、バッファに残ったデータを一滴残らず吸い尽くす「Hardware Buffer Drain(完全吸い出し機構)」を実装するなど、論理的なデッドロックやハードウェアの仕様の隙間を埋めるための泥臭く、緻密な設計がセキュリティの要となっています。

🌟 まとめ:OS開発は究極のパズル

いかがだったでしょうか?

PangeaOS v0.0.1-2 のようなRing 0 OSの構築は、便利なライブラリも、優しいエラーメッセージも存在しない世界での、ハードウェアとの直接の対話です。

それは時に理不尽で、画面が真っ暗なまま何時間も悩むような苦難の連続ですが、だからこそ、自分が書いたコードで初めて画面に文字が表示された時や、キーボードの入力が通った時の感動は、他のどんなプログラミングでも味わえないものがあります。

OS開発は、コンピュータのすべてを理解するための究極のパズルです。

この記事を読んで、少しでも「OSの裏側って面白いな」と思っていただけたら嬉しいです!

それでは、また次回の記事でお会いしましょう!

https://github.com/forestnote/pangea-ring0-os

Featured

次世代カーネル「PangeaOS」始動!世界で一番過酷な「Ring 0」開発の裏側をお見せします🛡️

kayo PangeaOS 2026年06月24日 参照数: 9

こんにちは!OS開発者のKayoです👩‍💻✨

いつもブログを読んでいただき、ありがとうございます。本日は、私たちが情熱を注いでいる次世代ベアメタルOSプロジェクト「PangeaOS」の記念すべき第一歩、v0.0.1リリースについてお話しします。

今回は「どうやって作るの?」という技術的な手順はいったんお休みして、そもそも「Ring 0(リングゼロ)のOSを作るってどういうこと?」という根源的なテーマに迫りたいと思います。

なぜ世界中のギークたちは、あえて困難な道を選んでまで独自のOSを作ろうとするのか。その究極のメリットと、立ちはだかる高い壁、そしてセキュリティの深淵について、やさしくひも解いていきましょう☕️🌿

 

👑 究極の特権階級「Ring 0」とは?その圧倒的なメリット

みなさんが普段使っているブラウザやゲーム、LINEなどのアプリは、実はコンピューターの中で「Ring 3(ユーザーモード)」と呼ばれる制限された安全なエリアで動いています。

これに対して「Ring 0(カーネルモード)」とは、コンピューターの心臓部(CPU)における最高特権レベルのことです。例えるなら、巨大なビルの「地下にある中央制御室」。ここに入室できるのはOSの「カーネル」だけです。

Ring 0で動くOS(ベアメタルOS)をゼロから設計することには、既成概念を打ち破る途方もないメリットがあります。

ハードウェアの能力を100%引き出せる 間に誰も挟まないため、「OSの都合で処理が遅れる」というオーバーヘッドが一切ありません。メモリもCPUも、すべてを自分の思い通りに最短距離で操作できます。
次世代の概念を自由に生み出せる 既存のWindowsやLinuxのルールに縛られることなく、「これからの時代に最適なスケジューリング」や「全く新しいネットワークの処理方法」を、自分自身の哲学で設計できる究極の自由があります。
すべてを完全にコントロールできる全能感。これが、ハッカーたちがRing 0の世界に魅了される最大の理由です✨

 

🧗‍♀️ 果てしなく高い「構築の壁」

しかし、強大な力には強大な責任が伴います。Ring 0の世界は、私たちが普段プログラミングをしている環境とは全く別次元の「過酷な荒野」です。

通常のアプリ開発では、画面に文字を出したければ print("Hello") と書くだけで済みますよね。これは、裏でOSが「ディスプレイに信号を送る」という面倒な作業を全部やってくれているからです。

ですが、OSを自作するということは「助けてくれるOSがいない」ことを意味します。

便利な道具(標準ライブラリ)は一切持ち込み不可
メモリの管理も、エラーの処理もすべて自己責任
キーボードが押されたことを認識する仕組みすら、ゼロから作る必要がある
何もない更地に、土を掘って基礎を流し込み、電気の配線から自分たちで組み上げていく。その途方もないスケールと難易度こそが、OS開発の最も高い壁であり、最大のロマンでもあります。

 

🛡️ ひとつのバグが世界を壊す「セキュリティの難しさ」

そして、Ring 0 OS開発において最も頭を悩ませるのがセキュリティと堅牢性の構築です。

Ring 3(通常のアプリ)でエラーが起きても、アプリがフリーズして強制終了するだけで済みます。OSが「あ、このアプリおかしいな」と判断して被害を食い止めてくれるからです。 しかし、最高権力を持つRing 0(OS自体)でエラーや計算ミスが起きるとどうなるでしょうか?

コンピューター全体が巻き込まれ、青い画面(カーネルパニック)になってシステムが完全に沈黙します。

さらに、悪意ある攻撃者(ハッカー)は常にこのRing 0を狙っています。ここを乗っ取れば、すべてのデータと権限を掌握できるからです。これを防ぐためには、以下のような極めて高度な防御設計(Offensive Defense)が求められます。

メモリ空間の厳格な隔離(ページテーブルの管理)
プログラム同士が干渉しないための境界線の設計
想定外の割り込み(例外処理)が起きた時の完璧な防御ネット
ちょっとした「データの上書きミス」や「タイミングのズレ(データレース)」が、致命的な脆弱性に直結してしまう。これが、特権レベルにおけるセキュリティ構築の恐ろしいところです。

 

🚀 だからこそ、v0.0.1の「揺るぎない土台」が意味を持つ

PangeaOSのv0.0.1で、私が「Nix」を使った決定論的な環境構築や、「Rust」という極めて安全な言語のNightly(最新実験)バージョンの導入に全力を注いだ理由は、まさにここにあります。

過酷なRing 0の荒野を開拓し、一切の隙を許さないセキュリティを構築するためには、「開発環境によって動作が変わらないこと」「言語のレベルでメモリのエラーを物理的に防ぐこと」が絶対に必要だったのです。

v0.0.1は、華やかな機能こそまだありません。しかし、これから先どれだけコードが複雑になっても決して崩れない、世界最高峰の堅牢な土台(インフラ)が完成したことを意味しています。

ここから先、PangeaOSはハードウェアの深淵へと潜り、独自のメモリ管理やプロセス制御を実装していきます。まだ見ぬ次世代アーキテクチャの夜明けを、ぜひこれからも一緒に見守っていてくださいね!

それでは、また次回のアップデートでお会いしましょう〜!👋✨

https://github.com/forestnote/pangea-ring0-os

© 2026 NixOctet
  • Home
  • SASOSについて