FreeBSD: 5.2の開発予定項目 5
ストーリー by yourCat
後4ヶ月 部門より
後4ヶ月 部門より
BSD 曰く、 "FreeBSD 5.1をつい先日公開したばかりの FreeBSD 開発チームであるが、10月ごろに予定されている FreeBSD 5.2の開発予定項目が公開されている。見ると、なかなかの量があるように感じられる。リリースが待ち遠しい。
その中の必須解決項目は次の通りである。"
"
- 製品レベルの M:N スレッド
KSE (Kernel Scheduler Entities) の M:N スレッドのサポートは、i386用の5.1において実験中であるが使用可能という状態にまで到達している。5.2では全てのプラットフォームにおいて製品レベル品質で使用可能にする。 - sparc64、alpha、ia64用の KSE サポート
現在、KSE は i386でのみ提供されていて、そこでしか利用できない。i386以外のプラットフォームでも利用できるようにすることが強く望まれている。そして、64ビットアーキテクチャの利用者にも、KSE が広く知られ、その性能面での効果が明らかになるようにする。 - ia64での安定性
5-CURRENT が ia64上で非常に不安定であることが報告されている。ia64用のパッケージ作成を成功させるために問題を解決する必要がある。 - ia64の sio サポート
ia64のシリアルコンソールが HP の Itanium2プラットフォームでちゃんと動かないという報告がされている。sio ドライバをプラットフォームに依存しないように、またバスの取扱いを改善するように再作成する必要がある。 - FAST_IPSEC と KAME の互換性
現在、FAST_IPSEC は KAME IPv6と一緒には使うことができない。これは専用ハードウェアを使って暗号化処理の高速化を行うときに、IPv6パケットを保護するために別レベルの IP トンネル中継が必要になるからである。この問題を解決し、二つのサービスがもっと簡単に一緒に使えるようにする。このために、KAME IPv6コードの中の mbuf ヘッダのコピーや m_tag のサポートについて注意深い見直しが必要になる。 - KAME との同期
FreeBSD の KAME IPv6のコードは実質的に古くなっている。新しいバグ修正や機能追加を取り入れる必要がある。 - ptrace のための truss のサポート
ほとんど全てのプロセスデバッグ用ツールは、procfs 対応でないシステムコールを使うように更新されている。procfs はセキュリティ上の危険性のため使うべきではないので、truss もそれに対応した環境で動くように変更することが強く望まれている。 - Darwin での msdosfs 関連の修正の統合
Apple の OS 製品である Darwin において msdosfs ファイルシステムやその他のカーネルサービスについて広範囲にわたる改良がなされた。これらを見直し、FreeBSD のソースツリーに統合する。 - syscons の sparc64への適応
sparc64へ syscons を移植する。Sun のマウスやキーボード用のデバイスドライバを付け加える。syscons で3ビット以上の背景色を許可する。クリエーターフレームバッファのデバイスドライバの追加。 - UFS における ACL_MASK の umask への上書き
POSIX 1e ACL をサポートしている多くのシステムが小さな仕様違反を許可している。それは、ACL_MASK は umask と論理積をとるのではなく、上書きするという仕様である。結果的に、グループ指向の環境において使いやすいセマンティクスとなっている。 - 細かな単位でのネットワークスタックのロック
ネットワークスタック(特に IPv4や IPv6)の重要な部分では、データ構造のロックが細かい単位で行われている。しかし、ソケットやルーティングに関係するスレッドでは、まだ実現されていない。5.2ではこのような全体的なロックなしで動くネットワークスタックを実現し、その結果ロック競合を減らすことでネットワークスタックや他のシステム要素の性能を改善する。 - ATA ドライバ構造の改良、MP での安全性
ATA コマンドをリクエストキューに置いて、そこで相互にリンクできるようにし、ATA コマンドのダイレクト DMA を許すようにリクエストキュー管理を集中化する。このアーキテクチャの変化により、ATA ドライバの MP 安全性が実現され、Promise 製の RAID コントローラのサポートが劇的に改善される。 - AMD64 Hammer の Tier-1サポート
現在、AMD64は32ビットエミュレーションモードで動いている。64ビットモードではシングルユーザへのブートまでができている。5.2では AMD64アーキテクチャに対して製品レベルのサポートを行う。 - GCC 3.3への更新
AMD64を正しくサポートするには、コンパイラの更新が必要である。しかし、新しい GCC 3.3にはツールのサポートを混乱させる新しい警告エラーがいくつかあり、5.1では導入できなかった。5.2では絶対に導入しなければならない。 - kld 構築基盤の見直し
現在、kld はカーネルのコンフィグや他の kld とは独立に作成されている。その結果、オブジェクトが冗長にコンパイルされるとか、条件コンパイルに必要なカーネルオブジェクトのコンパイル時オプションの管理が不可能という問題を起こしている。構築の効率化やこの種のオプションのより良いサポートのために、kld 構築基盤の修正が必要である。 - 軽い割込みスレッド、コンテクストスイッチ
現在、5.x には2つのクラスの割込みハンドラがある。割込みコンテクストの中で動く高速割込みと、普通のカーネル割込みスレッドの中で動く重いカーネル割り込みである。ハンドラコンテクストの中で割込みスレッドの実行を開始するためには軽いコンテクストスイッチを実行し、ロックのためにスリープするような重いコンテクストスイッチは必要な時だけにするというように、割込みスレッドのコンテクスト管理を最適化することが可能である。この最適化により割込み遅延時間が改善できる。また、カーネル内 (例えばネットワークスタック内) のスレッドワーカー、crypto のワーカースレッドや GEOM の性能を改善するために、付加的なカーネルスレッドのコンテクストスイッチの最適化をすることもできる。 - 完全に動的にリンクするシステムのサポート
5.0や5.1で導入された新しい PAM (Pluggable Authentication Modules) や NSS (Name Service Switch) を用いて、完全に動的にリンクするシステムにすることが求められている。 - APIC PCI 割込みルーティングのサポート
今の割込みルーティングのコードは APIC 全テーブルルーティングを使うと、PCI 相互間ブリッジに隠れている PCI 装置の割込みルーティングを正しく決定することができない。 - GBDE の実行時自動設定と関連する変換作業
現在、GBDE は暗号化ディスク装置をマウントする度に、実行時に手作業でコンフィグしなければならない。このため、/etc/fstab へ簡単に統合できず、自動的にシステムに組み込むことができない。コンフィグ、マウント、ブートにおいてこれを改善し、簡単にこの機能を使えるようにしなければならない。 - MAC 構造での devfs のパス修正
MAC の devfs に渡されるパス名の整合性を向上させるパッチが出されている。これを見直し、試験して統合する必要がある - rpc.lockd(8) の安定性
プロセスはロック待ちの間、割り込むことができない。これを修正するには、ロックのキャンセルと割込みイベントの取り扱い方について調べる必要がある。
リリース予定日 (スコア:2, 参考になる)
修正希望 (スコア:1)
(2) 項目リストの<STRONG>がおかしい。第2番目以降は全文が<STRONG>になっている。どちらかに統一すべきである。
(3) 第2項目の「KSE サポート」の次の改行がなされていない。
以上3件、修正したほうが見やすいと思います。よろしくお願いいたします。
修正しました (Re:修正希望) (スコア:1)
kernel-scheduled entities (スコア:3, 参考になる)
BSDさんは 以前の記事 [srad.jp]でも、この表記を間違えて引用しているようです。 それは 元情報 [freebsdforums.org]の誤りに気がつかずにコピペしたせいだろうと思います。
間違いは誰にもあるので暖かい目で(Slashdot的には生暖かく?) 見てあげましょう。