?

Log in

No account? Create an account
Speaker Rabbit

abbra


CIFS: curious information funneled sometimes


Жизнь после смерти
Speaker Rabbit
abbra
Огромная часть истории распределенных компьютерных сред, Distributed Computing Environment Remote Procedure Call, DCE RPC, усилиями Jeremy Allison и Luke Kenneth Casson Leighton (lkcl), была освобождена изначально в 1998 (версия 1.1), окончательно (версия 1.2.2) -- в 2005, под GNU LGPL. К этому моменту весь этот сотнемегабайтный массив кода стал практически бесполезным -- code not tested is bit rotten -- за два десятилетия его существования уровень написания программ в POSIX вырос значительно, а неживой код реально умирает.

Использовать этот "неживой" код в реальных проектах, извините за каламбур, было нереально. Но никто не брался за его переворачивание и переработку. Никто, кроме Jeremy Allison, которому удалось в свое время убедить Novell в необходимости и важности этой работы. А также Luke Howard, основателя PADL Software, и в прошлом одиного из ключевых разработчиков Apple. Luke, по заказу Novell, провел модернизацию DCE RPC. И эта работа опубликована 5 февраля 2007 года.

Так сказать,
последний подарок Jeremy по уходу из Novell. :-)

Однако, почему такая активность и война вокруг старого кода с более чем двадцатилетней историей? Для того, чтобы оценить его важность, не надо быть программистом. Достаточно знать, что именно DCE RPC лежит в основе всех важнейших сетевых протоколов, реализованных Microsoft, а в первую очередь -- в основе Microsoft Exchange, MS SQL, CIFS, да и пожалуй все Win32 API отображается на сетевую посистему поверх DCE RPC. Samba реализует лишь малую часть функций DCE RPC, а до недавнего времени не было самой главной части -- компилятора языка описания интерфейсов (Interface Definition Language, IDL). В рамках Samba4 такой компилятор был написан и даже существенно расширен, однако некоторые важные компоненты системы по-прежнему надо создавать. И вот почему DCE RPC, в создание которого в свое время вложились IBM, Digital, HP, так важен для нас и двадцать лет спустя.

LKCL, несмотря на всю свою неоднозначность (например, форк Samba в виде Samba-TNG), поставил практически всю свою жизнь на создание аналога MS Exchange под POSIX (нужно ли это -- вопрос риторический, но реальной замены всему Exchange без замены клиентской инфраструктуры на сегодня практически не существует). Не будет преувеличением сказать, что Microsoft поставил всю свою бизнес-жизнь на существование и эксклюзивность действующей реализации DCE RPC и того, что они поверх нее понастроили. Так что, подарок Jeremy действительно дорогой.