Время компиляции операционной системы

Это всего лишь общий вопрос - я сидел и ждал, пока скомпилируется немного программного обеспечения (здесь мы используем Incredibuild, но все равно это может занять 10/15 минут), и мне стало интересно, кто-нибудь знает, сколько времени ушло на компиляцию Windows XP? или виста?

Я немного погуглил, но не нашел никакой полезной информации


person Konrad    schedule 22.10.2008    source источник
comment
Почему вы хотите беспокоиться о времени сборки? Более длительное время сборки намного веселее.   -  person Branan    schedule 23.10.2008


Ответы (8)


ОП спрашивает о Windows:

Луковский не существует других программных проектов, подобных этому, но одно остается неизменным [ на протяжении многих лет] — это то, сколько времени уходит на сборку [Windows]. Независимо от того, какое поколение продукта, для компиляции и компоновки системы требуется 12 часов. Несмотря на увеличение вычислительной мощности за последние годы, Windows стала соответствовать, и процесс разработки стал намного более сложным, так что Microsoft проводит больше анализа кода в рамках ежедневной сборки. По его словам, процессоры в сборочной лаборатории постоянно привязаны к 12 часам. Мы адаптировали этот процесс, начиная с Windows 2000. Теперь мы разбиваем исходное дерево [кода] на независимые исходные деревья и используем новую среду сборки. Это многомашинная среда, которая позволяет нам быстрее крутить рукоятку. Но из-за всего нового анализа кода это все еще занимает 12 часов.

ИСТОЧНИК

Также см. классическую презентацию Марка Луковского по разработке Windows NT. /2000.

Я не работаю в Microsoft, поэтому точно не знаю...

person Aardvark    schedule 22.10.2008
comment
Действительно интересно... хотя я впечатлен тем, что это only занимает 12 часов. - person helpermethod; 08.04.2011
comment
Судя по всему, для Windows 10 это занимает около 16 часов: twitter.com/DawidFerenczy/status/543171331328864257 - person Peter; 18.09.2018

Информация из третьих рук, которой я располагаю, заключается в том, что сборка Windows занимает около дня. Что более или менее соответствует попытке создать свою любимую операционную систему OSS с нуля.

Построение современной операционной системы — сложная и трудная задача. Единственная причина, по которой это не занимает больше времени, заключается в том, что такие компании, как Microsoft, настроили среду сборки, чтобы помочь автоматизировать интеграционное тестирование. Таким образом, они могут построить систему с меньшими ручными усилиями, чем это требуется для большинства сборок OSS.

Если вы хотите получить представление о том, что нужно для создания операционной системы, могу ли я порекомендовать бесплатную электронную книгу: Linux от Стереть

Для более автоматизированной сборки попробуйте Gentoo. Оба варианта должны дать вам лучшее представление о процессе сборки операционной системы.

person 64BitBob    schedule 22.10.2008
comment
Я помню, как видел видео, где сборка XP заняла около 12 часов, так что день, проведенный за Vista, меня ничуть не шокирует. Конечно, когда они говорят о сборке ОС, они имеют в виду сборку КАЖДОГО двоичного файла на диске, затем создание образа диска для группы контроля качества и т. д. Отличная работа! :) - person John Rudy; 22.10.2008

Алес Холечек, вице-президент по разработке в группе Windows сообщил, что сборка Windows 10 занимает около 16 часов. И что она собирается автоматически каждый день в течение ночь.

Конечно, он построен не с использованием одной машины, а с использованием некоторой фермы сборки.

person David Ferenczy Rogožan    schedule 11.12.2014

Что ж, попробуйте сами: возьмите дистрибутив Gentoo (или другого Linux) или попробуйте проект Singularity от Microsoft Research. Еще одна интересная альтернатива — проект ReactOS. Только компиляция ядра занимает (в зависимости от машины) около 15 минут, которые вы ждали для своей программы. Компиляция всей системы занимает значительно больше времени!

person Konrad Rudolph    schedule 22.10.2008

Ответы, которые говорят 12-24 часа или ночь, почти наверняка верны.

Давным-давно, когда я работал в Microsoft, и каждый раз, когда я слышал это с тех пор, они строят «каждую ночь». (Раньше я загружал ежедневные сборки NT довольно регулярно. Если я правильно помню, они еженедельно делали проверенную сборку или что-то в этом роде.)

Эти числа в конце версии являются (или, по крайней мере, БЫЛИ) этими ежедневными приращениями сборки:

Мои окна 8.1:
C:\WINDOWS\system32 › версия Microsoft Windows [Версия 6.3.9600]

Разделив 9600 на 365, мы получим около 26 лет ежедневных сборок, или, если вернуться к 2013 году, когда была выпущена версия 8.1/2012-R2, получим примерно 1987 год, когда началась разработка для NT с Windows NT 3.1, выпущенной в 1993 году.

person HerbM    schedule 27.03.2017

Я помню, как слышал, что на сборку Vista ушло больше дня (хотя сейчас не могу найти ссылку, аргх). Где-то около 50 миллионов строк кода к нему.

person swilliams    schedule 22.10.2008

Сколько времени это займет, будет действительно зависеть от настройки сборки, я очень сомневаюсь, что инженерам Vista понадобится день, чтобы собрать код, даже если это займет день на одной машине.

Я работаю над проектом аналогичного масштаба, и до недавнего времени сборка могла занимать до 12 часов на общем многопроцессорном сервере Sun. Поскольку мы перешли на сборочную ферму на основе Linux, чистая сборка может быть выполнена менее чем за час, а перестроение — за несколько минут.

Было бы интересно узнать, какие настройки используют ребята из Vista, фермы сборки на базе Linux кажутся маловероятными ... может быть, тогда фермы сборки на базе Windows :)

person Andrew Johnson    schedule 22.10.2008

Я не знаю, сколько времени уходит на компиляцию XP, но 10/15 минут — это совсем не так уж и много. Наш проект, включающий ядро ​​Linux в качестве одного из компонентов (не самого большого), компилировался около часа. Мы улучшили это с помощью ccache, и теперь это занимает всего несколько минут.

Не совсем ответ на ваш вопрос, но я думаю, что это может быть актуально/полезно.

person Ilya    schedule 22.10.2008