наверх

«Открытые системы» , № 03, 1996 65 прочтений

Программное обеспечение: переворот грядет...

Продолжение. Начало в #2 1996. (c) Forbes, 1995. George Gilder, The Coming Software Shift, Forbes ASAP, August, 1995 Переведено и перепечатывается с разрешения компании Forbes.

Джордж Гилдер

Чтобы добиться успеха, каждые выдающийся человек должен иметь верного партнера. У Билла Гейтса был Пол Аллен, у Джобса был Стив Возняк. У Андрисена был Эрик Байна, как бы служивший ему комплементарным дополнением.Он невысок и худощав, в то время как Андрисен смахивает на медведя; первый осторожен там, где второй идет напролом; он сосредоточен на мелочах, когда его друг старается охватить все сразу; он стремится докопаться до сути вещей там, где его товарищ может принять что-то новое на веру. Он готов прорабатывать мелочи, когда Андрисена посещают новые идеи, и оставаться дома и писать программу, когда его товарищ отправляется в очередную поездку на край света. Такие разные, и все же полностью доверяющие друг другу и удачно дополняющие достоинства каждого, они вдвоем, охваченные необычайным творческим воодушевлением, создали Mosaic, начав работу в январе и закончив ее в марте 1993 года.

Обладая визуальным интерфейсом и богатыми возможностями доступа к Web и другим частям Internet, эта программа требует от пользователя не больше знаний о своем внутреннем строении, чем требуется знаний об устройстве автомобиля от человека, сидящего за его рулем. Mosaic, состоявшей всего лишь из 9 тысяч операторов (сравните это с 11 миллионами операторов программы Windows 95, включая 3 миллиона строк программы MSN), суждено было стать самым быстро распространившимся в мире продуктом из всех когда-либо созданных программных средств.

Андрисен не испытывал страха за систему Internet, которой якобы угрожала гибель от того, что информационные потоки выйдут из берегов; он вращался в таких областях, где не было недостатка в скорости пропускания информации и где всегда было изобилие волоконно-оптических линий связи. Он полностью усвоил закон гиперпространства. Каждый новый компьютер, включаемый в Сеть, не только начинает эксплуатировать ее ресурсы, но и сам становится источником информации, превращаясь в передаточное звено для информационных потоков и в ячейку хранения данных. Каждая новая волна мегабайт информации делает Сеть более интересной, полезной и привлекательной, хотя и увеличивает нагрузку на основные информационные магистрали, по которым информация перекачивается со скоростью в несколько гигабайт в секунду и выше. Internet должна была быть приспособлена для людей, имеющих глаза и уши. Люди не станут злоупотреблять использованием Сети, убеждал своего товарища Андрисен. В конце концов, он понимал, что ему придется положится на Эрика во многом, что касалось программирования графики.

"Я был прав, - говорит теперь Байна. - Люди начали допускать чудовищные злоупотребления. Они, например, переводили в графический формат тексты, созданные на языке PostScript, и при этом на одну страницу требовалось больше мегабайта, в то время как в текстовом формате та же информация заняла бы объем всего около 1000 байт. Но Марк тоже был прав. В результате такого использования Сети тысячи людей потратили массу времени, чтобы сделать доступными через сеть красивые картинки и ценную информацию, обогатив таким образом "Паутину", которой теперь пользуются миллионы людей".

Работая день и ночь в центре NCSA, споря о своей работе, об искусстве, о музыке, о своей программе, проводя долгие часы в кафе Эспрессо Рояль, два программиста достигли небывалого синергизма в своем творчестве. "Каждый из нас делал ту работу, которая казалась ему наиболее интересной, - рассказывает Байна, - поэтому каждый думал, что другому досталась более трудная часть". Байна написал большую часть нового текста программы, и в частности, графику; модифицировал язык HTML так, чтобы с его помощью можно было работать с графическими объектами, добавил декодер формата обмена графическими данными (GIF) и инструменты управления цветами. Андрисен перекомпоновал и частично переписал библиотеку коммуникационных программ из CERN таким образом, чтобы они работали в сети более быстро и эффективно.

