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

FreeBSD: 半期毎状況報告

ストーリー by GetSet
そしてプロジェクトは進み続ける 部門より

BSD 曰く、 " Scott Long 関係者にあてたメールの中で 3月から9月までの FreeBSD チームの半期毎状況報告を行っている。 AMD64 のサポートが開始されたこと、KSE が 5.1 以降大きく改善 されたことを特筆している。以下にその報告から、興味ある部分を 適当に抜粋して紹介してみたい。" (続く…)

"
  • FreeBSD 用 Bluetooth stack
    URL: http://www.geocities.com/m_evmenkin/
    URL: http://bluez.sf.net
    URL: http://sourceforge.net/projects/openobex/
    担当: Maksim Yevmenkin

    20030908版がリリースされダウンロード可能になっている。また、FreeBSD ソー スツリーに対するパッチも準備している。パッチはレビューのためにコミッターに 送られている。

    最近、FreeBSD の Bluetooth コードを他のBSD システム(OpenBSD や NetBSD)に 移植しようとしている何人かの人からコンタクトがあった。 また、Netgragh 機能を使わないコードの作成作業はゆっくりと進行している。 それができるまでは、Netgragh 版が再優先にサポートされるコードであり続けるだろう。

  • ACPI 状況報告
    URL: http://www.root.org/~nate/freebsd/
    担当: Nate Lawson

    新機能の追加やバグ修正のための ACPI の更新作業が続いている。新しい埋め込み型の 制御ドライバが、もっと頑丈なポーリングサポートや ACPI 2.0 ECDT のサポートととも に、6月に作成された。また、一部のユーザにパニックを引き起こしたACPICA リ ソースリストでのバッファ溢れが修正された。

  • AMD64 への移植
    担当: Peter Wemm

    AMD64 マシンでの完全リリースを妨げていた最後のバグが修正された。 SMP 関連作業は完成に近づき、数日中にはコミットされるだろう。 MTRR のサポートがコミットされ、XFree86 がこれを利用できるようになった。 現在、cvsup は動いているが、ezm3 の移植はまだなされていない。

    2、3の問題が最近報告されたが、全般的に AMD64 プラットホームは 非常に信頼性の高いものになっている。

  • ATAPI/CAM 状況報告
    担当: Thomas Quinot

    ATAng の導入によって、一部の ATAPI/CAM のユーザに様々な問題が発生した。 これらの問題は新しい ATA のコードによってほとんど解決されて いる。

  • バイナリでのセキュリティ対応更新
    URL: http://www.daemonology.net/freebsd-update/
    担当: Colin Percival

    FreeBSD Update は、(Windows Updateのように)セキュリティブランチを追いかけるシステムである。 FreeBSD Update は CVSup によるソース更新に比べて低い回線速度でも十分動き、 より安全である。しかし、これには制限条件がある。 公式のリリースCDからインストールされ、かつ再コンパイルされていないファイルしか 更新できないのである。また現時点では 4.7-RELEASE と 4.8-RELEASE の バイナリのみのサポートとなっている。これは担当者のサーバが buildworld に3時間半 かかるため、これ以上の作業ができないためである。

    近い将来の予定を以下に上げる。より高速なサーバ機材の提供者を 求めている。他のリリース(少なくとも公式にサポートしている全てのリリース)の 更新用バイナリの構築を始める。ローカルにコンパイルされたために、更新しようと して失敗したファイルがあれば警告を発生する。不正侵入検出のために ハッシュ値リストを持ち、それを比較検査するようなコードを付け加える。相互署名の サポートを付け加えて、複数のサーバが独立に更新用バイナリを構築できるように する。

  • bsd.java.mk 2.0 版
    URL: http://www.esil.univ-mrs.fr/~hquiroz/freebsd/bsd.java.mk-2.0.html
    担当: Ernst De Haan
    担当: Herve Quiroz

    Java フレームワークの改善作業が開始された。主要な目的は JDK/JRE の構築及び実行の際の依存性検査の自動化である。 新しい版は維持管理がより容易になり、信頼性が向上する。 そして、頻繁に更新することが可能になる。

  • インテル C コンパイラによる FreeBSD のコンパイル
    URL: http://www.Leidinger.net/FreeBSD/
    担当: Alexander Leidinger

    FreeBSD に icc を移植し、それによって FreeBSD を再構築している。現在、 パッチ修正された icc 7.1 によってそれが可能になっている。 icc でコンパイルされたカーネルで NFS が動かないとか、 IP がこわれているとか、いくつかのバグが残っている。 コンパイル環境の整備ができたら、この分野に詳しい 人たちが、これらの問題を解決してくれるだろう。カーネルが動けば、 次はユーザランドである。一通りうまくいけば、このバイナリが配布できる であろう。

    利点は以下の通りである。コンパイラからのエラーメッセージが違うため、 ソースデバッグのヒントとして役立つ。ソースの移植性が高くなる。P4 により最適化された コードになる。(gcc はこの分野でいくつかの弱点がある。)

  • 暗号化のサポート
    担当: Sam Leffler

    いくつかの新しい暗号化装置のサポートが加わった。SafeNet 1141 は中程度 の性能で今のところ小売り製品としては出ていない。Hifn 7955,7956 は 市場に出始めていて、年末までには入手しやすくなるだろう。どちらの 製品も AES暗号化をサポートしている。SafeNet製品の公開鍵操作のサポート が最近 OpenBSD によってなされた。これは FreeBSD に移植する予定である。 Hifn製品の公開鍵サポートは計画中である。

    暗号化サブシステムの性能に関する論文が Usenix BSDCon 2003 で発表され、 最優秀論文賞を受けている。 最近、NetBSD も暗号化サブシステムを導入している。

  • Device_t のロッキング
    担当: Warner Losh

    device_t のロックにおいて多くの競合が見つかっている。 そのほとんどはドライバがどのように記述されているかによって違っている。 いま、ドライバを使用する各サブシステムの作成者に問い合わせをして、全ての 競合を明確化する作業を行っている。

    問題は detach() が終了する前に、全てのスレッドがドライバから抜け出てい るかを、ドライバが保証できるかということにある。また、ある種のルーチンが 呼ばれる前に全てのスリープしているスレッドがウェイクアップ され、中途になっている参照が残っていないことを他の サブシステムが確かめることができる ようにすることである。

    問題が全て明らかになれば、関連文書を更新することができるだろう。 ドライバのロッキングには問題が多いが、ドライバをどのように書くか を我々がはっきりさせるまでは、特定のドライバの作成者に問い合わせをするのは 時期早尚であろう。

  • ディスク入出力
    担当: Poul-Henning Kamp

    ディスク入出力関係では、以下の項目が進行中である。scsi_cd.c, atapi-cd.c, fd.c を GEOM ドライバに組み込む。softupdates と snapshot の処理を SPECFS から UFS/FFS に 移す。ユーザランドのアクセスを vnode からデバイスドライバに移す。

    これらの準備ができたなら、scatter/gather や mapped/unmapped のサポート が bio/GEOM 構造体に付け加えられるだろう。

  • 動的リンクされた基本的ツール類のサポート
    担当: Gordon Tetlow

    動的リンクされた /bin と /sbin のサポートをコミットした。ただし、デフォルト では設定されていない。冒険好きなユーザは、WITH_DYNAMICROOT フラグを 設定して /bin と /sbin を構築することによってこの機能を試すことができる。 これを 5.2-RELEASE のデフォルトにするためには更なる試験が必要である。 ベンチマークを取りたい人は自由にやってもらいたい。そして結果を送って 欲しい。

  • FreeBSD Java プロジェクト
    URL: http://www.freebsd.org/java/
    担当: Greg Lewis

    Java 移植チームは最近 Diablo JDK/JRE をリリースするという 地点にまで到達した。Diablo のリリースは初めてのネイティブな FreeBSD JDK の バイナリリリースである。 チームは近いうちに JDK 1.4 に従ったリリースを行えるよう、開発作業を継続している。

  • FreeBSD ports モニタリングシステム
    URL: http://lonesome.dyndns.org:4802/bento/errorlogs/index.html
    担当: Mark Linimon

    当初の目的は ports 維持管理作業をより簡単にすることだった。 しかし、general report はそれ以外のユーザにも非常に有用である。 これによって、ある特定のツールが特定のアーキテクチャと OS の組み合わせ で動くかどうかということが、ダウンロードする前に簡単に知ることができる。

  • ia64 への移植
    URL: http://www.FreeBSD.org/platforms/ia64/index.html
    担当: Marcel Moolenaar

    FreeBSD 5.1 以後、2つのマイルストーンに到達した。1つ目は CVS ソースリポジトリ でインテルと HP の両方のマシンをサポートしたことである。これはシリアルポート用 の全く新しいドライバ UART によるものである。2つ目は KSE サポートの完成である。 M:N と 1:1 の両方のスレッドが ia64 で機能しており、古い libc_r ライブラリは 廃止されている。試験により、KSE(すなわち M:N) をデフォルトのスレッドモデルに できることが判明している。

    計画されている PMAP の全面修正は 5.2 リリース以後に終了するだろう。これに より SMP に関する既知の問題を考察し、それらによるパニックを修正 することになるだろう。また、2次効果として大きな性能改善が期待できるだろう。

  • jpman プロジェクト
    URL: http://www.jp.FreeBSD.org/man-jp/
    担当: Kazuo Horikawa

    6月10日、5.1-RELEASE のオンラインマニュアルの日本語訳を公開した。

  • KDE FreeBSD プロジェクト
    URL: http://freebsd.kde.org/
    担当: KDE-FreeBSD Mailinglist

    FreeBSD への移植は KDE 3.1.4 に更新された。それに伴い、QT は 3.2 に更新 された。この双方とも FreeBSD 4.9 に含まれる。gcc -pthread オプション が廃止されたため、FreeBSD -CURRENT 上での KDE の修正に多くの時間がかけられた。

  • カーネルグラフィックインタフェース状況報告
    URL: http://www.FreeBSD.org/~nsouch/kgi4BSD
    担当: Nicholas Souchu

    前回の報告以降、多くの作業がなされた。kgi の WEB コンテンツは作り直された。 テキストモード、グラフィックモード両方のコンソールメッセージ用の新しい コンソールが実現された。Linux の fbdev ドライバをコンパイルする互換レイア が実現された。

  • KSE
    URL: http://www.freebsd.org/kse/index.html
    担当: Dan Eischen
    担当: David Xu

    KSE は、x86、amd64、ia64の上では問題無く動いている。alpha 上のユーザランド は大丈夫だが、カーネルではまだ2,3の機能が実現されていない。 sparc64 ではカーネル内に必要な機能は実現されているが、ユーザランドでの コンテクストスイッチ機能にまだまだ問題がある。

    現在、KSE プログラムは ULE スケジューラーのもとで動作するが、将来は 新スケジューラーのもとでもっと効率良く動くべきであろう。 BSD スケジューラーは現在の KSE インプリメントに対しては依然として最良の スケジューラーとなっている。

  • ネットワークサブシステムのロッキングと性能
    担当: Sam Leffler

    このプロジェクトの目的はネットワークサブシステムの性能改善である。 この作業の大部分はジャイアントロックに全く依存しないように、 ネットワークサブシステムのロッキングを実現することである。 ジャイアントの利用停止は性能改善となり、またマルチプロセッサシステム上で ネットワークスタックの複数のインスタンスの同時操作を可能にする ものである。

    このプロジェクトは8月に開始された。まず重きを置いたのはネットワークコード の下半層である。パケットフォワードがジャイアントロックなしに処理可能と なり、5.2-RELEASE に含めることができた。これを実現するため、ネットワーク インタフェースドライバにロッキング機能が付け加えられた。ネットワーク中の「ミドル ウェア」のコードの大部分がロックされるようになった(ipfw、dummynet、経路制御表、 multicast 経路制御等)。様々な試験システムがネットワークドライバや IP 層での ジャイアントロックなしに何か月も動きつづけている。

    5.2-RELEASE 以降はネットワークサブシステムの上半層とソケット層からジャイアント ロックを取り除く。これが終われば、次は性能の測定と改善である。 究極の目標は、ユニプロセッサで通常の利用時に 4.x と変わらない性能 を実現することである。また、マルチプロセッサではより効率的な並行処理と処理遅延 時間の削減により、4.x に比べて著しい性能向上があると期待している。

  • OpenBSD の pf の移植
    URL: http://pf4freebsd.love2party.net
    URL: http://www.benzedrine.cx/pf.html
    URL: http://openbsd.org/faq/pf/index.html
    担当: Max Laier
    担当: Pyun YongHyeon

    プロジェクトは今春スタートし、ports(security/pf) によるインストール方式で 1.0 版 をリリースした。OpenBSD 3.4 がもうすぐリリースされるので、2.0 もすぐそこに 来ている。移植作業の中で我々は OpenBSD のコードの中のいくつかの バグを明らかにした。試験用のカーネルモジュールの tarball がプロジェクトの ホームページにある。

    PF は OpenBSD において ipfilter の代用品としてスタートし、同じ機能を提供 している。しかし、他のどのパケットフィルタにもない素晴らしい機能を 実現している。pf の FAQ を一度見てもらいたい。

    我々は最終的にはこれが基本システムの中へ統合されることを望んでいる。 その前に、tcpdump と kame に関連したいくつかの問題を解決しなければならない。

  • PowerPC への移植
    担当: Peter Grehan

    しばらく中断していたが、作業は再開された。現在の問題点は、ローダブルモジュール が動くようにすること、NetBSD の dbdma コードを NEWBUS化すること、 BMAC イーサドライバを完成することである。するべきことは非常に多い。 協力者を求めている。

  • リリース作業状況
    担当: Scott Long

    4.9のリリースが間近である。x86 アーキテクチャに対する物理 アドレス拡張(PAE)が、4-STABLE に期待される安定性や性能とともに提供 される。いつものように、公式 CD を購入することを忘れないで欲しい。

    FreeBSD 5.1 は6月にリリースし、5.0 に比べて格段に向上した安定性を 提供している。これには複数の CPU に渡る真の意味でのマルチスレッド 処理を可能にする、KSE(カーネル内実行順序付き要素)の実現がなされている。 FreeBSD 5.2 は 2003年末にリリースされる予定で、ネットワーク関連の改善 と全体的な性能向上をねらっている。

  • 緊急用ツール構築基盤(rescue)
    担当: Gordon Tetlow
    担当: Tim Kientzle

    緊急用ツール構築基盤(rescue)がコミットされた。-s と -j のフラグを同時に使用 して make するとバグになるという問題がある。

  • uart (汎用非同期式送受信デバイス)
    担当: Marcel Moolenaar

    uart(4) プロジェクトはレガシーフリーな構成において、きちんと動くシリアル インタフェース(例えば、RS-232-C等)を持つ必要があり、従来の sio(4) を 単純に変換しようとして失敗したことから生まれたものである。sio(4) の 最大の問題は、カーネルのコア部分に様々な汚いやり方でからみついている ことである。何かを破壊することなしにこれを変換することはできなかったのである。 このような状況の中で UART デバイスのアイデアが生まれた。

    解決すべき最大の問題点は、バスの初期化以前に行う低レベルのコンソール アクセスであった。sparc64 のキーボードではシステムデバイスの概念を導入 し、コンソールをシステムデバイスとしてカプセル化することで、これを解決した。

    uart(4) ドライバは pc98 上の UART ハードウェアをサポートするために強化 され、この作業は今も続いている。uart(4) はマルチポートカードをサポート していないので、puc(4) を強化するか、他のカプセル化ドライバを導入する 必要がある。

  • VideoBSD
    URL: http://people.FreeBSD.org/~jmg/videobsd.html
    担当: John-Mark Gurney

    まだ計画段階である。ユーザランドとカーネルの両方で使える拡張可能な インタフェースを作成中である。また、ユーザランドで実現されたデバイス ドライバとアプリケーション間にどのようなインタフェースを用いるかを 検討中である。

  • WifiBSD 状況報告
    URL: http://www.wifibsd.org
    担当: Jon Disnard

    WifiBSD は無線アプリ用の FreeBSD の小型版である。最初は特定の機種 で動いていたが、今は FreeBSD がサポートしているターゲット全てで動作する。 5.2-RELEASE に対応するよう、準備が進んでいる。設計目標は、プロアマを 問わず802.11ワイアレスギアとしての機能性を実現することである。 HTTP インタフェース、コンソールメニューインタフェース、インストール機能 等が求められている。

  • ワイアレスネットワークのサポート
    担当: Sam Leffler

    前回の状況報告以来、多くのバグが修正された。セキュリティ改善の作業は 遅れている。しかし、新しい機能実現やバグ修正がコードを共有している 他のグループから提供されている。特に、NetBSD は最近改定版の802.11層を 導入したし、Linux ベースの MADWIFI プロジェクトもそれを使用している。 MADWIFI のユーザは既に 802.11 フレームの断片化再結合や改善された信号 モニタリングのような機能を持っている。パワーセーブポーリングや改善された レートコントロールが NetBSD 関係者から提供されることが期待されている。 WPA のサポートはまだ計画中である。うまくいっても、1月ごろのスタート となるだろう。

報告の詳細は原文を参照していただきたい。"
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

アレゲはアレゲを呼ぶ -- ある傍観者

読み込み中...