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

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

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

8 ответов

Решение

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

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

ИСТОЧНИК

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

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

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

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

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

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

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

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

Ответы с 12 часов до ночи почти наверняка верны.

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

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

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

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

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

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

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

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

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

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

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

Другие вопросы по тегам