Со временем они подключили к работе других молодых программистов из NCSA, среди которых были Крис Уилсон, Джон Миттельхаузер, Крис Хоук и Алекс Тотик. Их задачей стало обеспечить совместимость программы с операционными системами Windows и Macintosh. При участии этих новых членов коллектива были разработаны такие динамические формы как текстовые поля и контрольные окошки в диалоговых окнах, переключающие кнопки и другие способы упорядоченного ввода простого текста для организации поиска и реализации других функций кроме уже имевшейся возможности подключаться к гипертекстовому локатору ресурсов. В конце концов, поскольку каждое изменение в программе просмотра требовало соответствующих изменений в серверах CERN (а тамошние физики были очень занятыми людьми и не слишком приветливо относились к затеям молодых программистов), Байна и Андрисен решили создать свои собственные серверы. Ответственность за выполнение этой важной задачи взвалил на себя их коллега по NCSA Роберт Мак-Кул.

В конце концов они создали совершенно новый интерфейс для сети Internet и новое коммуникационное программное обеспечение, которое делало сеть легко доступной для каждого. Благодаря своей простоте созданный ими программный интерфейс имел такие пользовательские характеристики, что они почти мгновенно заставляли любого, кто пользовался программой, понять, что это был действительно прорыв в будущее. В феврале 1995 года Боб Меткалф предсказал, что сетевые программы просмотра превратятся, по сути дела, в господствующую операционную систему следующего поколения.

Теперь сетевых программ просмотра существует очень много. Их создают все крупные компании и многие компании помельче. Число пользователей этих программ достигает 8 миллионов. IBM, AT&T, Novell, Microsoft, NetCom, Sun, Silicon Graphics, America Online, NetManage, Quarterdeck, Quadralay, Apple, SPRY-CompuServe, Frontier Technologies, Delphi, MCI, Wellongong и даже отпочковавшаяся от NCSA компания Spyglass и еще много, много других, - все эти компании разрабатывают свои, лицензируют, усовершенствуют или составляют из отдельных частей просмотровые программы. Многие из этих фирм, подстегиваемые удачно придуманными компанией Quarterdeck списками популярных программ и необычайной простотой использования технологии "drag-and-drop", уже превзошли Mosaic в начавшемся соревновании программ.

Вот что случается, когда появляется человек, на долю которого выпадает совершить подлинную революцию, добавив к имеющимся уже предпосылкам всего лишь небольшое недостающее звено, которое, по выражению Друкера, преобразует беспорядочный набор элементов в работоспособную систему, инициировав своеобразную мутацию, в результате которой на свет появляется новое жизнеспособное создание. В 1977 году подобный беспорядочный набор представляли собой малые компьютеры, микропроцессоры и программирование на языке ассемблера. Гейтс и Аллен стали теми людьми, которые нашли и предложили недостающее слагаемое - инструментальные программы и Бэйсик, и это привело к рождению первого ПК. В 1993 году Андрисен и Байна нашли ту небольшую составную часть, с помощью которой им удалось превратить глобальную Сеть с включенными в нее тогда одним или двумя миллионами компьютеров (теперь их число число в Сети оценивается в семь миллионов) и неизмеримыми информационными ресурсами в гиперпространство, так же легко доступное даже ребенку, как жесткий диск или CD-ROM на ПК с операционной системой Mac или Windows.

В результате мы видим, что те же силы, которые заставляют сеть расти и шириться, те же законы развития мира телекоммуникаций, которые производят революцию в аппаратуре, фактически лишая компьютеры их былого содержания - превращая их центральные процессоры в периферийные устройства и делая их главным элементом соединение с Сетью - эти же законы изменяют и программное обеспечение. Аналогично тому, что происходит с "железом", программы - операционные системы, приложения и утилиты - тоже переходят в разряд периферийных элементов. Непрерывно растущие и множащиеся ресурсы Internet всегда будут превосходить те мощности те функции, которые можно будет мобилизовать на любом персональном компьютере или даже суперкомпьютерной станции.

