パスワードを忘れた? アカウント作成
15281047 story
Windows

Microsoft、eBPFをWindows上で利用可能にする計画 29

ストーリー by nagazou
計画 部門より
headless 曰く、

Microsoftは10日、eBPFをWindows上で実行できるようにする計画を発表した(Microsoft Open Source Blogの記事Phoronixの記事The Registerの記事BetaNewsの記事)。

eBPFはカーネルソースコードを変更したり、カーネルモジュールを読み込んだりすることなしにLinuxカーネル上でサンドボックス化されたプログラムを実行する仕組み。プログラム可能性や拡張性、敏捷性を提供する革新的な技術として知られており、DoS保護などのユースケースに適用されてきた。eBPFサポートは元々Linuxカーネル上に実装されたものだが、他のOSで利用可能にすることや、カーネルだけでなくユーザーモードのサービスやデーモンにも拡大することへの関心が高まっているという。

Microsoftのebpf-for-windowsプロジェクトはWindows 10/Server 2016以降でeBPFを動作させるもので、開発者が使い慣れたeBPFツールチェーンやAPIを利用可能にすることを目指す。プロジェクトはeBPFのフォークではなく、IO VisorのuBPFvbpfのPREVAIL eBPF verifierを含む既存の複数のeBPFオープンソースプロジェクトがWindows上で実行できるよう、Windows特有のホスト環境を追加する。プロジェクトは一般に適用可能(Linux固有ではない)なフックやヘルパーをeBPFプログラムでサポートすることを意図しており、eBPFプログラムとやりとりするアプリケーションにソースコードの互換性を提供するLibbpf APIをWindows上で公開するとのことだ。

  • by Anonymous Coward on 2021年05月12日 14時55分 (#4029220)

    Berkeley Packet Filter(BPF)入門
    https://www.atmarkit.co.jp/ait/series/11804/ [atmarkit.co.jp]

    いまさら人に聞けないBPF系の小連載。よくあるミニVMとどう違うかも書いてあった…と思う。
    今後連載再開になるかもね。

    ここに返信
    • by Anonymous Coward

      記事の題名を読んだだけだけど、いつの間にBPFこんなことになったの???

      昔はただのネットワークパケットフィルタだったのに、カーネルのデバッグとかDTraceみたいなことになってるんだけど!?

    • by Anonymous Coward

      これは普通のユーザーはカーネルハッカーか何か特殊な用途で使う以外あまり利用機会は無いのでは?
      知識として存在を知っておけばいつかは役に立つ系かな

  • by Anonymous Coward on 2021年05月12日 13時36分 (#4029143)

    Vistaあたりから、Windowsでもサンドボックス的な機能はあるのでは?
    MS製ブラウザとかそういった機能を使ってたような

    ここに返信
    • by Anonymous Coward

      開発者が使い慣れたeBPFツールチェーンやAPIを利用可能にすることを目指す。

    • by Anonymous Coward

      全然違うよ.そんなこと言い出したら昔から公園にある砂場もサンドボックスです.
      「名前を聞いたことがある」ってだけで判ってる気になるのはやめましょう.

      今回の話は

      1) カーネルモジュール(ドライバ)単位でカーネル内にサンドボックスを用意する点
      2) Linuxで開発されてきたeBPFとソースコードレベルでの互換性を目指している点

      この2点だけでも従来のWindowsのサンドボックス的なものとは全く別物です.違いは他にもたくさんあるけど詳細は割愛.

    • by Anonymous Coward

      Vista から、というと UAC の事かな…?

      Internet Explorer でも確かに「保護モード」という名称で採用されています。が、適用先が非カーネル領域 (通常の exe プログラムが動作する Win32) での話になるので eBPF の目指す方向性とは異なると思います。

      • by Anonymous Coward

        いろんな種類/目的のサンドボックスがあるから、なんと言えんが、Vistaからというなら、ファイルシステムとレジストリをネットワーク跨いだトランザクション張れるようになったやつじゃないかね。
        トランザクションはって、中でいろいろやってロールバックすれば、何事もなかったように復元される。Vista/7世代のインストーラとかではよく使われてた。PC間のライセンス移動がアトミックに保証できたしな。
        Win10でも残ってはいるけど、Win8からは非推奨にされてる。

        UACはサンドボックスとは違うし。

  • 道理で、なぜこんなところにBPFが?と思ったわい

    ここに返信
    • 名前はそこから取ってきている模様
      // Band Pass Filterでもないようだ
    • by Anonymous Coward

      eBPFのBPFもバークレーパケットフィルターですよ。元の意味が失われただけで。

      ハンバーグみたいなみたいなもんか。
      和風ハンバーグ → 和風ハンブルグ風ステーキ。
      チーズバーガー → バンズにチーズと (ハン)ブルグ風ステーキを挟んだもの。

      • by Anonymous Coward

        そこはDHCみたいなもんか
        も追加で。
        # BHCでもDDTでもなく

    • by Anonymous Coward

      フィルタが進化して内外のデータを横取り抱え込みファンクションだけを借りる仮想機械に進化したと

  • by Anonymous Coward on 2021年05月12日 15時07分 (#4029231)

    不安定な旧型のWindows10を動かす方がデメリットしかない。
    マイクロソフトもWindowsを開発中止して
    LinuxベースにWindowsアプリを動かすベースを作った方がいいんじゃないかと
    こんな不安な作りでは先がないんだし。

    ここに返信
    • by Anonymous Coward

      先はないかもしれないが、まだまだ儲かってるだろ。
      こういうとき、あっさり「両方」に投資しちゃうのが、MSの強み。

    • by Anonymous Coward

      またあんたか。大人しくAppleでもLinuxでも使ってろよ。

      • by Anonymous Coward

        それらを「道具として使える」人間なら
        >LinuxベースにWindowsアプリを動かす
        こんなの出来たらいいな程度には思っても強く望むことはないよ。

    • by Anonymous Coward

      あっ!日本語勉強中のおじさんだ!

    • by Anonymous Coward

      「いいんじゃないかと」と思うのなら、なぜ自分で作らない?作ってみせてほしい。

    • by Anonymous Coward

      不安定な旧型のLinuxを動かす方がデメリットしかない。
      だからWindowsベースでLinuxの機能を部分的に取り込む方が賢い。

  • by Anonymous Coward on 2021年05月12日 16時46分 (#4029317)

    ユーザーランドなんかいらなかったんや
    全部カーネル内で実行すればよかったんや!
    ってこと!?
    時代はモノリシックカーネルの完全勝利なの?

    ここに返信
    • by Anonymous Coward

      その昔、「カーネル内でhttpdを動かせばめっちゃ高速じゃね?」っていう発想から、 khttpd (TUX web server) [wikipedia.org] ってのが作られておってのぉ・・・・

      • by Anonymous Coward

        付け足し。NTにも、できるだけカーネル内で処理してみようっていって、http.sysってのがあるよ。ちょっと怖い気もするけど。

    • by Anonymous Coward

      ソースコードレベルで奇麗にモジュール化して分離されてれば、
      実行バイナリがモジュール化されなくても保守性がいいのがLinuxや*BSDだな

      まあ、CPUの性能やキャッシュサイズも上がったし、パフォーマンスを落とさないマイクロカーネル実装の研究も進んだので、
      Linuxとかマイクロカーネル化してもいいかもね
      L1L2L3$を持って、L3$が16MB以上のCPUに最適化したマイクロカーネルOSとかなら、
      現状の技術だとパフォーマンスほとんど落ちなさそう

      • by Anonymous Coward

        >16MB以上のCPUに最適化
        汎用性が売りのOSで特定条件のときだけ速くなってもなぁ…
        AVX512特化やるのと大差ないし。

      • by Anonymous Coward

        16MBだと現状Zen3専用だな。
        ってのは冗談だとして、8MBまでに納めれば10年前のある程度のCPUからカバーされるので
        ハイパフォーマンスモードとして実装はアリだと思う。

typodupeerror

UNIXはただ死んだだけでなく、本当にひどい臭いを放ち始めている -- あるソフトウェアエンジニア

読み込み中...