ブックマーク / valinux.hatenablog.com (8)

  • OS徒然草 (1) - VA Linux エンジニアブログ

    はじめに コンピュータのアーキテクチャ プログラムの構造 あとがき 執筆者 : 小田 逸郎 はじめに 筆者は自分のことを OS 開発者 (OS屋) だと思ってます。最近は、OSにあまり深く関われていないのですが、筆者が若かりし頃に情熱を注いだものであり、筆者の基盤をなしているものであることには間違いないです。 筆者が OS (UNIX) の開発に携わり始めたのは、1986年のことなので、もう40年近く経ってしまいました。その間に OS の規模も随分大きくなってしまったようです。 筆者が始めた頃の UNIX は、デバイスドライバを除くと、20K行くらいだったと記憶しています。 全コードをラインプリンタで出力、コピー、製し、皆で読み合わせて、勉強会をしたりしていました。そんなことができる分量だったのです。 今の Linux の規模はどれくらいでしょうか。筆者たちが「Linuxカーネル 2.6

    OS徒然草 (1) - VA Linux エンジニアブログ
    toshikish
    toshikish 2024/07/26
  • ローカルLLMとRAGで自分の外部記憶を強化しよう - VA Linux エンジニアブログ

    はじめに 自宅PC編 会社サーバ編 感想等 執筆者:佐藤友昭 ※ 「ディスアグリゲーテッドコンピューティングとは何か?」連載記事一覧はこちら はじめに 作業ログや検討メモ、参照した定型論文や書籍、ネット上の記事、視聴した講演やウェビナーのメモ等、日常を記録する情報は日々増えていく。これらの情報はできれば後に役立てたいと思うが、筆者の場合、なかなか上手くいかない。自分の外部記憶を紐解いてみると、記録したことすら忘れてしまっている項目が大半である。稿では、ローカルLLMとRAGを用いて自分の外部記憶にいろいろと質問できるようにする方法を入門的に紹介する。決してベストプラクティス的な内容ではない。 自宅PC編 まずは、普段自宅で使用しているLinux PCを実験台として使えそうか試してみてから会社のサーバに適用してみることにする。 第一の要件は、ローカル環境で動作することである。情報の性質によ

    ローカルLLMとRAGで自分の外部記憶を強化しよう - VA Linux エンジニアブログ
    toshikish
    toshikish 2024/07/21
  • 新Linuxカーネル解読室 - ソケットインターフェース(データ構造と概要編) - VA Linux エンジニアブログ

    Linuxカーネル2.6解読室」(以降、旧版)出版後、Linuxには多くの機能が追加され、エンタープライズ領域をはじめとする様々な場所で使われるようになりました。 それに伴いコードが肥大かつ複雑化し、多くのエンジニアにとって解読不能なブラックボックスとなっています。 世界中のトップエンジニア達の傑作であるLinuxカーネルにメスを入れ、ブラックボックスをこじ開けて、時に好奇心の赴くままにカーネルの世界を解読する「新Linuxカーネル解読室」プロジェクト稿では、旧版第21章で解説されていたソケットインターフェースについて、カーネルv6.8のコードをベースに主にデータ構造を中心に解説します。 はじめに ソケットの実体と概要 ソケット操作関数の実装 ファイル操作関数によるソケット操作の実装 次回予告: ソケット生成編 執筆者 : 須田 哲志、稲葉 貴昭 ※ 「新Linuxカーネル解読室」

    新Linuxカーネル解読室 - ソケットインターフェース(データ構造と概要編) - VA Linux エンジニアブログ
    toshikish
    toshikish 2024/06/20
  • 新Linuxカーネル解読室 - ソフト割り込み処理 - VA Linux エンジニアブログ

    Linuxカーネル2.6解読室」(以降、旧版)出版後、Linuxには多くの機能が追加され、エンタープライズ領域をはじめとする様々な場所で使われるようになりました。 それに伴いコードが肥大かつ複雑化し、多くのエンジニアにとって解読不能なブラックボックスとなっています。 世界中のトップエンジニア達の傑作であるLinuxカーネルにメスを入れ、ブラックボックスをこじ開けて、時に好奇心の赴くままにカーネルの世界を解読する「新Linuxカーネル解読室」プロジェクト稿では、旧版第3章で解説されていたソフト割り込み処理について、カーネルv6.8/arm64のコードをベースに解説します。 はじめに 割り込み禁止区間と応答性について perfにおけるNMI割り込みから見る応答性 ソフト割り込み処理 ソフト割り込み処理の考え方 ソフト割り込み実行までの流れ ソフト割り込み要求(RCU_SOFTIRQの場

    新Linuxカーネル解読室 - ソフト割り込み処理 - VA Linux エンジニアブログ
    toshikish
    toshikish 2024/06/14
  • 新Linuxカーネル解読室 カテゴリーの記事一覧 - VA Linux エンジニアブログ

    カーネルv6.8のコードをベースに、プロトコルごとに異なる処理をソケットがどのように抽象化しているのか、またソケットがなぜファイルとして操作できるのかについて、データ構造を中心に解説します。

    新Linuxカーネル解読室 カテゴリーの記事一覧 - VA Linux エンジニアブログ
    toshikish
    toshikish 2024/06/13
  • Linuxカーネル解読室 再び - VA Linux エンジニアブログ

    Linuxカーネルコード解析プロジェクト立ち上げ Linuxカーネル成長の歴史 カーネルの大きさ バージョン番号 SCM導入 カーネル機能の変遷 執筆者 : 高橋 浩和 ※ 「新Linuxカーネル解読室」連載記事一覧はこちら Linuxカーネルコード解析プロジェクト立ち上げ 弊社内にて若手技術者が中心となり、最新のLinuxカーネルコード全体を読み解くプロジェクトが進行中です。 解析したコードのうち興味を惹かれたもの、重要そうなものを中心にブログ記事にまとめていく予定です。 詳解LinuxカーネルやLinuxカーネル2.6解読室を執筆していたころよりLinuxカーネルは大きく膨れ上がっています。 どこまで辿り着けるかは分かりませんが、気長にお待ちください。 対象Linuxカーネルのバージョンは6.8 ブログ執筆中に興味深い機能が取り込まれたら、より新しいバージョンのカーネルについて解説する

    Linuxカーネル解読室 再び - VA Linux エンジニアブログ
    toshikish
    toshikish 2024/06/13
  • Qemuのしくみ (の一部) - VA Linux エンジニアブログ

    1. 細々とした予備知識 1.1 Qemuのデバイスエミュレーション 1.2 QemuのCPUエミュレーション 1.3 Qemuのスレッド 2. 追加のI/OスレッドとAioContext 2.1 追加のI/Oスレッド 2.2 AioContext 2.3 Big Qemu Lock 3. AioContextの各種イベント処理 3.1 AioHandler 3.2 event_notifier 3.3 タイマー、Bottom half 3.5 スレッドプール 執筆者 : 箕浦 真 こういう 仕事をしていると、ときどきQemuの仕組みや内部動作をお客様に説明する必要があることがあるが、そういう時に「Qemuの〜についてはここを見てね」と言えるような文書があるといいなぁと思って自分で作ってみることにした。 1. 細々とした予備知識 1.1 Qemuのデバイスエミュレーション Qemuはコンピ

    Qemuのしくみ (の一部) - VA Linux エンジニアブログ
    toshikish
    toshikish 2023/01/13
  • 詳説 eBPF 実装編 - VA Linux エンジニアブログ

    1. はじめに 2. 使用環境 3. コンパイル 4. opensnoopとは 5. opensnoop.bpf.cの解説 5.1 mapの宣言 5.2 BPFプログラムのメイン処理 5.2.1 33-68行目 5.2.2 88-124行目 5.2.3 プログラムタイプとコンテキスト 5.3 opensnoop.bpf.cのコンパイル 6. opensnoop.cの解説 6.1 ヘッダファイルのインクルード 6.2 BPFアプリケーションのメイン処理 6.3 231-232行目 6.4 opensnoop_bpf__open 6.4.1 bpf_object__init_maps 6.4.2 bpf_object_init_progs 6.5 241-245行目 6.6 opensnoop_bpf__load 6.6.1 bpf_object__create_maps 6.6.2 bpf_

    詳説 eBPF 実装編 - VA Linux エンジニアブログ
    toshikish
    toshikish 2022/08/26
  • 1