Есть хороший пример, подтверждающий эту мысль. В 1994 году четыре ученых из Массачусетского Технологического Института, университета штата Айова, компании Bellcore и Оксфорда (Великобритания) торжественно заявили о своем желании получить премию в 100 долларов, обещанную за разрешение одной трудной задачи. Они объявили о том, что им удалось раскрыть 129-разрядный код созданный с помощью шифровального алгоритма Ривеста-Шамира-Эдльмана (RSA). Один из создателей этого алгоритма, Р. Л. Ривест, устанавливая в 1977 году премию в 100 долларов за успешную дешифрацию кода, заявил, что, по его подсчетам, на это потребуется четыре квадриллиона лет работы суперкомпьютера. Четыре исследователя добились успеха, работая, конечно, не на одной машине (да такого компьютера, который был бы способен производить все необходимые вычисления, и не существует), а на виртуальном компьютере, состоящем из примерно 1600 рабочих станций средней мощности, разбросанных по сети Internet. Другой сходный пример. В 1992 году Гордон Белл впервые присудил свою ежегодную премию за лучшее соотношение цены и быстродействия в области вычислительной техники не какому-то одному компьютеру, а виртуальной распределенной вычислительной системе в сети Internet.

Успех модели Internet даже в области таких приложений, где требуются большие вычислительные мощности, предвещает и символизирует формирование новой реальности, которая входит в нашу жизнь по мере того, как возможности сети начинают превосходить возможности компьютерных микропроцессоров. Отныне современным компьютером становится сеть, а соответствующим программным обеспечением служат сетевые программы для Internet.

Посылая Мозаику в Сеть, Андрисен перевел программу в двоичный формат и позаботился о том, чтобы были скомпилированы ее версии для всех наиболее популярных платформ. В результате через шесть месяцев после появления Мозаики в Сети число пользователей Web увеличилось больше чем на миллион человек. Довольно скоро такой рост популярности сети привлек внимание руководства NCSA. Когда один коллега в Национальном научном фонде в Вашингтоне продемонстрировал Мозаику Ларри Смарру, приехавшему туда из Иллинойса по делам, тот был поражен, узнав, что это программное чудо было создано в одной из лабораторий его центра. Возможно, по возвращении ему стоило заняться этим вопросом. Возможно, что его центр сможет продать Вашингтону кое-что помимо каналов волоконно- оптической связи, соединяющих ученых с суперкомпьютерами Cray. С этого момента продвижение Мозаики стало "одной из приоритетных задач" суперкомпьютерного центра при университете штата Иллинойс.

Интерпретаторы языка Java занимают всего-навсего 45 Кбайт компьютерной памяти. Компания Sun уже работает над созданием интерпретаторов для операционных систем Windows 95, Macintosh, Windows NT и для нескольких версий Unix. Последующие версии программы просмотра Netscape будут включать в себя соответствующий интерпретатор. Это означает, что любая программа, написанная на языке Java, будет совместима с любой компьютерной платформой. На первый взгляд может показаться, что такая совместимость не является чем-то особенным: любая программа, написанная на С, С++ и других компилируемых языках, может быть совмещена с любой платформой, если она будет обработана соответствующим компилятором. Именно так были скомпилированы для разных платформ версии программы Мозаика, созданной некогда в NCSA. Разница состоит в том, что язык Java может "компилироваться" построчно в ходе выполнения программы, и это очень существенно.

Это означает, что теперь программы не обязательно должны находиться на той машине, на которой они выполняются, или должны быть специально написаны для этой машины, чтобы работать на ней. В принципе, программа на языке Java может находиться где угодно в Сети и при этом выполняться на любом из компьютеров, имеющих связь с Internet. Маленькие программы-интерпретаторы, безусловно станущие вскоре дешевыми и легкодоступными, поскольку они будут распространяться компанией Netscape и другими поставщиками просмотровых программ, сделают программы на языке Java "динамически совместимыми" с любой системой прямо в процессе их выполнения.

