レーナックス OS (ラーニクス オー エス)

2025/12/26 21:59

レーナックス OS (ラーニクス オー エス)

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

本書は、外部ライブラリを最小限に抑え(特にボイラープレートを削減するもののみ)、Rust だけで POSIX 準拠のオペレーティングシステムを構築する方法を読者に教えます。コードリポジトリを大いに活用し、カスタム Rust 文法ハイライトで分かりやすくしています。読者は基本的なアセンブリ(簡単な mov や算術)、ポインタ/メモリアドレス、および少なくとも1つのプログラミング言語を知っていることが前提です。深い Rust 専門知識は不要です。著者は OS 開発に典型的な低レベル視点を採用しながら、Rust の安全機能を活かしてボイラープレートコードを削減しています。詳細なロードマップが段階的に進めます:単体バイナリのコンパイル、ブートローダー、デバッグと CPU モード遷移、ページングとカスタム malloc 実装、割り込みディスクリプタテーブル(IDT)の設定、ファイルシステム・ドライブドライバの追加、プロセス管理、シェル構築、最初のプログラムとして Doom の実行、そして最後に仮想化について触れます。このハンズオンアプローチは、OS 開発者志望や Rust 愛好家を対象とし、学術界・産業界でオペレーティングシステムが教えられ構築される方法に影響を与える可能性があります。

本文

キーボードショートカット

  • ← もしくは → を押して章間を移動
  • S または
    /
    を押して本の中で検索
  • ?
    を押すとこのヘルプが表示される
  • Esc を押すとヘルプを非表示

LearnixOS の本

「簡潔に説明できないものは、十分に理解できていない」 – アルバート・アインシュタイン

こんにちは! この本では一緒にオペレーティングシステムについて書き、学んでいきます。
外部ライブラリを一切使わずに Rust だけで POSIX 準拠の OS を実装します。思考過程・コードスニペット・実装はすべてこことリポジトリで説明しています。

注: Rust コードの構文ハイライトは全て自作です。バグを発見したらコメントや issue で教えてください。

基礎知識

本書ではある程度のプログラミング経験が前提ですが、必ずしも Rust を使った経験が必要というわけではありません。
低レベルプログラミングに不慣れでも構いません。ただし以下を理解していることが望ましいです。

  • アセンブリの基礎 – 単純な
    mov
    命令や基本的な算術演算
  • メモリの基礎 – ポインタ、アドレス
  • 少なくとも一つのプログラミング言語 – Rust の知識はあると便利ですが必須ではありません
  • 動機付け – これは複雑なテーマです

もし前提が不明瞭だったり、理解しにくい箇所があれば issue を開いてください。より分かりやすく説明します。

ロードマップ

  1. スタンドアロンバイナリのコンパイル
  2. ブートローダー、デバッグ、ステージ、レガシー機能
  3. 重要な CPU モードと命令
  4. ページングと独自
    malloc
    の実装
  5. 割り込みディスクリプタテーブルの活用
  6. ファイルシステムとディスクドライバ
  7. プロセス観点で考える
  8. シェルを書く
  9. 最初のプログラムを走らせる(はい、Doom!)
  10. 続きは――仮想化と他 OS VM のロード

スター・ウォーズへの言及ではありません。

ボイラープレートコードを削減するだけのライブラリを使用します―それらも解説します。

これらは初期段階やいくつかの最適化に関連しています。集中した学習で十分です。

同じ日のほかのニュース

一覧に戻る →

2025/12/27 2:13

**原文:** 「How uv got so fast」 **改訂(整理済み):** 「How did UV get so fast?」 **日本語訳:** 「UVはなぜそんなに速くなるのですか?」

