2 stage build
От: Аноним  
Дата: 30.12.10 15:33
Оценка:
Объясните кто-нибудь, что такое 2 stage build и в чем там цимес?
Re: 2 stage build
От: hardcase Пират http://nemerle.org
Дата: 30.12.10 16:25
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Объясните кто-нибудь, что такое 2 stage build и в чем там цимес?


Там не просто двух стадийная, там четырехстадийная сборка. Две стадии нужно чтобы компилятор версии n+1 мог собрать сам себя. Остальные статидии — для контроля идентичности кода.
/* иЗвиНите зА неРовнЫй поЧерК */
Re[2]: 2 stage build
От: Аноним  
Дата: 30.12.10 16:45
Оценка:
Здравствуйте, hardcase, Вы писали:

H>Там не просто двух стадийная, там четырехстадийная сборка. Две стадии нужно чтобы компилятор версии n+1 мог собрать сам себя. Остальные статидии — для контроля идентичности кода.


а можно подробнее, как эта черная магия работает?
Re[3]: 2 stage build
От: hardcase Пират http://nemerle.org
Дата: 30.12.10 16:58
Оценка: 26 (1)
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, hardcase, Вы писали:


H>>Там не просто двух стадийная, там четырехстадийная сборка. Две стадии нужно чтобы компилятор версии n+1 мог собрать сам себя. Остальные статидии — для контроля идентичности кода.


А>а можно подробнее, как эта черная магия работает?


Внося изменения в код компилятора необходимо контролировать, что компилятор работает корректно. Для этого используется многостадийная сборка (достаточно 3 стадии).

1) Стадия1 собирается бутстрап-компилятором (компилятор одной из предыдущих ревизий), на ней мы получаем компилятор с кодом, который внесли.
2) Стадия2 собирается компилятором Стадии1, на ней мы получаем компилятор, собранный с привлечением изменений, которые внесли.
3) Стадия3 собирается компилятором Стадии2, тут мы получаем компилятор с изменениями, который гарантированно собирает свой код.
4) Стадия4 собирается компилятором Стадии3, здесь мы проверяем что нет отличий в машинном коде (IL) с компилятором Стадии3

Дополнительный контроль компилятора осуществляют автоматизированные тесты (их можно запускать на любой стадии).
/* иЗвиНите зА неРовнЫй поЧерК */
Re[4]: 2 stage build
От: BogdanMart Украина  
Дата: 05.01.11 21:48
Оценка:
Здравствуйте, hardcase, Вы писали:

H>Дополнительный контроль компилятора осуществляют автоматизированные тесты (их можно запускать на любой стадии).


Кстати говря, как?

Ато была такая необходимость, но приходилось ждать пока проедет две стадии
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.