ILU (сокращение от англ. Inter Language Unification) — метод обмена данными в компьютерных системах, позволяющий преодолевать различия в способах систем представлять различные виды данных. Даже если две системы работают на одном компьютере или на идентичном аппаратном обеспечении, то всё равно возникает много различий как результат использования различных языков программирования для построения системы.
Объекты интерфейса, предоставляемые ILU, скрывают существующие различия между разными языками программирования, между разными адресными пространствами, а также между видами операционной системы. ILU может быть использован для создания многоязычных объектно-ориентированных библиотек (библиотек классов) с чётко заданными и независимыми от языка интерфейсами. Он также может быть использован для реализации распределённых систем. Его также можно использовать для определения и документирования интерфейсов между модулями не распределяющих вычисления программ. Интерфейсы ILU могут быть указаны как в языке описания интерфейсов Object Management Group CORBA (OMG IDL), так и в языке спецификаций ILU (ISL).
История
правитьInter Language Unification разрабатывался как проект с открытым кодом в исследовательском центре Xerox PARC компании Xerox в Пало-Альто, Калифорния в период с 1991 по 2000 год. Последней вышедшей версией была 2.0 beta 1.
С 1997 по 2000 год ILU использовался в качестве основы для экспериментальной работы над протоколом HTTP следующего поколения по инициативе HTTP-NG консорциума WWW. Результатом этой работы стал разработанный экспериментальный протокол RPC, называемый w2ng,[1] а также эффективный способ мультиплексирования одного соединения TCP в несколько двунаправленных каналов. Этот способ получил название w3mux.[2] Результаты эксперимента HTTP-NG были представлены на World Wide Web конференции в 2000 году.[3]
Особенности
правитьПоследний релиз поддерживает языки программирования C++ (Corba2 mapping), ANSI C, Python, Java и Common Lisp. Также внесены поддержка Modula-3, Guile Scheme и Perl 5. ILU был включён в большинство дистрибутивов Unix (SunOS, Solaris, HP-UX, AIX, OSF, IRIX, FreeBSD, Linux, LynxOS, SCO Unix и т.д.) и MS Windows (3.1, 95, NT). Он поддерживает обе ветви операций (POSIX, Solaris, NT, Franz ACL, PPCR, Modula-3) и петли событий (Xt, Tk, XView).
Одной из целей выпуска была максимальная совместимость с существующими открытыми стандартами. В результате ILU оказала поддержку для использования языка описания интерфейса OMG CORBA IDL и может рассматриваться как система CORBA ORB. ILU также включает автономную реализацию ONC RPC и делает возможным описание и использование существующих сервисов RPC как объектов ILU. Метод Inter Language Unification также включает в себя автономную реализацию протокола WWW HTTP и поэтому может быть использован объектно-ориентированными веб-браузерами и серверами. Безопасность связи обеспечена основанными на GSS контектом передачи и шифрованной передачей по кабелю.
Примечания
править- ↑ w3ng: Binary Wire Protocol for HTTP-NG Архивная копия от 23 октября 2011 на Wayback Machine на сайте W3.org (англ.) (Дата обращения: 10 июня 2011)
- ↑ SMUX Protocol Specification Архивная копия от 30 сентября 2011 на Wayback Machine на сайте W3.org (англ.) (Дата обращения: 10 июня 2011)
- ↑ Материалы конференции Архивная копия от 13 июля 2010 на Wayback Machine на сайте WWW9.org (англ.) (Дата обращения: 10 июня 2011)
Ссылки
править- Описание исходных текстов ILU (недоступная ссылка) на сервере центра Xerox PARC (англ.) (Дата обращения: 10 июня 2011)