Динамическая совместимость - характеристика, более подходящая для сетевых программ, живущих в Сети, чем для тех, которые постоянно обосновались на какой-либо настольной системе. Таким образом, Java освобождает программное обеспечение от привязанности к аппаратной архитектуре. Он предлагает концепцию программирования, радикально отличающуюся от модели, предложенной Microsoft, основой для которой служит не только статичная компиляция, но и зачастую скрываемые от пользователя запатентованные тексты программ.

С появлением языка Java все многообразие нового программного обеспечения становится доступным каждому пользователю компьютера. Вместо того, чтобы быть ограниченными набором тех программ, что хранятся на жестком диске вашей машины, вы можете использовать любую программу в Сети точно таким же образом, каким вам уже сейчас доступна любая информация, имеющаяся в сети. Теперь у кончиков ваших пальцев не только информация, но и программное обеспечение. Так определяет Джой значение термина "исполняемое содержание", а Джон Гейдж блистательно продемонстрировал его в действии на конференции в отеле Св. Франциска на Уэстин-стрит, о которой я рассказывал в начале статьи. Будь то фильм, графическое изображение, мультипликация или изображение идущих часов финансовой компании NASDAQ, информационный канал агентства Рейтер, виртуальная реальность или компьютерная игра,-любая информация может быть загружена в ваш компьютер из сети при помощи соответствующей сетевой программы.

С появлением языка Java авторские права на операционную систему и связанные с нею инструментальные программы перестают определять право на продажу прикладных программ. Право на продажу прикладных программ или на владение информационным каналом перестает определять право на продажу через него конкретной информации. Чем шире Java или другой аналогичный язык войдут в практику программирования, тем более открытым станет программное обеспечение. Настольный компьютер переходит в разряд товаров широкого потребления, его центральный процессор превращается в периферийное устройство; в интерпретаторе Java есть даже переменная "microprocessor".

Однако независимо от того, будут ли программы интерпретируемыми или нет, они не должны попадать в Сеть прежде, чем станут безопасными. Некоторые серьезные изменения, которые Гослинг внес в язык С++, были как раз направлены на то, чтобы сделать язык Java безопасным. Действие многих из существующих вирусов основано на том, что они используют целое число для адресации одной из нижних ячеек памяти компьютера, в которые загружена выполняемая программа. Java исключает такую операцию псевдоадресации. Кроме того, в интерпретаторе Java "зашит" верификатор кода: как только прикладная программа загружается из сети в компьютер, интерпретатор производит ее проверку на наличие вирусов. И, наконец, когда двоичный код Java загружается в память машины, он приносит с собой цифровую подпись в стандарте RSA, которая указывает на источник этой программы и гарантирует, что в процессе передачи текст программы не был изменен или испорчен.

Такая забота о безопасности делает программы, созданные на языке Java, первыми обитателями Сети, обладающими свидетельствами о своей благонадежности. По мере того как интерпретаторы Java все шире будут распространяться среди пользователей, программы, привязанные к какому-либо определенному типу компьютера и программной платформе, все больше будут смахивать на инвалидов, напоминая профессиональных гимнастов, боящихся оторвать ноги от земли.

Компьютер как самостоятельный инструмент теряет свое былое содержание, и пользователей перестают интересовать его технические характеристики, его операционная система, набор исполняемых инструкций и даже имеющиеся прикладные программы. Вместо этого пользователи могут сосредоточиться на содержании своей работы, а не на архитектуре настольной системы. Если вы хотите спроектировать вертолет на экране вашего компьютера, вам не нужно беспокоиться о том, есть ли на жестком диске система AutoCAD. Вы можете получить на экране изображение вертолета, даже не имея соответствующего декодера, - Indeo (стандарт Intel), MPEG-4 (разработан для портативных компьютеров) или динамического JPEG. Вертолет прилетит к вам по Сети со своей собственной исполняемой программой. Сеть перестает быть пространством, которое пугает пользователя. Если вы хотите использовать программу, созданную где-нибудь в Финляндии, вам не нужно бояться, что она заразит вашу машину злокачественным вирусом.