## Japanese Translation: ``` ## Summary uv は Rust のみを利用するよりも、モダンな設計選択とパッケージング標準を採用しているため、pip より優れています。不要なオーバーヘッドを伴うレガシー機能(.egg サポート、pip.conf の読み込み、デフォルトのバイトコードコンパイル、system‑Python インストールの許可、厳格な仕様準拠、requires‑python の上限無視、複数インデックスが設定されている場合に最初のインデックスを選択)を削除することで、uv は不要なコードパスを排除します。さらに、HTTP レンジリクエストによる部分的な wheel ダウンロード、並列ダウンロード、ハードリンクまたはコピーオンライト可能なグローバルキャッシュ、ネイティブ TOML パース、および効率的な PubGrub 依存関係解決器を使用してインストール速度を加速させています。Rust は rkyv によるゼロコピー逆シリアライズ、ロックフリーの同時実行データ構造、単一静的バイナリであるためのインタプリタ起動コストゼロ、および高速比較/ハッシュのためのコンパクトな 64‑ビットバージョン表現を提供します。 Python のパッケージングは、setup.py スクリプトがインストール時に実行される必要があったため遅くていました。PEP 518–658 の導入によりメタデータが宣言的フォーマットへ移行し、PyPI 上の Simple API(2023年5月以降利用可能)が有効になりました。uv は 2024 年2月にリリースされ、初日からこれら新しい標準を活用しています。 影響は大きく、開発者は依存関係をより迅速にインストールでき、軽量な環境を構築できます。これは、Python エコシステム全体で最新のパッケージング標準を完全にサポートするツールへの広範な移行を促進する可能性があります。 ```

2025/12/23 23:51

2025年の最高アイテムとおすすめ

## Japanese Translation: ## Summary 2025年、著者はハンス・ボーマーの再帰的実数計算法や日本漫画カフェドキュメンタリー『マンブー』などの注目すべきIT・テック発見で生産性の高い一年を達成しました。彼はClojureのcore.asyncとJDK 21バーチャルスレッド、結合型関数言語Juxt、WordPressからMarkdown/org-mode静的サイトパイプラインへの移行についての技術ブログを複数公開しました。また、ブラジルで開催されたClojure/conjとClojure South Brazilという二つの主要なClojureカンファレンスに参加し、コミュニティの影響力を強調しました。 色分けされた月次マトリクスを備えたスプレッドシートベースのタスクトラッカーが導入され、著者のミニマリストでシステム思考的アプローチを反映し、専用プランナーよりもスプレッドシートを好む姿勢を示しました。プログラミングはClojure(16年にわたるフルタイム作業)に集中しつつ、Joy、Clojerl、Scittle、Javaによるコンパイラ開発も探索しました。 2025年にはゲーム・フィクション・システム思考に関するエッセイなど非技術的なアウトプットが増加し、2026年にはさらに多くのフィクションとカードゲームルールを企画しています。著者の「人生を変えるテクノロジー」主張はZettelkastenメモ取り法の採用に集約され、新しい非技術的投稿が可能になりました。大規模言語モデル(LLM)との広範な実験は限定的な実践的利益しか生まれず、問題設定とソクラテス対話における欠点を批判しています。 また、本年には好きな本(例:『オシリスの目』、『ナルキッサスとゴールドマン』)、音楽、映画、ポッドキャスト、テーブルトップゲームの厳選リストも含まれました。2026年を見据えて、著者は非技術的執筆を増やし、カードゲームルールを発表し、Clojure 1.13を進化させ、物理アーティファクトを作成し、未翻訳の本を読み、Goodnotes、Antinet、Booxなどのツールを使ってテックラダーを洗練する予定です。すべてはミニマリストでシステム志向のワークフローを維持しながら行われます。 この要約は元のリストからすべての主要ポイントを取り込み、推測を避け、明確な主旨を提示し、曖昧または混乱する表現を排除しています。

2025/12/27 8:09

「テキストに常に賭ける」

## Japanese Translation: ## Summary テキストは、これまでに発明された中で最も強力で多用途かつ信頼性の高い通信技術であり、可能な限り常に選択すべきです。約5,000年間安定した媒体として存在し、その長寿を示す耐久的な遺物が残っています。テキストは比類のない柔軟性を提供します:正確な意味を伝えることができる一方で、暗黙の文脈も許容するため、文学・歴史・哲学・数学・論理学・プログラミング・工学・注釈学・ファンフィクションに不可欠です。他のメディアと比べてテキストは格段に効率的であり(例:5 kB のブログ投稿がより大きな画像と同じ情報量を持つ)、電信・電子メール・チャット・ウェブなど後続技術を可能にしました。テキストは一対一、一対多、多対多のあらゆる社会的相互作用をサポートし、検索性・索引化・翻訳・非同期性・アルゴリズム処理(例:差分検出や要約)が可能です。また、多者編集、分岐会話、注釈付け、引用、構造化応答、およびレビューも許容します。著者は、テキストが通信・データ保存・アルゴリズム処理の基盤メディアとして残ると信じており、その幅広さ・深さ・スケーラビリティに匹敵するフォーマットは他に存在しないと述べています

レーナックス OS (ラーニクス オー エス) | そっか~ニュース