[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: /about/ROADMAP



三輪です。

2010年2月21日19:58 砂川 恵輝 <kei_sun@ba2.so-net.ne.jp>:
> 砂川です。
>
>
> 岡野さんにも見ていただいたので、下記の点を適用してコミットして
> いただけるとうれしいです。

適用したものをメール末尾に書きました。
対訳のうち和訳のみにしました。

ところで...

>
> On 2010年 2月 20日 , at 19:35, OKANO Takayoshi wrote:
>
>> おかのです。
>> commit しませんか?

これは私向けではないですよね?
( 私には commit 権限ないですよね.... )


>>ここから
#	%NetBSD: ROADMAP,v 1.23 2008/08/04 15:37:05 simonb Exp %

NetBSD の上位概念ロードマップ


このファイルは次の N 年間で NetBSD
をどのようにしたいかというロードマップを含んでいます。あまり詳細に書かれておらず、また個別の項目には深入りしていません。いくつかの異なった
"TODO" ファイルと "NetBSDプロジェクト"
のリストが別の場所にあり、それらにはより詳細な計画が含まれています。それらのプロジェクトと計画は、このロードマップの枠組みに沿って実施される予定です。


これはボランティアプロジェクトなので、これらの項目に期日はありません。これらの項目は順不同に着手されるかもしれないし、着手されないかもしれません。そして、技術とニーズの変化に応じて、ロードマップは変化するかもしれません。


もちろんロードマップは NetBSD プロジェクトの幅広い目標にあわせて構成されます:

	* きれいな設計		* 堅牢性		* 速さ
	* きれいなライセンス	* 移植性		* 相互運用性
	* 適合性		* 商用での利用	* 研究での利用
	* 趣味での利用

一般的に、私たちのゴールは以下のようなものです。

	* 最高水準のツール (currentの (そしてstableの) GNUツール、Solaris の dtrace
または同程度の機能性の追加、すべてのプラットフォームのカーネルコアダンプと事後分析ツール、PMC
のようにハードウェアを用いたパフォーマンス分析ツール)

	* 権利つきコード無しにすべてのデバイスのサポートすること

	* 基本システムの成長管理
	
	* 基本システムの最小量のGPL / LGPLコード
	
	* 移植性を損なうことのない最高性能

	* 最高水準のカーネルとユーザーランド

	* バグなし、セキュリティ脆弱性なし

	* pkgsrcと組み合わせて、様々なユーザー、管理者、研究者のための完全なシステム:
デスクトップ、組み込みデバイス、サーバー、ワークステーション、ポータブル機器

このリストは全くもって包括的ではなく、また意図して野心的になっています。これらのゴールのうち 1
つは、我々が取り組む各々の分野で優れたものを作ることであり、「器用貧乏」になりたいわけではありません。


後述する具体的な項目は、おおざっぱなカテゴリーに分けられます:
	1. プラットフォームから独立したカーネル
	2. プラットフォームから独立したユーザーランド
	3. プラットフォームに依存するカーネル
	4. プラットフォームに依存するユーザーランド
	5. その他


あなたがプロジェクトを引き受けたいと思うならば、あなたの名前/電子メール (あなたが主張しているプロジェクト
(プロジェクトの一部ならば、その部分を指定してください) の日付)
と期待される完成日を記録してください。これにより、うまく行けば努力の重複と、度々または長期間プロジェクトが停滞することの両方を避けることができるでしょう。


これがボランティアプロジェクトであり、どのリリースバージョン (または名前)
も、完全であるか、または着手されている、ということを保証しているわけではないことに注意してください。興味がある方は以下に連絡してください。

        core@NetBSD.org


詳細な情報。

1. プラットフォームから独立したカーネル
==============================
aa. スケジューラ機能
	コンテキストスイッチの分離とスレッドのスケジューリング。
	責任者: yamt
	ETA: 5.0 (yamt-idlelwp ブランチ)
	モジュール実装のための汎用スケジューラ API。
	責任者: dsieger
	ETA: 5.0 (yamt-idlelwp ブランチにマージ)
	新しいスケジューラ (POSIX リアルタイム機能と、CPU 親和性と、MP システムのためのより良いサポート)
	責任者: rmind
	ETA: 5.0

ab. ジャイアントロックの削減
	このための最善の方法がいくつか提案されています。わずかな人数でも前進し、このゴールへたどり着くことを必要としています。
	責任者: ad
	aETA: 5.0 (vmlocking2 ブランチ)


ac. wedge サポートの拡大
	wedge の開発を完了させてること。そして、互換性に必要があるのを除いて disklabels を引退させること。
	責任者: thorpej (おそらく)
	ETA: 5.0


ad. ボリューム管理
	パーティションを拡張、縮小、移動できるようにすること (可能であれば、ファイルシステムについても同様に)
	責任者: 未定
	ETA: ?


ae. スナップサポートがある高性能の、そして、たぶんログベースのジャーナルファイルシステム
	FFSにログ、ジャーナル、スナップショット機能を追加するのは一大事です。おそらく別のファイルシステムならより綺麗で速いでしょう。
	責任者: simonb
	ETA: 5.0 (もっとも、ジャーナリングとスナップの組み合わせは、まだ同時に機能していません)


af. ieee1394サポートの拡張
	可能な限り DV、ディスク、ネットワークデバイスをサポートします。
	責任者: 未定
	ETA: 4.0ではFireWireサポートの準備がされています。

ag. 汎用デバイス hotplug サポート
	すべてのデバイスとそのバスの hotplug
をサポートしています。これはサブカテゴリーに分割されるべきであり、SATA、SCSI、FC、USB、FireWire、 PCI (PCI X
と PCI-Express)などの場合は、プラットフォームに依存する領域にまたがります。いくつかの初歩的なサポートがありますが、それは全く包括的ではありません。
	責任者: bouyer
	ETA: ?

ah. サスペンドとリジュームサポート
	PC、MacPPC、そしてサスペンドとリジュームをサポートしているハードウェア (sparc、hpcsh、hpcarmなど) ならば完全に使用できるべきです。
	責任者: jmcneill、joerg
	ETA: 5.0

ai. LWP サポートを完了させること
	LWP 化以前のコードの名残がまだカーネルに残っており、これはアップデートすべきです。(ktrace以外何がある?)
	責任者: darrenr、skrll、christos は ktrace-lwp をしました。
	ETA: 4.0

aj. PTHREAD_CONCURRENCY > 1 サポート
	1 プロセスが確実に 1 つ以上の CPU を使用できるようにする必要があります。
	責任者: ad
	ETA: 5.0 (newlock2 による 1:1 pthread は含まれます)


ak. AIO サポート
	POSIX aio_*() によるカーネルでの完全な非同期 I/O (AIO) サポート
	責任者: rmind
	ETA: 5.0


al. モダンなパラレルポートサポート
	双方向パラレルポートと、更なるパラレルポートのサポートを完了させること。
	責任者: jdolecek
	ETA: ?


am. NFSv4
	現在の NFS の水準まで上げること。
	責任者: 未定
	ETA: ?

an. カーネルのロック機構をアップデートすること
    thorpelによる今や古めかしいnewlockブランチに良い作業結果があります。これはいくつかのプラットフォームサポートを必要とします。mutex_*(9)
と ltsleep(9) が連動するために cpu_switch/scheduler のオーバーホールがいくつか必要です。
	責任者: ad
	ETA: 5.0 (newlock2)


ao. TCP/IP 開発のレビュー
	NewReno をフィックスすること。
	責任者: mycroft
	ETA: 3.0
	SACK サポートをカーネルに追加すること。
	責任者: kurahone
	ETA: 3.0
	ECN サポートをカーネルに追加すること。
	責任者: rpaulo
	ETA: 5.0
	その他の "recent" や最新の TCP/IP についての研究を調べること。 TCP/IP スタックを近代的に書き換えること。
	責任者: 未定
	ETA: ?

ap. カーネルリンカ (FreeBSD 由来の kld)
	責任者: 未定
	ETA: ?


aq. CARP/VRRP
	機能は素晴らしいのですが、シスコの特許による懸念がいくつかあります。
	責任者: liamfoy
	ETA: 4.0

ar. UDF ファイルシステムサポート
	最近 OpenBSD が対応しました。
	責任者: reinoud
	ETA: 4.0


as. 3-way RAID 1 のための RAIDFrame
	責任者: 未定
	ETA: ?


at. RAID6 のための RAIDFrame サポート
	責任者: oster
	ETA: 5.0?


au. もっと多くのモダンなドライバー
	多くの他のオープンソース OS でサポートされているモダンなデバイス (PCI-Express、RAIDカードなど) がサポートされていません。
	責任者: 未定
	ETA: ?


av. iSCSI イニシエーターサポート
	iSCSI ボリュームを使用できるべきです。
	責任者: agc
	ETA: 5.0


aw. 実行時に SysV IPC の設定値を変更する
	SysV IPC のいくつかの設定値がカーネルコンフィギュレーションでハードコードされています。─これらはsysctlで変更可能であるべきです。
	責任者: rmind
	ETA: 4.0


ax. NUMA サポート
	この目標を達成するなら、CPU スケジューラは、CPU
の距離とグルーピングを考慮するように変更されるべきです。また、メモリブロックのサポートは VM サブシステムで実装されるべきです。
	責任者: 未定
	ETA: ?


2. プラットフォームから独立したユーザーランド
================================
aa. X の保持
	X.org の進捗を追うこと。既存の XFree86 を維持すること。
	責任者: 数千人のキャスト
	ETA: 進行中

ab. リエントラントライブラリ
	スレッド化されたアプリケーションで使えるように、全てのライブラリーが確実にリエントラントであるようにしてください。
	責任者: ginsbach 他
	ETA: 5.0?


ac. gcc アップデート
	gcc4 を BSD make(1) で動作するようにするか、BSD make(1) をアップデートするか、または想像を絶する作業が必要です。
	責任者: mrg, matt
	ETA: 4.0


ad. gdb アップデート
	責任者: skrll
	ETA: 5.0


ae. binutils アップデート
	おそらく gdb アップデートと協力して作業します。
	責任者: skrll
	ETA: 4.0


af. より良い検死用デバッグツール
    ps/*statなどのツールと、gdbにコアファイルとの間に何かがあると便利でしょう。なにか、おそらく SysV(?) の
crash(8) のようなものです。
	責任者: 未定
	ETA: ?


ag. より良い 802.11 ユーティリティとサポート
	本当にモバイルユーザをサポートするためには、ベースステーションを検索してそれらに加入することが必要です。
	責任者: dyoung、skrll、scw、他
	ETA: 4.0

ah. 国際化
	Citrus、ワイド文字対応 curses(SoC に統合?)、文字照合、位置パラメーター対応のローカライズされた
printfサポート、時刻と通貨サポート、そのほか。NetBSD にはグローバルなユーザーと開発者ベースがあり、そして i18n
はそれらを反映すべきです。
		(a) Support cond. printf fmt: 4.0 には、位置パラメタサポートに対応した vfwprintf
があるでしょう。 5.0 には、位置パラメタサポートに対応した vfprintf があるでしょう。
		責任者: christos
		ETA: 5.0
		(b) LC_COLLATEサポート
		(c) mklocale(1) -> localedef(1)
		(d) C++ における wchar_t
		(e) i18n 化されたユーザーランドコマンド
		(f) カーネルにおける iconv
		責任者: 未定
		ETA: ?


ai. システムパッケージ
    何らかのやり方でシステムパッケージをサポートする必要があります。これは、少なくともまともなバイナリ監査およびバイナリ形式のパッチを可能にします。
	責任者: apb
	ETA: 4.0

aj. インストール時におけるバイナリパッケージの提供
	現在の迅速で美しい基本的なインストール環境を犠牲にせずに、他のフリーのオペレーティングシステムと同じくらい機能的なデスクトップをインストールできる統合インストールがあるべきです。sysinst
の拡張はこの要望を満たすかもしれません。または sysinst
によって呼び出されるツールや、実行中のシステムで利用可能なツールです(例えばpkgsrc-wip/pkg_selectです)。
	責任者: agc 他
	ETA: 4.0

ak. ネイティブの署名/秘匿性ソフトウェア
	これは BPG(SoC からの) または openpgp-sdk かもしれません。
	責任者: agc、cjs、他
	ETA: 4.0?

al. ユーザーランドバージョン識別
	どんなバイナリがインストールされていますか?だれが本当に知っていますか? 少なくともこれは ai. にいくらか関連します。
	責任者: 未定
	ETA: ?

3. プラットフォームに依存するカーネル
============================
aa. evb* ポートにない evb ポート (sandpoint) を evb* ポートに移動させること。
	既存の evb* ポートは、どんな種類の評価ボードにも対応します。既存の非 evb* ポートのいくつかは、本当は evb* カテゴリーに入ります。
	責任者: 未定
	ETA: ?

ab. m68k ポートは、より多くのコードを共有する必要があります
	近年いくつかの進歩が見られましたが、まだまだやるべき仕事があります。
	責任者: 未定
	ETA: ?

ac. すべてのプラットフォームのカーネルコアダンプサポート
	いくつかのプラットフォーム (PowerPC ポート、ARM ポートなど) は、カーネルコアダンプや libkvm
を使った検死デバッグを完全にはサポートしていません。これをアップデートすべきです。
	責任者: 未定
	ETA: ?

ad. NDIS
	x86 プラットフォーム上のバイナリーネットワークドライバーのサポート
	責任者: rittera
	ETA: 4.0

4. プラットフォームに依存するユーザーランド
==============================
ab. m68k は sets を共有できるべきです
	近年いくつかの進歩が見られましたが、まだまだやるべき仕事があります。
	責任者: 未定
	aETA: ?


5. その他
========
aa. より多くのより良い回帰テスト
	現在あるテストスイートは限られています。さまざまなプラットフォームの current
とリリースブランチ用のテストを運用するために、システムを提供すべきです (またはボランティアプールを管理する? )。また、ATF
を利用できるようにするために現在の 'regress' から 'tests'
の環境のすべてをテストできるようにする必要があります。(qemu か、同様の物を使った仮想化も必要か? )
	責任者: jmmv
	ETA: 5.0 では、大部分の回帰テストを変更しなければなりません。


ab. 複数プラットフォームのネイティブ Java
	i386、amd64、sparc64、PowerPC
を入手すれば好調にスタートできるでしょう。PowerPCは、より多くの仕事を必要とするでしょうけれど。(Sun の)
許諾は受けていますが、作業に取り組む人手が必要です。
	責任者: Java 移植作業員
	ETA: ?

ac. 電源制御装置フレームワーク
    サスペンド/リジュームに関連して、プロセッサーの動的ステップスピード、ファン制御、シャットダウンや省電力のための電源サブシステム、熱制限値使用によるシステム維持、といういくつかのフレームワークがあります。
	責任者: 未定
	ETA: ?

<<ここまで


-- 
みわ