Введение

Ранняя компьютерная рабочая станция Xerox с графическим интерфейсом пользователя (GUI). Рабочая станция Xerox Star, официально названная Xerox 8010 Information System, является первым коммерческим персональным компьютером, в котором были реализованы технологии, впоследствии ставшие стандартными для персональных компьютеров, включая растровый дисплей, графический пользовательский интерфейс на основе окон, значки, папки, мышь (с двумя кнопками), сеть Ethernet, файловые серверы, серверы печати и электронную почту. Представленная корпорацией Xerox 27 апреля 1981 года, название Star технически относится только к программному обеспечению, поставляемому с системой для рынка автоматизации офиса. Рабочие станции 8010 также продавались с программным обеспечением, основанным на языках программирования Lisp и Smalltalk, для небольшого рынка исследований и разработки программного обеспечения.

Ксероксовый альт

Концепция системы Xerox Star во многом обязана Xerox Alto, экспериментальной рабочей станции, разработанной Исследовательским центром Xerox Palo Alto (PARC). Первая Alto начала функционировать в 1972 году. На Alto оказали сильное влияние системы NLS, разработанные в Стэнфордском исследовательском институте, и PLATO в Университете Иллинойса, с которыми дизайнеры Alto ранее были знакомы. Первоначально было построено лишь несколько экземпляров Alto. Хотя к 1979 году почти 1000 Altos, объединенных сетью Ethernet, были введены в эксплуатацию в Xerox, а также еще 500 в сотрудничающих университетах и государственных учреждениях, они изначально не предназначались для коммерческой реализации. Затем, в 1977 году, Xerox начал проект по разработке, целью которого было включение инноваций Alto в коммерческий продукт. Их концепция заключалась в создании интегрированной системы подготовки документов, основанной на дорогостоящей технологии лазерной печати и ориентированной на крупные корпорации и их деловых партнеров. Когда в 1981 году была представлена система Star,

командой разработчиков руководил Дэвид Лиддл, и она насчитывала более 200 разработчиков. Большая часть первого года была посвящена встречам и планированию, что привело к созданию обширной и детальной функциональной спецификации, внутренне названной «Красной книгой». Она стала основополагающим документом для всех задач разработки. В ней определялся интерфейс и обеспечивалась согласованность всех модулей и задач. Любые изменения в функциональной спецификации должны были быть одобрены экспертной группой, которая строго следила за соблюдением стандартов. Одна группа в Пало-Альто работала над базовым интерфейсом операционной системы к аппаратному обеспечению и инструментам программирования. Команды в Эль-Сегундо и Пало-Альто совместно разрабатывали пользовательский интерфейс и пользовательские приложения. Сотрудники в значительной степени полагались на технологии, над которыми они работали: обмен файлами, серверы печати и электронную почту. Они даже были подключены к сети Интернет, тогда известной как ARPANET, что облегчало общение между Эль-Сегундо и Пало-Альто. Star была реализована на языке программирования Mesa, являющемся прямым предшественником Modula 2 и Modula 3. Mesa не является объектно-ориентированным языком, но включает в себя процессы (потоки) и мониторы (мьютексы). Для каждого модуля в Mesa требуется создание двух файлов: файла определения, в котором определены структуры данных и процедуры для каждого объекта, и одного или нескольких файлов реализации, содержащих код для этих процедур. Traits – это соглашение о программировании, используемое для реализации объектно-ориентированных возможностей и множественного наследования в клиентской среде Star и Viewpoint. Команда Star использовала сложную интегрированную среду разработки (IDE) под кодовым названием Tajo, а официально – Xerox Development Environment (XDE). Tajo имеет много общего с окружением Smalltalk 80, но включает в себя множество дополнительных инструментов, таких как система контроля версий DF, которая требует от программистов извлекать модули перед внесением изменений. Любые изменения в модуле, требующие изменений в зависимых модулях, тщательно отслеживаются и документируются. Изменения в модулях нижнего уровня требуют различных уровней утверждения. Процесс разработки программного обеспечения был интенсивным и включал в себя множество прототипов и пользовательских тестов. Инженерам-программистам пришлось разработать новые протоколы сетевой связи и схемы кодирования данных, поскольку те, которые использовались в исследовательской среде PARC, оказались недостаточными. Первоначально вся разработка велась на рабочих станциях Alto, которые не были достаточно мощными для возлагаемых на программное обеспечение нагрузок. Даже процессор, предназначенный для продукта, оказался недостаточным и потребовал внесения изменений в аппаратное обеспечение в последний момент. Было выполнено множество переработок, переписываний и поздних дополнений программного обеспечения, основанных на результатах пользовательских тестов, а также маркетинговых и системных соображениях. Японская версия системы была создана совместно с Fuji Xerox под кодовым названием J Star и обеспечивала полную поддержку международных клиентов. В конечном итоге многие функции из функциональной спецификации Star не были реализованы. Продукт должен был выйти на рынок, и последние несколько месяцев перед выпуском были сосредоточены на надежности и производительности.