Ваш компьютер никогда не будет одним и тем же. Его технические параметры больше не будут определяющими для характеристик системы в целом. Емкость вашего жесткого диска или размер базы данных в локальной сети не будут ограничивать масштабы обрабатываемой вами информации. Программы, хранящиеся на вашей машине, больше не будут определять набор тех операций, которые вы сможете производить. Вашим компьютером становится Сеть. Компьютер превращается в периферийное устройство в сети Internet и глобальной информационной "паутине" Web.

После того, как на сетевой странице компании Sun были опубликованы язык Java и демонстрационная версия программы просмотра, которая была названа HotJava, Гослинг мгновенно стал знаменитостью в Internet, и ему досталась слава, лучи которой прежде уже коснулись Андрисена и Байны. В отличие от Андрисена, Гослинг, похоже, озадачен этим. Однако, в конечном, счете, его вклад может оказаться более значительным. Программы просмотра и серверы могут меняться, но удачные языки программирования появляются чрезвычайно редко. Java или нечто подобное ему - это ключ к истинно интерактивной сети Internet, с формированием которой компьютер полностью утратит свое прежнее самостоятельное значение.

Недавно Билл Джой выступал перед правлением компании Sun с докладом о путях модернизации нового языка. Джой убежден, что языку Java уготована иная судьба, чем та, которая постигла Andrew и NeWS. Подобно Джиму Кларку, он обратил свое внимание на область суперкомпьютеров в надежде найти там талантливых программистов. Компания пригласила около 20 новых сотрудников из хорошо начавших, но все же недавно закрывшихся компаний Thinking Machines и Kendall Square Research. Возможно, эти люди сумеют научиться думать о малых вещах.

Глядя на весь этот ажиотаж, Гослинг только качает головой. Он уже отчаялся успевать просматривать свою электронную почту, и тысячи сообщений так и остаются непрочитанными. Подключенный к Сети всего лишь с помощью линии Т1, сервер компании не выдержал информационной перегрузки и вышел из строя. Но сам Гослинг, кажется, пока держится неплохо. Он делает доклады по три раза в неделю. Множество людей говорят ему, что они используют созданный им язык вместо языка С для написания рабочих программ источников информации и для разработки других приложений общего назначения. Его осаждают с предложениями такие гиганты японской индустрии как Sony и Sega. Наконец, в июне 1995 года даже Бернерс-Ли одобрил язык Java, охарактеризовав его как "одну из наиболее восхитительных вещей, появляющихся сейчас в Сети".

Будучи заядлым любителем кино, Гослинг представляет себе, как язык Java, программа Netscape и подобные ей преображают образ гиперпространства, превращая его из негостеприимной и угрожающей среды, изображенной в фильме "Бегущий по лезвию бритвы" (Blade Runner), в область, подобную той, которая создана авторами фильмов серии "Звездный путь" (Star Trek), где персонажи полностью доверяют своим кибернетическим помощникам. Возможно, это превращение будет содействовать становлению любезного и общительного Марка Андрисена в роли нового рыцаря гиперпространства, приходящего на смену блистательному, но все же вызывающему у многих страх Биллу Гейтсу.

Но, как допускает и Андрисен, более вероятно, что в ближайшем будущем Microsoft вступит в битву, в которой примет участие и множество других соперников. В августе 1995 года Microsoft объявила о создании целого ряда сетевых услуг, объединенных в программу Blackbird. Многие из этих услуг обладают очень интересными возможностями, но их недостаток в том. что все они работают только в системе Microsoft Network Services, которая не будет широко доступна по крайней мере до середины 1996 года. Начиная в области Internet практически с нуля и отставая от Sun почти на полтора года, Билл Гейтс в конце концов окажется побежденным. Возможно, это заметят даже в Министерстве юстиции. В эпоху, когда компьютер теряет свое самостоятельное значение, империи настольных систем суждено уйти в прошлое вместе со своим правителем.

Страница 1 2

Комментарии


26/04/2012 №03

Анонс содержания
«Открытые системы»

Подписка:

«Открытые системы»

на месяц

c