> Оно практически всегда менее выгодно, кроме случаев, когда корпорация вложила в закрытый
> форк столько усилий, что этот форк значительно отдалился от оригинала. Но
> в этом случае чаще можно просто переписать все с нуля, а
> не создавать производный продукт.Нет. Возьмем тоже ядро. Корпорация вносит существенные правки. Но написать свое ядро - не потянет. Что бы эти правки добавить в upstream нужно пройти все стадии review, исправить все недочеты и убрать все хаки. Это слишком накладно, а иногда нереально.
Я сам лично часто сталкиваюсь с тем, что оформление и review патча занимают гораздо больше времени, чем изночальное создание патча, которого хватало для моих нужд.
Также нужно учитывать, что модель разработки закрытых проектов очень отличается от открытой. Корпорация берет конкретную версию ядра, патчит, выпускает продукт, правит баги на протяжении года-двух. Далее выпускает новый продукт, берет новую версию ядра, патчит и т.д. То есть корпорация не заинтересована в постоянном и долговременном развитии ядра. Если она точно не уверена, на чем будет основан их следующий продукт, то им вообще нет никакого смысла поддерживать исходный проект.
> Именно сложность поддержки своего собственного форка и синхронизации с апстримом и есть
> главная причина того, что корпорации присылают свои патчи, а вовсе не
> палка в виде GPL. А вот когда ресурсы на поддержание своего
> форка есть, то кодом обычно не делятся,
http://oss.sony.net/Products/Linux/common/search.html
Думаете GPL тут не причем и sony добровольно все выложила?
> и это также верно
> в отношении GPL (т.н. Google Linux на их серверах),
Если бы лицензия обязывала - выложили бы. Этот пример как раз показателен - если корпорации не подталкивать - то даже такие как "корпорация добра" склонны зажимать изменения, не говоря уж об остальных.