31

これは単なる一般的な質問です - 私は座って、ちょっとしたソフトウェアがコンパイルされるのを待っていました (ここでは Incredibuild を使用していますが、それでも 10/15 分かかる場合があります)。またはビスタ?

グーグルで調べましたが、実際に役立つ情報は見つかりませんでした

4

8 に答える 8

46

OPはWindowsについて尋ねています:

「このようなソフトウェア プロジェクトは他にありません」とLucovsky氏は言います。システムをコンパイルしてリンクします。「何年にもわたって処理能力が向上しているにもかかわらず、Windows はそれに匹敵するように成長し、開発プロセスははるかに洗練されているため、Microsoft は毎日のビルドの一環としてより多くのコード分析を行っています。ビルド ラボの CPU は、 「我々は Windows 2000 以降、プロセスを適応させてきました。現在、ソース [コード] ツリーを独立したソース ツリーに分解し、新しいビルド環境を使用しています。クランクをより速く回すことができるマルチマシン環境です。しかし、すべての新しいコード分析のおかげで、それでも 12 時間かかります。」

ソース

また、Windows NT/2000 の開発に関するMark Lucovsky の古典的なプレゼンテーションも参照してください。

私はマイクロソフトで働いていないので、確かなことはわかりません...

于 2008-10-22T16:27:26.847 に答える
6

私が入手した第三者の情報によると、Windows のビルドを完了するには約 1 日かかります。これは、お気に入りの OSS オペレーティング システムをゼロから構築しようとする試みとほぼ一致しています。

最新のオペレーティング システムを構築することは、複雑で困難な作業です。時間がかからない唯一の理由は、Microsoft のような企業が、統合テストの自動化に役立つビルド環境をセットアップしているためです。したがって、ほとんどの OSS ビルドに含まれるよりも少ない手作業でシステムを構築できます。

オペレーティング システムを構築するために必要なことを知りたい場合は、無料の電子ブックをお勧めします: Linux from Scratch

より自動化されたビルドについては、Gentooを試してください。どちらのオプションも、オペレーティング システムのビルド プロセスをよりよく理解できるはずです。

于 2008-10-22T15:48:18.080 に答える
3

Gentoo (または他の Linux) ディストリビューションを入手するか、Microsoft Research の Singularity プロジェクトを試してみてください。もう 1 つの興味深い代替案は、ReactOS プロジェクトです。カーネルだけをコンパイルするだけでも (マシンによって異なりますが)、プログラムを待っていた約 15 分かかります。システム全体のコンパイルにはかなりの時間がかかります!

于 2008-10-22T15:50:28.387 に答える
2

どれくらいの時間がかかるかは、ビルドのセットアップによって異なります。1 台のマシンで 1 日かかるとしても、Vista のエンジニアがコードをビルドするのに 1 日かかるとは思えません。

私は同様の規模のプロジェクトに取り組んでおり、最近まで共有マルチプロセッサ Sun サーバーでビルドに最大 12 時間かかることがありました。Linux ベースのビルド ファームに切り替えたので、クリーン ビルドは 1 時間以内で完了し、再構築は数分で完了します。

Vista の連中がどのような設定を使用しているかを知るのは興味深いことです。Linux ベースのビルド ファームはありそうにないようです... Windows ベースのビルド ファームかもしれません :)

于 2008-10-22T16:06:18.683 に答える
2

Vista のビルドには 1 日以上かかったと聞いたのを覚えています (ただし、現在は参考文献が見つかりません)。約5000万行のコードが含まれています。

于 2008-10-22T15:59:26.263 に答える
1

XP のコンパイルにどれくらいの時間がかかるかはわかりませんが、10/15 分はそれほど大きくありません。コンポーネントの 1 つ (最大ではない) として Linux カーネルを含む私たちのプロジェクトは、コンパイルに約 1 時間かかりました。ccacheを使用してこれを改善し、数分しかかからなくなりました。

あなたの質問に対する正確な答えではありませんが、関連性/有用性があるかもしれません。

于 2008-10-22T17:11:43.607 に答える