2008-10-22 5 views
21

Dies ist nur eine allgemeine Frage - ich saß und wartete auf ein bisschen Software zu kompilieren (wir verwenden Incredibuild hier, aber kann immer noch 10/15 Minuten dauern) und es hat mich fragen, weiß jemand wie lange dauerte es, Windows XP oder Vista zu kompilieren?Kompilierzeit des Betriebssystems

Ich habe einige googeln, aber nicht wirklich nützliche Informationen

+1

Warum möchten Sie sich über Aufbauzeiten sorgen? Längere Build-Zeiten sind [viel mehr Spaß] (http://xkcd.com/303/). – Branan

Antwort

38

OP fragt nach Windows-:

„es gibt keine andere Software-Projekte wie diese“, sagte Lucovsky „, aber die eine Sache, die konstant geblieben ist [im Laufe der Jahre] ist, wie lange es dauert zum Erstellen von [Windows]. Egal welche Generation des Produkts, dauert es 12 Stunden, um das System zu kompilieren und zu verknüpfen. " Auch bei der Erhöhung der Verarbeitungs PS im Laufe der Jahre hat sich Windows- passen gewachsen, und die Entwicklung Prozess weit mehr anspruchsvoll geworden ist, so dass Microsoft mehr Code-Analyse als Teil des täglichen Build tut "Die CPUs in der Build Labor sind ständig für 12 Stunden gebunden", sagte er. "Wir haben die Prozess seit Windows 2000 angepasst. Jetzt zerlegen wir die Quelle [code] Baum in unabhängige Quellbäume, und verwenden Sie eine neue Build-Umgebung . Es ist eine Multi-Maschinen-Umgebung, die uns die Kurbel schneller drehen lässt. Aber wegen der all der neuen Code-Analyse, ist es noch dauert 12 Stunden.“

SOURCE

Auch Mark Lucovsky klassische presentation auf der Entwicklung von Windows NT/2000 sehen.

mir nicht Arbeit bei Microsoft, also weiß ich nicht sicher ...

+1

Fantastische Links, danke für das Posting :) – Konrad

+0

Wirklich interessant ... obwohl ich bin beeindruckt, dass es 'nur' dauert 12h. – helpermethod

6

Third Hand Informationen finde ich, ist, dass es ungefähr einen Tag dauert eine Windows-Build zu vervollständigen. Das entspricht mehr oder weniger dem Versuch, Ihr bevorzugtes OSS-Betriebssystem von Grund auf neu zu entwickeln.

Der Aufbau eines modernen Betriebssystems ist eine komplexe und schwierige Aufgabe. Der einzige Grund, warum es nicht länger dauert, ist, dass Unternehmen wie Microsoft Build-Umgebungen erstellen, um Integrationstests zu automatisieren. Dadurch können sie ein System mit weniger manuellem Aufwand aufbauen, als dies bei den meisten OSS-Builds der Fall ist.

Wenn Sie noch gerne ein Gefühl dafür bekommen, was es braucht, um ein Betriebssystem zu bauen, könnte ich die kostenlose eBook empfehlen: Linux from Scratch

Für ein automatisiertes Build, versuchen Gentoo. Beide Optionen sollten Ihnen eine bessere Vorstellung vom Buildprozess des Betriebssystems geben.

+1

Ich erinnere mich, ein Video gesehen zu haben, bei dem XP ungefähr 12 Stunden auf ihrer Build Farm verbracht hat, so dass ein Tag für Vista mich nicht im Geringsten schockiert. Natürlich, wenn sie über den Aufbau des Betriebssystems sprechen, sprechen sie davon, JEDE Binärdatei auf der CD zu erstellen, dann ein CD-Image für die QS-Gruppe usw. zu erstellen. Großer Job!:) –

3

Nun, probieren Sie es selbst aus: Greifen Sie auf eine Gentoo (oder andere Linux) -Distro oder probieren Sie das Singularity-Projekt von Microsoft Research aus. Eine weitere interessante Alternative ist das ReactOS-Projekt. Das Kompilieren des Kernels allein dauert (abhängig von der Maschine) etwa 15 Minuten, die Sie auf Ihr Programm gewartet haben. Kompilieren das ganze System dauert erheblich länger!

2

Ich erinnere mich zu hören, dass Vista irgendwo entlang der Linien von mehr als einem Tag zu bauen nahm (kann jetzt jedoch keine Referenz finden, argh). Es hat irgendwo in der Nachbarschaft 50 million lines of code dazu.

2

Wie lange es dauern wird, hängt wirklich von der Build-Einrichtung ab, ich bezweifle wirklich, dass die Vista-Ingenieure einen Tag brauchen, um den Code zu erstellen, selbst wenn es einen Tag auf einem einzigen Rechner dauern würde.

Ich arbeite an einem Projekt von ähnlicher Größenordnung und bis vor kurzem konnte Builds bis zu 12 Stunden auf einem gemeinsamen Multiprozessor-Sun-Server dauern. Da wir auf eine Linux-basierte Build-Farm umgestellt haben, kann ein sauberer Build in weniger als einer Stunde erstellt und in wenigen Minuten wiederhergestellt werden.

Es wäre interessant zu wissen, was den Vista Jungs einrichten verwenden, Linux-basierte Build-Farmen scheinen unwahrscheinlich ... vielleicht Windows-basierte Build-Farmen dann :)

1

Ich weiß nicht, wie lange dauert, um XP zu kompilieren, aber 10/15 Minuten ist nicht so groß. Unser Projekt, das Li enthält Nux-Kernel als eine der Komponenten (nicht die größte) dauerte etwa eine Stunde zu kompilieren. Wir haben dies verbessert, indem wir ccache verwendet haben und jetzt dauert es nur ein paar Minuten.

Nicht genau die Antwort auf Ihre Frage, aber ich, obwohl es relevant/nützlich sein könnte.

1

Ales Holecek, Vice President für die Entwicklung im Windows-Team said, die es etwa 16 Stunden nimmt zu bauen Windows-10. Und dass es automatisch in der Nacht jeden Tag gebaut ist.

Es ist natürlich nicht mit einer einzelnen Maschine gebaut, sondern mit einigen Build-Farm.

1

Die Antworten, die 12 Stunden bis Nacht sagen, sind fast sicher richtig.

Vor langer Zeit, als ich bei Microsoft war und jedes Mal, seitdem ich es gehört habe, bauen sie "jede Nacht". (Ich habe tägliche Builds von NT ziemlich regelmäßig geladen. IIRC haben sie einen "Checked Build" wöchentlich oder so.)

Die Zahlen am Ende der Version sind (oder zumindest war) diese täglichen Build-Inkremente:

Meine Windows 8.1:
C: \ WINDOWS \ system32> ver Microsoft Windows [Version 6.3. ]

Dividing 9600 von 365 über 26 Jahre täglich gibt Builds, oder ab dem Jahr 2013 zurückgehen, wenn 8.1/2012-R2 veröffentlicht, kommt bei etwa 1987 für den Beginn der Entwicklung auf NT mit Windows NT 3.1 veröffentlicht in 1993.

Verwandte Themen