Пользовательский интерфейс

Основная философия пользовательского интерфейса заключалась в максимальном подражании офисной парадигме, чтобы сделать его интуитивно понятным для пользователей. Концепция "что вы видите, то и получаете" (WYSIWYG) считалась первостепенной. Текст отображался чёрным на белом фоне, как на бумаге, а принтер воспроизводил изображение с экрана, используя Interpress – язык описания страниц, разработанный в PARC. Один из главных дизайнеров Star, доктор Дэвид Кенфилд Смит, изобрел концепцию компьютерных значков и метафору рабочего стола, в которой пользователь видит рабочий стол, содержащий документы и папки, с различными значками, представляющими разные типы документов. Щелчок по любому значку открывает окно. Пользователи не запускают программы в первую очередь (например, текстовый редактор, графическую программу или программу для работы с электронными таблицами), а просто открывают файл, и соответствующее приложение запускается автоматически. Пользовательский интерфейс Star основан на концепции объектов. Например, документ для обработки текста содержит объекты страниц, объектов абзацев, объектов предложений, объектов слов и объектов символов. Пользователь выбирает объекты, щелкая по ним мышью, и нажимает специальные клавиши на клавиатуре для вызова стандартных функций объекта (открыть, удалить, скопировать, переместить) единообразным образом. Также была клавиша "Показать свойства", используемая для отображения настроек, называемых таблицами свойств, для конкретного объекта (например, размер шрифта для объекта символа). Эти общие соглашения значительно упрощали структуру меню во всех программах. Объектная интеграция была заложена в систему с самого начала. Например, объект диаграммы, созданный в графическом модуле, можно было вставить в любой тип документа. В конечном итоге Apple реализовала эту возможность в операционной системе Lisa, а на Macintosh – в технологиях Publish and Subscribe. Она стала доступна в Microsoft Windows с внедрением Object Linking and Embedding (OLE) в 1990 году. Этот подход позже был использован на программной платформе OpenDoc в конце 1990-х годов, а также в пакете AppleWorks (первоначально ClarisWorks) для Macintosh в 1991 году и Windows в 1993 году.

Маркетинг и коммерческий прием

Xerox Star изначально не предназначался для самостоятельного компьютера, а для интеграции в "персональную офисную систему" Xerox, которая также подключалась к другим рабочим станциям и сетевым службам через Ethernet. Хотя один блок продавался за , типичному офису требовалось приобрести как минимум 2 или 3 машины вместе с файловым сервером и сервером имен/сервером печати. Тратить p=$ на полную установку было непросто, когда годовая зарплата секретаря составляла около 20 долларов, а стоимость VIC-20 – около 20 долларов. Более поздние версии Star позволяли пользователям приобретать один блок с лазерным принтером, но было продано всего около 25 000 единиц, что заставило многих считать его коммерческим провалом. Рабочая станция изначально разрабатывалась для запуска программного обеспечения Star для выполнения офисных задач, но также продавалась с другим программным обеспечением для других рынков. Эти другие конфигурации включали рабочую станцию для Interlisp или Smalltalk и сервер. Некоторые утверждают, что Star опередил свое время, и лишь немногие за пределами узкого круга разработчиков действительно понимали потенциал системы, учитывая, что IBM представила свой IBM PC на базе 8088 с относительно примитивным PC DOS в том же году, что и Star. Однако сравнение с IBM PC может быть неуместным: задолго до его появления покупатели в сфере текстовой обработки знали о IBM Displaywriter на базе 8086, полностраничной системе отображения черного на белом Xerox 860 и лазерном принтере Xerox 9700 со скоростью 120 страниц в минуту. Кроме того, принципы проектирования Smalltalk и работы без модальных окон широко обсуждались в августовском выпуске журнала Byte за 1981 год, поэтому положение Xerox PARC и потенциал Star вряд ли остались незамеченными целевым рынком (офисные системы), который вряд ли ожидал, что IBM позиционирует массовый ПК как угрозу гораздо более прибыльным специализированным системам WP. К сожалению, влиятельный нишевый рынок пионеров в области электронной публикации, таких как Longman, уже согласовывали свои производственные процессы с общими языками разметки, такими как SGML (предшественник HTML и XML), позволяя авторам, использующим недорогие автономные системы, описывать структуру документов, подготавливая свои рукописи к передаче на компьютерные фотовыводные системы, которые предлагали гораздо более высокое разрешение, чем максимальное разрешение в 360 dpi, доступное в то время для лазерной печати. Другой возможной причиной неудачи Star была корпоративная структура Xerox. Xerox, будучи давней компанией, специализирующейся на копировальных аппаратах, использовала свои сильные стороны. У них уже был один серьезный провал – неудачная попытка извлечь выгоду из приобретения Scientific Data Systems. Говорят, что между старым подразделением по системам копирования, которое приносило основную часть доходов Xerox, и новым, начинающим подразделением существовала внутренняя ревность. Их маркетинговые усилия некоторые считали половинчатыми или не сфокусированными. Кроме того, наиболее технически подкованные торговые представители, которые могли продавать оборудование для автоматизации офиса, получали большие комиссионные за лизинг оборудования для лазерной печати стоимостью до полумиллиона долларов. Никакая комиссионная схема для децентрализованных систем не могла с этим конкурировать. Рынок многоязычной технической документации также представлял собой значительную возможность, но для этого требовалось трансграничное сотрудничество, к которому в то время были готовы немногие торговые организации. Даже внутри Xerox Corporation в середине 1980-х годов было мало понимания системы. Лишь немногие руководители высшего звена когда-либо видели или использовали систему, а торговые команды, если они запрашивали компьютер для помощи в планировании, вместо этого получали более старые системы Xerox 820 или 820 II на базе CP/M. В корпорации Xerox не предпринималось никаких усилий по внедрению систем 8010/8012 Star. Вероятно, наиболее важно, стратегические планировщики в Xerox Systems Group (XSG) считали, что они не могут конкурировать с другими производителями рабочих станций, такими как Apollo Computer или Symbolics. Название Xerox считалось их самым большим активом, но оно не приносило клиентов. Наконец, по более поздним стандартам, система считалась бы очень медленной, отчасти из-за ограниченного оборудования того времени, а отчасти из-за плохо реализованной файловой системы; сохранение большого файла могло занимать несколько минут. Сбои могли сопровождаться многочасовым процессом, называемым очисткой файлов, о котором сигнализировал код диагностики 7511 в верхнем левом углу экрана. Преемник Star, Xerox 6085 PCS, использовал другую, более эффективную аппаратную платформу Daybreak, с новым, более быстрым процессором и значительной переработкой программного обеспечения Star, переименованного в ViewPoint, для повышения производительности. Новая система была выпущена в 1985 году. Новое оборудование обеспечивало от 1 МБ до 4 МБ памяти, жесткий диск от 10 МБ до 80 МБ, 15- или 19-дюймовый дисплей, дисковод 5,25", мышь, подключение Ethernet и цену чуть более .

Xerox 6085 можно было продавать вместе с подключенным лазерным принтером как автономную систему. Также предлагался режим совместимости с ПК через расширительную плату на базе 80186. Пользователи могли передавать файлы между системой ViewPoint и программным обеспечением на базе ПК, хотя и с некоторыми трудностями, поскольку форматы файлов были несовместимы с любыми форматами на ПК. Но даже со значительно более низкой ценой это все равно был Rolls Royce в мире более дешевых персональных компьютеров. В 1989 году Viewpoint 2.0 представил множество новых приложений, связанных с настольными издательскими системами. В конечном итоге Xerox отказался от интегрированной аппаратной/программной рабочей станции, предлагаемой Viewpoint, и предложил только программный продукт под названием GlobalView, предоставляющий интерфейс и технологии Star на платформе, совместимой с IBM PC. Для первоначальной установки требовалось установить дополнительную плату CPU Mesa. Финальная версия GlobalView 2.1 в 1996 году работала как эмулятор на Solaris, Microsoft Windows 3.1, Windows 95, Windows 98 или OS/2.

Наследие

Несмотря на то, что продукт Star не имел успеха на рынке, он вызвал большие ожидания и заложил важную основу для последующих компьютеров. Многие инновации, лежащие в основе Star, такие как WYSIWYG-редактирование, Ethernet и сетевые сервисы, включая каталоги, печать, файловые системы и маршрутизацию межсетевых соединений, стали общепринятыми в компьютерной технике. Члены инженерной команды Lisa увидели Star на его презентации на Национальной компьютерной конференции (NCC '81) и вернулись в Купертино, где преобразовали свой менеджер рабочего стола в интерфейс, основанный на значках, по образцу Star. Среди разработчиков WYSIWYG-редактора Gypsy компании Xerox, Ларри Теслер покинул Xerox и присоединился к Apple в 1980 году, где также разработал фреймворк MacApp. Чарльз Симони покинул Xerox и присоединился к Microsoft в 1981 году, где разработал первую версию Microsoft Word (3.0) с поддержкой WYSIWYG. В 1983 году Симони рекомендовал Скотта Макгрегора, которого Билл Гейтс нанял для руководства разработкой Windows 1.0, в частности, благодаря опыту Макгрегора в создании оконных систем в PARC. Позже в том же году несколько других сотрудников покинули PARC, чтобы присоединиться к Microsoft. Star, Viewpoint и GlobalView были первыми коммерческими вычислительными средами, предлагавшими поддержку большинства естественных языков, включая полнофункциональную обработку текста, что привело к их внедрению в Voice of America, другие государственные учреждения США, занимающиеся внешней политикой, и несколько транснациональных корпораций. В список продуктов, вдохновленных или испытавших влияние пользовательского интерфейса Star, а в меньшей степени Alto, входят Lisa, Macintosh, Graphics Environment Manager (GEM), Visi On, Windows, Atari ST, BTRON из проекта TRON, Amiga, Elixir Desktop, Metaphor Computer Systems, Interleaf, OS/2, OPEN LOOK (разработанный совместно Xerox), SunView, KDE, Ventura Publisher и NEXTSTEP. Adobe Systems PostScript был основан на Interpress. Ethernet был дополнительно усовершенствован компанией 3Com и стал де-факто стандартным сетевым протоколом. Некоторые утверждали, что Apple, Microsoft и другие компании скопировали графический интерфейс и другие инновации Xerox Star, и считали, что Xerox ненадлежащим образом защитил свою интеллектуальную собственность. Было подано множество заявок на патенты на инновации, реализованные в Star. Однако в то время, в 1975 году, соглашение Xerox с Федеральной торговой комиссией (FTC) в рамках антимонопольного разбирательства накладывало ограничения на то, что компания могла запатентовать. Кроме того, когда готовились материалы для патентования Star, патентные юристы Xerox были заняты другими новыми технологиями, такими как лазерная печать. Наконец, патентование программного обеспечения, особенно в отношении пользовательских интерфейсов, было в то время не до конца изученной правовой областью. Xerox обратилась в суд для защиты пользовательского интерфейса Star. В 1989 году, после дела Apple Computer, Inc. против Microsoft Corp. о нарушении авторских прав на пользовательский интерфейс Macintosh в Windows, Xerox подала аналогичный иск против Apple. Однако иск был отклонен по процессуальным, а не по существующим основаниям, поскольку истек трехлетний срок исковой давности. В 1994 году Apple проиграла иск против Microsoft не только по первоначально оспариваемым вопросам, но и по всем претензиям, касающимся пользовательского интерфейса. 15 января 2019 года был выпущен эмулятор Star, разработанный LCM+L и известный как Darkstar, для Windows и Linux.