«В. П. Одинец Зарисовки по истории компьютерных наук Учебное пособие Сыктывкар 2013 УДК 004:93 ББК 32.975 О 42 Печатается по решению редакционно-издательского совета Коми государственного педагогического института от ...»
В 1988 г. Д. Чемберлен был награжден Премией ACM Software Systems за создание System R.
Напомним, что система, которая обеспечивает объектную инфраструктуру и набор реляционных расширителей, называется объектно-реляционной. Объектно-реляционная система должна обеспечивать специальные средства для повышения эффективности приложений, связанных с большими объектами, и минимизации их влияния на системные ресурсы. Термин объектно-реляционная система ввел на рубеже 80–90 гг. южнокорейский ученый Вон Ким (Won Kim).
тируются его работы, посвященные преобразованию SQL-запросов, в частности превращения запросов с вложенными подзапросами в запросы с соединениями [56, с. 450]1.
Заметим, что вне фирмы IBM в университете Беркли еще с начала 70-х гг. создавалась собственная некоммерческая СУБД, названная Ingres [63].
В исходном варианте СУБД Ingres поддерживала собственный язык запросов QUEL. Создателем СУБД Ingres был Майкл Стоунбрейкер (Michael Stonebraker: 1943)2. Из важных свойств СУБД Ingres отметим, что в ней допускается определение пользовательских процедур, выполняемых на стороне сервера, кроме того, в среде Ingres уже начинали поддерживаться ненормализованные отношения.
В 80-е гг. М. Стоунбрейкер3 возглавил проект Postgres, в котором поддерживалась темпоральная модель хранения и доступа к данным.
Добавим, что в Postgres допускалось хранение в полях отношений данных, определяемых пользователями абстПриведем в качестве примера менее известную работу Вон Кима по этой тематике: Won Kim. On optimizing an SQL-like nested query // Journal ACM Transactions on Database Systems (TODS). – V. 7. – Issue 3 (1982). – P. 443–469.
Университетская СУБД Ingres используется до сих пор (код поддерживается в Беркли). Что касается коммерческой версии Ingres, то права на нее принадлежат фирме Computer Associated.
М. Стоунбрейкер родился в городке Ньюберипорт (штат Массачусетс) в г. Учился вначале в Принстонском университете (бакалавр в 1965 г.), затем в Мичиганском университете (магистр – 1967 г.; Ph.D. – 1971 г.). Работал с 1971 по 2001 г. в Беркли (Калифорнийский университет), где стал профессором информатики. C 2001 г. – профессор информатики в MIT. В 1992 г. ему была присуждена первая ежегодная премия Кодда.
рактных типов. Язык запросов в Postgres был собственный:
Postquel. Важно еще подчеркнуть, что в Postgres не предполагалось существования языка программирования, одинаково понимаемого как СУБД, так и внешней системой программирования.
Как Ingres, так и Postgres можно назвать лишь предтечами объектно-реляционных СУБД. Другой предтечей можно назвать серию прототипов объектно ориентированных СУБД Orion, созданных в 80-е гг. Вон Кимом.
По-настоящему первой объектно-реляционной системой был продукт UniSQL, выпущенный в 1991 г. компанией UniSQL, основанной в конце 80-х гг. Вон Кимом. Этот продукт впервые позволяет интегрировать неоднородные БД, основанные на разных моделях данных и управляемых разными СУБД. В частности, задается единое представление данных, которые могут храниться как в базе данных, управляемой непосредственно UniSQL, так и в какой-нибудь из либо реляционных баз данных, например СУБД Oracle, либо даже дореляционных баз данных. Таким образом, UniSQL обеспечивает возможность построения федеративной системы баз данных.
UniSQL является системой объектного расширения реляционной модели баз данных на основе 4-х принципов: 1) значениями атрибутов отношений могут быть объекты, а не только литеральные значения; 2) значения атрибутов отношений могут быть и не атомарными; 3) при построении таблиц (классов) можно использовать и механизм наследования; 4) классы включают операции.
Система UniSQL поддерживает расширение стандарта SQLSQL/X, и при этом в одном языке поддерживается возможность и определения данных, и манипулирования ими (см., например, [64]).
Отметим, что новые стандарты языка SQL (SQL:1999 и SQL:2003) уже содержат объектные расширения.
Эдгар Кодд родился на острове в Портленде (Англия) в 1923 г. Математику и химию он изучал в Exeter колледже Оксфорда. Во время II Мировой войны Э. Кодд был пилотом Королевских Военно-воздушных сил. В 1948 г. Э. Кодд становится программистом фирмы IBM в Нью-Йорке. Из-за душной атмосферы «маккартизма» Э. Кодд был вынужден покинуть США на десять лет (1953–1963) и переехать в Оттаву (Канада). По возвращении он защищает докторскую диссертацию в Мичиганском университете (в Ann Arbor), а в 1965 г. его принимают в исследовательскую лабораторию фирмы IBM в Сан Хозе (Калифорния), где он проработал до конца 80-х.
В 1981 г. Э. Кодд был награжден премией Тьюринга за создание реляционной модели управления базами данных. Позже Э.
Кодд стал заниматься сложными многотабличными запросами.
Именно ему принадлежит термин OLAP (Online Analytical Processing) – аналитическая обработка в реальном времени (подробнее см. [65]).
Еще при жизни Э. Кодда в 1992 г. в ассоциации компьютерной индустрии (Association for Computing Machinery) специальной группой SIGMOD (Special Interest Group on Management of Data) была установлена Премия имени Э. Кодда (SIGMOD Edgar F. Codd Innovations Award). Ее первым лауреатом стал М. Стоунбрейкер.
Раймонд Бойс родился в Нью-Йорке в 1947 г., учился в университете штата Индиана (Purdue University Indianapolis) и там же в 1971 г. защитил докторскую диссертацию по компьютерным наукам. По приглашению фирмы IBM для участия в проекте по базам данных Р. Бойс переезжает в Нью-Йорк. Там в течение двух лет он совместно с Э. Коддом разрабатывает первую нормальную форму. Одновременно он вместе с Дональдом Чемберленом создает язык SQL. Заболевание (аневризма мозга) приводит его к смерти в 27 лет.
§ 20. Специальные базы данных, включая базы информационно-поисковых систем К специальным базам данных относят, во-первых, базы, занимающие очень большой объем на устройстве физического хранения (Very Large Database (VLDB))1, а, во-вторых, базы, являющиеся составной частью информационно-поисковых систем.
Cуществует целый ряд определений VLDB, носящих, однако, временный характер. Дело в том, что база, относящаяся сегодня к VLDB, завтра, с развитием технологий, может стать просто крупной базой данных. В последнее время приводят чаще всего определения VLDB, данные профессором Робертом Холлебиком (Robert Hollebeek: 1951), участником проектов NDMA – Национального электронного медицинского архива и NDMA UP – Национального электронного маммографического архива при Пенсильванском университете (США)2.
Итак, VLDB (в последнее время называемая экстремальной базой (см. далее сноску 1, с. 45)) – это база данных, для которой «трудно подобрать нужный объем аппаратных ресурсов», в частности, «это база, чей индекс не помещается в физической памяти суперкомпьютера или компьютерного кластера». В конечном счете, наличие сверхбольшой базы данных определяется по производительности базы данных – если она резко падает, то мы имеем дело с данной базой. В этом случае Р. Холлебик рекомендует: «…наращивать память до максимума. Если же возможности Конференции по VLDB проходят ежегодно с 1975 г. при поддержке некоммерческого фонда VLDB Endowment Inc. (Последняя конференция прошла в 2012 г. в Стамбуле, следующая будет в Италии в Riva del Garda). Результаты этих конференций оказывают влияние и на развитие обычных баз данных (см.: URL: http://www.vldb.org/).
Профессор физики Пенсильванского университета Р. Холлебик был участником проекта NDMA с июля 2004 г. по сентябрь 2006 г. и проекта NDMA PU – в 1999–2004 гг.
увеличения памяти исчерпаны, то использовать параллельные структуры для организации данных. Если и это невозможно, то используйте индексы для индексных таблиц»1.
В последнем случае мы фактически имеем дело с ситуацией, разрешенной в 1993 г. Э. Коддом, творцом технологии OLAP2 – т. е. технологии обработки данных, сводящейся к подготовке агрегированной информации на основе больших массивов данных, структурированных по многомерному принципу.
Заметим также, что изучение больших сетей (Large Scale Network), например при исследовании генома человека, приводит к VLDB [67].
Кроме очень широких баз данных (VLDB) есть еще одна специальная база, являющаяся составной частью информационнопоисковой системы (ИПС). Напомним, что информационнопоисковая система – это система, обеспечивающая поиск и селекцию (отбор) необходимых данных в специальной базе с описаниями источников информации на основе информационнопоискового языка и соответствующих правил поиска.
Качественную характеристику процедуры поиска, выражающую соответствие результатов поиска сформулированному запросу, называют релевантностью [66].
ИПС обычно подразделяют на четыре группы: локальные, глобальные, региональные и специализированные.
Локальные ИПС служат для поиска страниц в масштабе отдельного сервера. Региональные ИПС служат для описания информационных ресурсов заданного региона; специализированные ИПС используются в рамках определенных структур, например Eric Ahrendt. Extreme data bases. The biggest and fastest // IBM Data Management Magazine. – Issue 1. – 2010. – P. 17–22.
Подробнее см., например, книгу: Thomsen E. OLAP Solutions: Building Multidimensional Information Systems. – John Wiley, 2002. – 696 p.
МВД. Наконец, глобальные ИПС стремятся описать ресурсы всего информационного пространства.
В качестве поисковых инструментов применяются обычно каталоги, поисковые машины и метапоисковые машины [66].
Напомним, что каталог – это поисковая система с классифицированным по темам списком аннотаций со ссылками на webресурсы.
В качестве примера каталога можно привести популярный интернет-каталог «Yahoo».
Для Всемирной паутины первую поисковую систему («Wandex») предложил в 1993 г. Мэтью Грэй (Matthew Gray), работавший тогда в Массачусетском Технологическом Институте (MIT). В качестве языка в «Wandex» использовался язык Perl (подробнее о языке Perl см., например, в [68]). В том же 1993 г.
появилась и поисковая система «Aliweb». Ее разработчиком был Мартийн Костер (Martijn Koster) (см. [69]).
Через год появилась первая полнотекстовая ИПС «Web Crawler», индексирующая ресурсы при помощи программыробота (Web robot) [70], т. е. уже настоящая поисковая машина2.
В 1996 г. для русскоязычных пользователей Интернета стало доступно морфологическое расширение к поисковой машине «Alta Vista»3 [71].
Perl – это высокоуровневый динамический язык программирования, созданный в 1987 г. в Лаборатории NASA (Jet Propulsion Laboratory) Ларри Уоллом (Larry Woll: 1954) в качестве языка «для извлечения данных и составления отчетов» (Practical Extraction and Report Language). Л. Уолл, по первой профессии филолог, был выпускником Seattle Pacific University и мечтал найти в Африке племя с бесписьменным языком и составить для него письменную версию (см.: URL: http://www.wall.org/~larry/).
Напомним, что поисковой машиной называют поисковую систему с базой данных, формируемой роботом и содержащей информацию об информационных ресурсах.
Поисковая машина «AltaVista» появилась в декабре 1995 г. ее нововведением было включение поиска естественного языка. Идея поисковика принадлеВ 1996 г. появилась и первая российская поисковая машина «Рамблер»
(англ. rambler – бродяга). Ее создателем был Д. В. Крюков (1960–2009) [72, ч. IV].
В том же 1996 г. во время конференции ЗАО «Агама»2 в феврале месяце был продемонстрирован созданный этой компанией поисковик «Апорт», который проводил тогда поиск только по сайту: russia.agama.com. (официальная презентация поисковой системы «Апорт» прошла 11 ноября 1997 г.; система индексировала уже весь рунет) [73].
В сентябре 1997 г. была введена в Эксплуатацию поисковая машина «Яндекс», разработку которой начинали А. Ю. Волож3, И. В. Сегалович4, а также А. Барковский (1989–1990), который, до своего отъезда в США, решал для будущего поисковика проблему релевантности. В ноябре 1997 г. для «Яндекса» была жит Полу Флехерти (Paul Flaherty: 1964–2006), создателем бота был Луи Монье (Louis Monier: 1956), а Майкл Барроус (Michael Burrows: 1963) написал indexer.
Дмитрий Витальевич Крюков разместил программу «Рамблер» в сети 8 октября 1996 г.
ЗАО «Агама» была основана в 1992 г. со специализацией: разработка программного обеспечения. Имеет дочернюю компанию в США «Agama International, Inc.» [73].
Волож Аркадий Юрьевич родился в г. Гурьев (ныне Атырау) Казахской ССР в 1964 г. В 1986 г. окончил Институт нефти и газа им. И. М. Губкина по специальности «Прикладная математика». Работая в Институте проблем управления АН СССР, занимался исследованием VLDB. В 1989 г. основал телекоммуникационную дистрибьютерскую компанию СompTek. C 2000 г. – генеральный директор компании Яндекс. Одновременно (с 2007 г.) заведует кафедрой «Анализ данных» в МФТИ.
Сегалович Илья Валентинович (1964–2013). Окончил (1986) Московский геологоразведочный институт по специальности «Геофизика». С 2000 г. – директор компании «Яндекс» по технологиям и разработке. Одновременно (с 2007 г.) преподает в МФТИ на кафедре «Анализ данных».
реализована возможность задания вопросов на естественном языке1. В настоящее время «Яндекс» – не только крупнейший русскоязычный поисковик, но и украинском языках. В 2000 г. была создана компания «Яндекс». Ее учредителями пользователя нескольким поисковым серверам одновременно, потом объединить полученные результаты и дать пользователю результат уже в виде документа со И. В. Сегалович МГУ (его первые создатели – В. С. Лавренко и В. А. Чернышев2).
Поисковик «Нигма. РФ» является первой кластеризующей поисковой системой в Рунете. Проект его создания поддерживался Стэнфордским университетом [75].
Другим примером может служить визуальная поисковая система Quintura.
Первая онлайновая версия Яндекса (представленная в 1997 г.) фактически была скриптовой надстройкой над крюковским движком Рамблера, позволявшей дополнить запрос по правилам русской морфологии.
Лавренко Виктор Сергеевич (р. 1976) – ныне директор ИПС Nigma.ru; Чернышев Владимир Анатольевич (р. 1982) – ныне технический директор ИПС Nigma.ru.
Ее сайт был открыт в апреле 2006 г.
Quintura позволяет визуально находить документы на русском языке с учетом морфологии русского языка при помощи слов-ассоциаций в виде визуального облака.
Один из создателей Quintura Яков Садчиков1 для решения проблемы поиска предложил разработать программу, при помощи которой отбираются ссылки популярных поисковиков: Google, Яндекс и др. Визуализация этих ссылок в виде картинок позволяет сделать поиск доступным и для детей, и для пожилых людей, мало знакомых с компьютером [76].
Из зарубежных метапоисковиков отметим «MetaCrawler», созданный в 1994 г. тогда еще аспирантом Университета штата Вашингтон (Сиэтл) ЭриЛарри Пейдж ком Селбергом (Eric Selberg: 1972)2 в рамках проекта для сдачи квалификационного экзамена. Его научным руководителем был профессор Орен Этзиони (Oren EtziЯ. Садчиков является соучредителем и исполнительным директором венчурной компании Quintura, которая специализируется на операциях с частными акциями и развитии технологий.
Э. Селберг родился в Канаде в г. Эдмонтон. В 1975 г. с родителями переехал в США в г. Солт-Лейк-Сити. Он закончил в 1993 г. Carnegie Mellon University, получив степень бакалавра по двум дисциплинам: математика/компьютерные науки и логика/вычислительная техника. В 1995 г. он получил степень магистра в Университете штата Вашингтон (Сиэтл) по специальности «компьютерные науки и техника», и по этой же специальности в 1999 г. защитил докторскую диссертацию (см.: URL: http://en.wikipedia.org/wiki/Erik_Selberg).
oni) [77] (подробнее о первых Web-роботах см. [78]).
Наконец, настало время сказать и о самой известной крупнейшей метапоисковой системе «Google». Эта система была создана в 1998 г. двумя аспирантами Стэнфордского университета Ларри Пейджем (Lauwrence Page: 1973) и Сергеем М. Брином (Sergey Brin: 1973) [79].
Основным поисковым роботом для Google служит User Agent Googlebot, а также еще 5 специализированных роботов. С сентября 2010 г. компания Google запустила голосовой поиск в России.
Дмитрий Витальевич Крюков родился в 1960 г. в семье математика, специалиста в области кибернетики, Крюкова Виталия Ивановича1.
В 1964 г. семья В. И. Крюкова переехала в Академгородок Пущино, и там прошли детство и юность Дмитрия Крюкова.
Позже в 1994–2005 гг. там же в Пущине в Институте биохимии и физиологии микроорганизмов РАН Дмитрий Крюков был ведущим программистом Центра вычислительной техники.
В 1982–1987 гг. Дмитрий учился в Московской Академии приборостроения, а позднее в Берлине (Technische Universitt), где в 1990 г. он получил сертификаты программиста и системного администратора.
Русскоязычную поисковую систему «Рамблер» Д. Крюков разработал к октябрю 1997 г. в свободное от основной работы время. Вместе с Сергеем Лысаковым основал вначале компанию «Рамблер-Топ-100», а позже компании «Стек Групп» и «Стек В. И. Крюков впоследствии принял священный сан и стал игуменом СвятоДанилова монастыря. По прошествии 10 лет после ухода от науки он получил благословление на продолжение занятий математическим моделированием деятельности головного мозга (см.: URL: http://armih.ru/history/istoki).
Технологии»1. В последней он был Генеральным директором до самой смерти, наступившей мгновенно (13 апреля 2009 г.), в результате разрыва аорты мозга [80].
Сергей (Михайлович) Брин родился в 1973 г. в семье выпускников мехмата МГУ им. М. В. Ломоносова Михаила Израилевича Брина (р. 1948) и Евгении Брин (Краснокутской: р. 1949)2.
М. И. Брин на рубеже 1977/78 гг. принял решение эмигрировать вместе с семьей из СССР. Склонила его к этому шагу, прежде всего, волна антисемитизма, на государственно-партийном уровне захлестнувшая страну в канун вторжения в Афганистан3.
В мае 1979 г. семейство Брин получило, после 8-месячного ожидания, разрешение на выезд. В США Сергей поначалу посещает школу в Аделфи (штат Мэриленд), но главное образование он получает дома. Отец умело направляет его интерес в сторону математики.
В 1990 г. Сергей заканчивает престижную среднюю школу им. Эле- Сергей М. Брин оноры Рузвельт в Гринбелте (МэОтметим, что компанию с названием «Стек» («Stack») организовал еще в 1991 г. Сергей Лысаков, к тому моменту уже 4 года возглавлявший Вычислительный центр Института биохимии и физиологии микроорганизмов РАН (подробнее о С. Лысакове см.: URL: http://finam.fm/guestinfo/1732/).
После эмиграции в США в 1979 г. М. И. Брин стал преподавать в Мэрилендском университете, став позже профессором этого университета, а Е. Брин стала научным сотрудником Центра Годдарда – подразделения NASA [81].
В этот период родители, отказывающиеся осудить своих детей, подавших заявление на выезд из страны, автоматически исключались из партии, а партия в СССР была только одна – КПСС, и становились изгоями общества.
риленд) и поступает в Мэрилендский университет для изучения компьютерных наук и математики. Получив в 1993 г. степень бакалавра (с отличием), продолжил учебу в Стэнфордском университете со стипендией Национального Научного Фонда на изучение компьютерных наук. В Стэнфорде С. Брин знакомится с Ларри Пейджем, а в 1998 г. выходит их совместная работа [79], которая и положила начало поисковику Google.
Еще до выхода этой публикации (14 сентября 1997 г.) С. Брин и Л. Пэйдж зарегистрировали домен google.com. Ими же была зарегистрирована компания Google, оказавшаяся коммерчески необыкновенно успешной.
Следует подчеркнуть, что Сергей Брин является сторонником свободного Интернета и всеобщего доступа к информации [81; 82].
Упражнения 1. Составьте список всех своих знакомых.
а) Составьте на основе этого списка таблицу со столбцами:
порядковый номер, фамилия, возраст, время знакомства.
б) Составьте по предыдущей таблице произвольный целевой список.
в) Пусть даны отношение: ЗНАКОМЫЕ_ВОЗРАСТ_ ВРЕМЗН, aтрибут: ЗНАКОМЫЕ_ВОЗРАСТ, а ПРО_НОМ–время знакомств.
Составьте сами какой-нибудь минимальный атрибут.
2. Дайте понятие многозначной зависимости. Сформулируйте лемму и теорему Фейджина (R. E. Fagen). Чем отличается нормальная форма Бойса-Кодда от четвертой нормальной формы?
3. Сформулируйте теорему Риссанена1 и приведите пример ее использования.
4. Дайте определения и примеры операций collect, size.
5. Дайте определения предиката between.
6. Чем отличается запрос с традиционной группировкой от результата запроса, содержащего раздел GROUP BY ROLLUP?
7. В чем смысл введения оператора SET SESSION AUTHORIZATION?
8. Дайте определение User Defined Type-UDT и типизированных таблиц (Typed Table). Приведите пример.
Й. Риссанен (Jorma Rissanen: 1932) – финский информатик, профессорконсультант Технологического университета в Тампере. Его научные результаты были, в частности, отмечены медалью Колмогорова (2006) и премией им. К. Шеннона (2009) (см.: Golden Jubilee Awards for Technological Innovation // IEEE Information Theory Society. – 2011. – July 14.).
Глава VI. История создания и развития операционных систем § 21. Прототипы операционных систем Напомним, что операционная система (ОС) – это базовое системное обеспечение, управляющее работой компьютера и являющееся посредником между аппаратурой, прикладным программным обеспечением и пользователем компьютера [66, c. 26].
К аппаратуре (или «железу») относят, прежде всего, центральный процессор и устройство ввода-вывода.
Прикладное программное обеспечение включает в себя, в частности, компиляторы, обеспечивающие трансляцию программ с языков программирования в машинный код, СУБД, офисные программы (о них говорилось выше), графические библиотеки2, а в последние годы также игровые программы.
В компьютерах, построенных до 1950 г., операционные системы отсутствовали. В десятилетие 1950–1960 гг. предшественниками ОС служили диспетчеры – системные программы, а по сути библиотеки времени исполнения, которые управляли прохождением пакета задач, вводимых с перфокарт. Выбирая из очереди в хронологическом порядке (без приоритетов и требуемых В данной главе мы не затрагиваем: истории управления процессами и памятью, включая виртуальную, истории безопасности информационных систем и сетей (хотя и приводим малоизвестную историю возникновения вирусов), а также истории классических коммуникационных протоколов.
Напомним, что графические библиотеки – это скрипты, обеспечивающие раскрытие изображения, при клике на превью. Фактически нынешние графические библиотеки открывают любой контент: видеоролики, flash-заставки и т. д. [25].
ресурсов) некоторое задание, диспетчер размещал его в память и запускал. По окончании задания, а очень часто и прерывания его выполнения вследствие ошибки, на печатающем устройстве выдавалась распечатка [66, c. 39]1.
Прообразом диспетчера послужило соединение IBM-табулятора с IBM вычислительным перфоратором, созданное в конце 40-х гг. инженерами компании Northrop Aviation (ныне корпорация Нортроп-Грумман) и названное вычислительным устройством, программируемым на перфокартах (Card Programmed Calculator = CPC) [83].
Как написал один из будущих создателей операционных систем (ОС) Роберт Л. Патрик (Robert L. Patrick), он познакомился с CPC в 1951 г. в Калифорнийском университете (Лос-Анджелес) (UCLA), а с 1953 г. программировал CPC для использования в IBM 701.
В 1954 г. Р. Патрик перешел в исследовательскую лабораторию фирмы General Motors, где он не только усовершенствовал CPC для IBM 701, но и разработал систему безостановочного (non-stop) мультипрограммирования для IBM 704.
В 1954 г. группа программистов из Лос-Анджелесского подразделения компании North American Aviation (NAA), в которой участвовал Оуэн Мокк (Owen R. Mock), создала PACT2 – серию компиляторов для IBM 701. В декабре 1955 г. та же группа программистов, руководимая О. Мокком, инсталировала в IBM систему «North American 701 Monitor»3, которую иногда называют первой операционной системой в компьютерах, хотя она еще только имела многие черты классической ОС [84].
О характеристике аппаратуры того периода времени дает представление книга «Цифровая техника для вычислений и управления», вышедшая в ИЛ в 1960 г. (в открытом доступе) [14].
PACT = Physical Access Control Terminals Неслучайно в 70–80-е гг. операционную систему называли МОНИТОРОМ [2, с. 304].
привело к появлению ОС. Сразу заметим, что О. Мокк и Л. Патрик напрямую не сотрудничали. Группой программистов в Исследовательской Лаборатории фирмы GM руководил в то Оуэн Мокк Рыкмана и Мокка по внедрению достижений Л. Патрика для компьютера IBM 704 и привело к созданию (1956) системы GM-NAA I/O, которая уже имела почти все атрибуты классической ОС [86].
Еще более близким к классической ОС был прототип ОС, созданный в 1957 г. компанией Bell Labs, названный BESYS (Bell Operating System). Ведущим участником проекта по созданию операционной системы BESYS был Виктор (Александрович) Высоцкий (Victor Vyssotski: 1930), сын русского эмигранта – астронома Александра Н. Высоцкого (1888–1973)1. Система BESYS уже обладала возможностью исполнения задач с разделяемым временем на компьютерах IBM 7090 и IBM 7094.
Добавим, что позже идеи, реализованные в BESYS, послужили В. Высоцкому при создании под его руководством уже настоящей операционной системы (Multics) (см. далее § 22).
Александр Николаевич Высоцкий родился в 1888 г. в Москве. Магистерский диплом (по астрономии) защитил в Московском университете. Участвовал в I Мировой войне, а затем в гражданской войне (в Армии генерала Деникина).
Ушел с Белыми войсками в Константинополь, а затем в Бизерту (Тунис). Оттуда, через Францию эмигрировал в США. Заметка в немецком астрономическом журнале открыла А. Высоцкому возможность быть принятым на работу в Университет в Вирджинии, где он преподавал и работал в Астрономической обсерватории 35 лет. Через год после женитьбы А. Высоцкого в 1929 г. на своей ассистентке Э. Вильямс (Emma T. R. Williams) у них родился сын Виктор, ставший известным информатиком (подробнее см.: URL: http://www.
astro.virginia.edu/ research/observatories/26inch/history/vyssotsky.php).
Некоторые элементы системы BESYS, связанные с управлением памятью компьютера, оказались полезными В. Высоцкому в начале 60-х гг. при разработке (совместно с Роберто Моррисом старшим (Robert Morris Sr.: 1932–20111) и Дугом Макилроем (M. Douglas McIlroy: 1932)) компьютерной игры Darwin на выживание (на строго определенном участке памяти компьютера IBM 7090) нескольких программ (об этой игре см., например, [88]).
Поскольку каждой из программ-участниц разрешалось вносить строго определенные деструктивные изменения в код программы-противницы, то игра Darwin (получившая позже название «Ядерная война» (Core War)), послужила источником создания как различных компьютерных вирусов2, так и первых антивирусных программ.
§ 22. Классические операционные системы В 1960–1970 гг. и за рубежом, и в СССР были разработаны так называемые классические операционные системы, предоставлявшие следующие четыре возможности: а) мультипрограммирование, т. е. одновременная обработка двух и более заданий; б) пакетная обработка, т. е. обработка пакета заданий с учетом приоритетов и требуемых ресурсов; в) разделение времени, т. е. параллельная работа нескольких пользователей; г) управление процессами, т. е. параллельное выполнение пользовательских процессов.
Роберт Моррис (старший) родился в 1932 г. в Бостоне. Степень бакалавра по математике он получил в Гарварде в 1957 г., степень магистра по прикладной математике – там же годом позже. С 1960 по 1986 г. он работал в Bell Labs, помогая создавать системы безопасности для операционной системы Multics, а затем – UNIX. C 1986 по 1994 г. возглавлял в Национальном Агентстве Безопасности (NSA) Национальный Центр Компьютерной Безопасности. Основные его работы (в открытой печати) посвящены криптографии (Robert Morris. Password security: A case history // Computer Science Technical Report 71, Bell Laboratories, Murray Hill, NJ. April 1978).
Например, Роберт Моррис мл. (Robert Tappan Morris: 1965), сын Р. Морриса (старшего), – создатель первого сетевого червя (1988) и первый обвиненный (1990) в акте злоупотребления компьютером. Ныне адъюнкт-профессор в MIT.
Первоначально каждая ОС была написана на языке ассемблера для отдельного семейства компьютеров. К ним относились зарубежные и отечественные ОС.
Из зарубежных классических ОС первой по времени считается Atlas Operating System, созданная на рубеже 50–60 гг. в университете Манчестера (Великобритания).1 ОС Atlas была предназначена для компьютера Atlas – совместной разработки Университета Манчестера и двух фирм: Ferranty2 и Plessey3, принятого в эксплуатацию в 1962 г.
Важной новинкой ОС Atlas была система управления памятью, которая использовалась и в создававшихся позже ОС.
продемонстрированной Вычислительным центром MIT (Массачусетский Фернандо Корбат Kilburn T., Howarth D. J., Payne R. B., Summer F. H. The Manchester University Atlas Operating System, Part I: Internal Organization. Comp. J. (October 1961).
Howard D. J., Payne R. B., Summer F. J. The Manchester University Atlas Operating System, Part II: Users’ Description. Comp. J (October 1961).
Компания Ferranti была британской компанией по производству электротехнического оборудования (военная электроника) и компьютерной техники. В 1951 г. произвела один из первых коммерческих компьютеров Ferranti Mark 1.
Обанкротилась и прекратила существование в 1993 г.
Plessey была известной международной оборонной телекоммуникационной компанией, базирующейся в Великобритании и специализирующейся на производстве военной электроники. Исчезла с рынка в 1989 г.
Corbato F. J., Daggett M. M., Daley R. C. An Experimental Time-Sharing System.
IFIPS, 1962.
Следующей по времени создания ОС считается ОС THE (Technische Hogeschool Eindhoven) – мультипрограммная ОС, созданная в Высшей Технической Школе Эйндховена (Нидерланды) под руководством Эдсгера Дейкстры (Edsger Wybe Dijkstra: 1930–2002). Фактически ОС THE была создана в 1965–1966 гг., но первая публикация о ней появилась только в Операционная система THE была препредназначена для использования на платформе Electrologica X8.
В 1964–1965 гг. в Калифорнийском университете (Беркли) в рамках проекта «ДЖИН» (Project Genie) создавалась операционная система SDS2 9403 c разделением времени. В 1966 г. она была анонсирована, а после ее приобретения в 1969 г.
фирмой Xerox получила название XDS 940. При этом в XDS 940 отчетливо чув- Эдсгер Дейкстра ствовалось влияние системы NLS4, созданной в Стэнфордском Исследовательском Институте (SRI) к декабрю 1968 г.
Dijkstra E. W. The structure of the «THE» – multiprogramming system // Communications of the ACM. – 1968. – No. 11(5). – P. 341–346.
SDS = Scientific Data Systems.
SDS 940 Time-Sharing System Technical Manual. – Santa Monica, California:
Scientific Data Systems, 1967.
Создателем системы NLS (oN-Line System) был известный американский ученый и изобретатель Даг Энгельбарт (Duglas Carl Engelbart: 1925), творец компьютерной мыши, гипертекстов, интерактивного вычисления (см. далее с. 223).
В 1969 г. появилась еще одна классическая мультипрограммная ОС, названная RC 4000, более известная как система Monitor. Создавалась она специально для миникомпьютеров. Основным разработчиком ОС Monitor был датско-американский ученый Пер Бринч Хансен (Per Brinch Hansen: 1938–2007)1.
Остановимся теперь подробнее на ОС, которая, хотя и не стала коммерчески успешной, но повлияла на многие последующие ОС – это ОС Multics (Multiplexed Information and Computing Service).
В разработке ОС Multics первоначально (с 1964 г.) участвовали GE, MIT и Bell Labs. Фирма General Electric (GE) предполагала, что Multics станет коммерческим продуктом, и она им стала, но она не стала успешным продуктом, хотя система была весьма удобна в эксплуатации за счет модульной поддержки – ее вычислительные возможности можно было увеличивать простой заменой модулей: центрального процессора, памяти и т. д. Удобным было также то, что списки доступа к файлам для каждого пользователя были отдельными.
Multics стала одной из первых ОС, в которой была реализована плоская модель хранения данных. В ней также была реализована идея динамического связывания исполняемой программы с библиотеками кода. Multics – одна из первых ОС, которая могла работать на многопроцессорных компьютерах, а введение встроенной поддержки привилегий пользователей на доступ к данным и программам обеспечило этой ОС, одной из первых, защиту от взломов.
Отметим еще, что Multics была написана на языке PL/1. Руководителем проекта по созданию ОС Multics до выхода компании Bell Labs из проекта в 1969 г. был В. А. Высоцкий. Неудивительно поэтому, что многие идеи, заложенные в BESYS, были Brinch Hansen, Per. The Nucleus of a Multiprogramming Operating System // Communications of the ACM. – 1970. – No. 13 (4). – P. 238–250.
реализованы и в Multics. Однако основным разработчиком ОС Multics был профессор MIT Фернандо Корбат1. Добавим, что несколько человек (в их числе был и Кен Томпсон), разрабатывавших систему Multics, позже перешли к созданию системы UNIX2.
Последняя ОС, о которой будет идти речь в этом параграфе, это OS/360 (Operating System/360), создававшаяся в 1964–1972 гг.
фирмой IBM для серии своих компьютеров S/360. Для обеспечения совместимости всей линейки компьютеров (S/360) в IBM впервые была применена технология микрокода. К OS/360 была добавлена виртуальная память.
Фернандо Корбат родился в 1926 г. в Окленде (Калифорния).
В 1950 г. получил степень бакалавра в Калифорнийском Технологическом Институте. Докторскую диссертацию по физике он защитил в MIT в 1956 г.
В начале 60-х гг. Ф. Корбат был разработчиком ОС CTSS.
Но главным его детищем (совместно с В. А. Высоцким) была ОС Multics. Звание профессора MIT по компьютерным наукам он получил в 1965 г. В 1990 г. Ф. Корбат был удостоен премии им.
Тьюринга [90].
Эдсгер Дейкстра родился в 1930 г. в Роттердаме (Нидерланды). Изучал теоретическую физику в Лейденском университете.
Сorbato F. J., Vyssotsky V. A. Introduction and Overview of the Multics System / AF IPS Conference Proceedings, 27 (1965). – Washington D.C.: FJCC Spartan Books, 1965. – P. 202–212 (см. также: [89]).
Название UNIX (первоначально Unics) образовано от Multics (UNIX = Uniplexed, Multics = Multiplexed).
Однако достаточно быстро его интересы сместились в сторону компьютерных наук. Первоначально Э. Дейкстра работал в Математическом Центре в Амстердаме. Позже он получит должность профессора в Технологическом университете Эйндховена.
В 1959 г. в первом номере журнала Numerische Mathematik была опубликована статья Э. Дейкстры [91], посвященная решению задачи нахождения кратчайшего пути на ориентированном графе. Алгоритм решения этой задачи нашел широкое применение и получил название алгоритма Дейкстры. Э. Дейкстра был горячим сторонником и пропагандистом языка ALGOL. Ему же принадлежит определение (1968) и развитие понятия структурного программирования. Под его руководством создавалась и операционная система THE.
C 1984 по 2000 г. Э. Дейкстра возглавляет все научные работы по компьютерным наукам в Университете штата Техас в Остине (см. [92]).
Э. Дейкстра имел много различных наград, в их числе еще в 1972 г. он был награжден премией им. Тьюринга за фундаментальный вклад в развитие языков программирования. Практически сразу после его смерти в 2002 г. была учреждена ежегодная премия им. Э. Дейкстры.
Пер Бринч Хансен родился в 1938 г. в Копенгагене. Там же в 1957 г. закончил учебу в гимназии Св. Йоргенса и поступил в Датский Технический университет. После получения в 1963 г.
степени магистра по электро-инженерии работает в компьютерной компании Regnecentralen вначале в составе группы, а позднее как главный архитектор миникомпьютера RC 4000 и создатель ОС RC 4000. В 1970 г. Пер Бринч Хансен переезжает в США. В течение 2-х лет он является научным сотрудником в CMU (Carnegie Mellon University), а затем, до 1984 г., преподает в различных вузах Калифорнии (с 1976 г. уже как профессор). В этот период он создает и развивает новое направление в программировании Concurrent Programming1.
На три года (1984–1987) П. Бринч Хансен возвращается в Данию и преподает в Университете Копенгагена, но позже вновь едет в США профессором приватного Университета в Сиракузах (штат Нью-Йорк), где и преподает до самой смерти в 2007 г. (см.
[93]).
П. Бринч Хансен был отмечен многими наградами, в частности, в 2002 г. он был удостоен премии «Computer Pioneer» за работу над ОС RС 4000, ОС Monitors и языком Concurrent Pascal.
§ 23. Мобильные операционные системы В предыдущем параграфе уже отмечалось, что ОС Multiks не стала успешным коммерческим проектом. Основная причина, кроме недостатков самой операционной системы, заключалась в том, что Multiks создавалась для одной системы компьютеров.
Требовалось создать такую ОС, которую можно было бы использовать для нескольких семейств компьютеров путем переноса их кода, т. е. сделать операционную систему мобильной.
Эту идею реализовал в 1969 г. Кен Томпсон, работавший до этого над Multiks. Помогали ему Денис Ритчи (о Томпсоне и Ритчи шла уже речь в главе IV) и Брайан Керниган (Brian Kernighan)2, придумавший для новой операционной системы В 1977 г. выходит его первая в мире монография на эту тему: Brinch Hansen, Per. The Architecture of Concurrent Programs. – Prentice-Hall, 1977. – P. 317.
Б. Керниган родился в 1942 г. в столице Канады г. Торонто. Учился в университетах Торонто и Принстона. В последнем защитил докторскую диссертацию по компьютерным наукам. Кроме участия в создании OC Unix, прославился соучастием в создании языков программирования AWK и AMPL, а Брайан Керниган 1969 г., становится разработка операционной системы UNIX и UNIX-подобных систем. Лично Д. Макилрою, «UNIX-трубы» (UNIX-pipeline) – аналога (для потока стандартных процессов) на ориентированной сети модели Дуглас Макилрой ассемблере, а на языке высокого уровня2. Так же как в Multiks, в системе UNIX файловая система была иерархической с произвольной глубиной вложенности. При этом для настройки и управтакже написанием вместе Д. Ритчи первой книги о языке Си [32]. До 2012 г.
был профессором Принстонского университета по компьютерным наукам.
Дуглас Макилрой родился в 1932 г. Степень бакалавра по инженерной физике получил в 1954 г. в Корнелльском университете, а докторскую диссертацию по прикладной математике защитил в MIT в 1959 г.
Сотрудничал с Bell Labs c 1958 по 1997 г. После 1976 г. получил известность как соавтор первого неэвристического алгоритма Ханта-Макилроя (сравнения файлов) (см. [94]).
Первые версии UNIX, написанные Кеном Томпсоном, еще не имели компилятора с языком высокого уровня и были написаны на ассемблере.
ления системой использовались простые файлы. Особенностью UNIX, как и UNIX-подобных систем, является широкое применение утилит, запускаемых в командной строке.
Другой особенностью системы UNIX является взаимодействие с пользователем посредством виртуального устройства – терминала.
Впервые исходная система UNIX пьютере PDP-10 [29].
В 1975 г. была создана фирма Microsoft1, которая вышла в 1981 г. на рынок с продуктом ОС MS-DOS. Эта операционная система была предназначена для персональных компьютеров с процессорами INTEL 8086. Хотя в MS DOS ощущалось влияние UNIX, но она не была еще мобильной ОС. Создателем MS DOS был Тим Петерсон (Tim Paterson:
1956), как и учредители Microsoft, начинавший учебу в школе Сиэтла2. Заметим, что первая версия MS-DOS содержала Создание компании Microsoft фактически началось с разработки для персонального компьютера Altair 8800 интерпретатора языка Basic двумя студентами Гарварда, знакомыми со школьных лет и увлекавшихся программированием, Биллом Гейтсом (William Henry Gates III: 1955) и Полом Алленом (Paul Gardner Allen: 1953). Название компании предложил Билл Гейтс (Microsoft = MICROcomputer SOFTware). В 1983 г. П. Аллен покинул Microsoft, сохранив часть акций, что позволило ему, как и Б. Гейтсу, стать миллиардером [95].
Т. Патерсон учился вначале в Seattle Public Schools, а затем в Ingraham High School. По ее окончании (1974) учился в Университете штата Вашингтон, комножество ошибок, которые пришлось исправлять программистам (Ronald Gerald Wayne: 1934), но последний продал свои 10 % акций через 2 недели после основания компании.
Само основание компании Apple Computers опиралось на торый закончил в 1978 г. с отличием по специальности «Компьютерные науки». Занимается созданием программного обеспечения для разных фирм.
Стив Джобс родился (в 1955 г. в Сан-Франциско) в семье студентов (сирийца Абдулфатта Джандали и американки Джоан Шибле). Поскольку родители Джоан были против этого брака, то ей пришлось отдать сына на усыновление.
Усыновили его Пол Джобс и Клара Агапян, давшие при усыновлении письменное обязательство дать сыну образование не ниже колледжа, хотя сами высшего образования не имели.
В школе (в южном пригороде Лос-Анджелеса) С. Джобс познакомился с ее выпускником Стивом Возняком, который также как и Джобс, увлекался компьютерами. По окончании школы (1972) С. Джобс поступил в Рид-колледж, один из самых дорогих частных университетов Америки. На его учебу ушли почти все деньги, собиравшиеся родителями 17 лет. Проучившись полгода в колледже, С. Джобс бросил учебу и стал работать техником в фирме Atari, производившей видеоигры. Попав однажды в Пало-Альто в «Клуб изготовленных кустарно компьютеров», организовавшийся в марте 1975 г., где С. Возняк, к тому времени поучившийся в университетах Колорадо и Калифорнии, хотя из-за нехватки денег их не закончивший, продемонстрировал изготовленный им компьютер, названный позже Apple 1, С. Джобс загорелся идеей начать выпуск этого компьютера. Для этой цели он организует компанию Apple Computer. Юридические документы, включая устав компании, помог оформить Рональд Уэйн (р. 1934), опытный работник электронной промышленности. Так, 1 апреля 1976 г. возникла компания, оцениваемая на фондовой бирже как одна из самых дорогих компаний мира, а ее основатели (кроме Р. Уэйна) стали миллиардерами [96].
созданный С. Возняком компьютер, названный Apple 1. Позже коммерческий успех компании принес персональный компьютер Apple 2. К тому времени компания Apple Computers была (1977) преобразована в корпорацию Apple.
В 1984 г. корпорация Apple выпустила на рынок компьютер Macintosh с операционной системой System 1. При этом пользователи впервые получили возможность использовать компьютерный манипулятор – мышь. (Напомним, что изобретателем мыши является Дуглас Энгельбарт1 (Douglas Carl Engelbart: 1925) (см. § 22)).
Версия ОС System 7.6 и все последующие получили название Mac OS (Macintosh Operating System). Отметим, что Mac OS для представления и организации информации стала использовать графический пользовательский ин- Дуглас Энгельбарт терфейс (graphical user interface (GUI), в частности окна меню, иконки.
В 1986 г. компания Microsoft разработала графическую оболочку Windows над операционной системой MS-DOS. Эта оболочка еще не была операционной системой, но уже Windows 3.x (1991) и последующие были операционными системами.
Дуглас Энгельбарт родился в Портленде (штат Орегон) в 1925 г. в семье эмигрантов из Германии и Швеции, учился в коллеже Штата Орегон (бакалавр электрической инженерии), участвовал во II Мировой войне, обслуживая радары Военно-морского флота США, докторскую диссертацию защитил в Беркли. Награжден премией им. Тьюринга и премией им. Винера, а также медалью Ады Лавлейс [97].
анонсировал проект создания свободной UNIX-подобной операционной системы без использования оригинального исходного кода. Этот проект решил улучшить свободную ОС Minix (из семейства UNIXподобных), написанную профессором Эндрю Таненбаумом (Andrew Stuart Tanenbaum: 1944) для студенческих лабораторий.
17 сентября 1991 г. Л. Торвальдс3 выложил исходный код программы (ядро44Linux) для общедоступной загрузки.
Ричард Столлмэн родился в 1953 г. в г. Нью-Йорке. С компьютерами фирмы IBM познакомился еще в средней школе. Учился в Гарварде, где получил (1974) степень бакалавра физики с отличием (magna cum laude). Одновременно (с 1971 г.) стал работать в лаборатории искусственного интеллекта MIT.
Именно в MIT Р. Столлмэн получает степени магистра и Ph.D. по физике. Работая в лаборатории ИИ в MIT, Р. Столлмэн рано прославился как хакер, легко взламывая пароли. Через два года после анонсирования проекта GNU, т. е.
в 1985 г., Р. Столлмэн публикует GNU-манифест, где он подробно излагает причины создания открытой операционной системы. В октябре 1985 г. он основывает Free Software Foundation и становится ее президентом [98].
Эндрю Таненбаум, американский ученый, работающий с 1971 г. в Нидерландах. Он родился в Нью-Йорке в 1944 г. Степень бакалавра физики получил в 1965 г. в MIT, а доктора физики – в 1971 г. в Беркли в Калифорнийском университете [99].
Линус Торвальдс родился в 1969 г. в Хельсинки. В 1988 г. поступил в университет в Хельсинки, получив в 1996 г. степень магистра кибернетики. С февраля 1997 г. живет в Портленде (США). В 1997–2003 гг. работал программистом компании Transmeta Corporation. В 2003 г. организовал компанию Open Source Development Labs. С 2007 г. работает в компании The Linux Foundation, продолжая разработку ядра Linux.
Напомним, что ядро операционной системы – это ее центральная часть, управляющая выполнением процессов, ресурсами вычислительной системы и предоставляющая процессам координированный доступ к этим ресурсам [66].
Тысячи программистов стали интересоваться этой системой и работать над ее улучшением. При этом добровольные помощники Л. Торвальдсена использовали инструменты, созданные в рамках проекта GNU.
Так возникла свободная операционная система, известная как ОС GNU/Linux [100].
Говоря об операционных системах, не нужно забывать, что самыми распро- Эндрю Таненбаум страненными в мире сейчас являются специализированные ОС для мобильных телефонов, смартфонов и коммуникаторов – это ОС семейства Symbian и операционная система Google Android.
§ 24. Отечественные операционные системы Если говорить об отечественных операционных системах, то мы ограничимся ОС, созданными для БЭСМ-6 и многопроцессорных вычислительных комплексов Эльбрус-1 и Эльбрус-2. Разумеется, были и другие ОС, создававшиеся для вычислительных машин специального назначения.
Кроме того, адаптация ОС OS/360 для модельного ряда ЕС фактически привела к появлению новой операционной системы.
разработка первой советской суперЭВМ БЭСМ-6 на полупроводниковых Для БЭСМ-6 требовалась своя операционная система. Ее удалось разработать (и внедрить) только к 1971 г. под ОС ДИСПАК позволила ее децентрализовать, т. е. сделать пригодной для многомашинных комплексов с общей внешней памятью на магнитных дисках, поскольку еще в 1971 г. В. Ф. Тюриным В. Ф. Тюрин были разработаны для БЭСМ-6 программные средства для подключения Главным конструктором БЭСМ-6 был Сергей Алексеевич Лебедев (1902– 1974) (о его биографии см.: [103], а также [1, с. 54–62]).
Создателем компьютера CDC 6600 был «отец» суперкомпьютеров американский ученый и инженер Сеймур Крэй (Seymour Rodger Cray: 1925–1996) [101].
В 1976 г. им была закончена и внедрена ОС для сети ЭВМ институтов АН СССР, позволявшая работать на любой ЭВМ и любом ее терминале в автоматическом режиме. Это был весьма важный шаг к созданию операционных систем многомашинных вычислительных комплексов Эльбрус-1-К2 и Эльбрус-1-КБ.
Отметим, что уже в 1978 г. в Эльбрус-1 использовался процессор с выдачей двух команд за один такт. Подобные процессоры появились на Западе только в 1991 г. – это так называемые EPIC-процессоры (сокр. от Explicity Parallel Instruction Computing).
Добавим, что архитектура у Эльбруса 1 отличалась от большинства существовавших – она использовала теги, т. е. коды типа данных, хранящихся в каждом слове памяти, по которым аппаратура контролировала правильность выполнения операции.
Операционная система «Эльбрус» поддерживала создание процессов (и операций над ними), которые позже на Западе назовут multi-threading (многопоточность) [66, c. 42–43; 1, c. 67].
Отметим, что на основе инструментальной платформы Linux в России к началу нулевых годов XXI в. появились и отечественные ОС, в частности ОС 2000, МСВС 3.0 и другие. Правда, при этом аппаратная платформа у них, чаще всего, – процессоры Intel.
Владимир Федорович Тюрин родился в 1937 г. в совхозе «Путь Октября» Кизильского района Челябинской области. В 1960 г. окончил физико-математический факультет Уральского госуниверситета (в г. Свердловске – ныне Екатеринбург). Защитил кандидатскую диссертацию «Операционная система ДИСПАК» в 1972 г. Доктором технических наук стал в 1984 г. Профессор МГУ им М. В. Ломоносова (кафедра Автоматизации Систем Вычислительных Комплексов факультета ВМиК), лауреат премии Совета Министров СССР (1991).
Заключение История компьютерных наук фактически пишется на наших глазах, и число её творцов непрерывно растет, пополняясь не только представителями Северной Америки, Западной Европы, но и Китая, Японии, Южной Кореи, Индии, Австралии и Сингапура.
Впрочем, появление в России крупных научных подразделений фирм Microsoft, Intel, Motorola, Google и других, а также развитие компьютерных исследований в Сарове и Снежинске, вселяют надежду, что не только выходцы из России, но и живущие в ней, оставят значимый след в развитии компьютерных наук.
Упражнения 1. Дайте определение тупика (deadlock). Приведите 4 условия возникновения тупика. Дайте определение графа распределения ресурсов и приведите пример такого графа с двумя тупиками.
2. Дайте определение страничной организации (paging). Каково значение бита valid-invalid? Что такое файл откачки? Реализуйте алгоритм компактировки основной памяти.
3. Какие режимы доступа в UNIX вы знаете? Что такое точка монтирования?
4. Дайте определение виртуальной файловой системе (VFS).
Что такое NFS?
5. На чем основана система ввод-вывод с прямым доступом к памяти (DMA)? Чем различаются синхронный и асинхронный ввод-вывод?
6. Дайте определения сетевых и распределенных ОС. В каких сетях используются коммуникационные процессоры? Что такое Кембриджское кольцо?
7. Что такое «брандмауэр»? Что такое SSL? Что такое вход в ловушку?
Список литературы Основной [1] Одинец В. П. Зарисовки по истории компьютерных наук :
учебное пособие : в 3 ч. – Сыктывкар : Коми пединститут, 2011. – Часть I. – 200 с.
[2] Пярнпуу А. А. Программирование на современных алгоритмических языках. – Изд. третье. – М. : Наука, 1990. – 384 с.
[3] Николов Р., Сендова Е. Начала информатики. Язык Лого / пер. с болг. – М. : Физматлит., 1989. – 176 c.
[4] Турчин В. Ф. Алгоритмический язык рекурсивных функций (РЕФАЛ). – Препринт № 4. – М. : ИПМ АН СССР, 1968.
[5] Russell B. The principles of mathematics. – Cambridge : University Press, 1903. – Vol. 1. – 534 p.
[6] Клини С. Введение в метаматематику. – М. : ИЛ, 1957.
(Пер. с англ.: Kleene S. K. Introduction to Metamathematics. – Amsterdam : D. van Nostrand, 1952).
[7] Chomsky N. Syntactic Structures. – Hague-Paris: Mouton, 1957.
– 117 p.
[8] Chomsky N. Aspects of the Theory of Syntax. – Cambridge (Massachusetts) : MIT Press, 1965. – 261 p.
[9] Криницкий Н. А., Миронов Г. А., Фролов Г. Д. Программирование и алгоритмические языки. – М. : Наука, 1975. – 496 с.
[10] Ляпунов А. А. О логических схемах программ // Труды третьего Всесоюзного Математического съезда. – М. : Изд-во АН СССР, 1956. – Т. 1. – С. 193.
[11] Янов Ю. И. О логических схемах алгоритмов // Проблемы кибернетики. – М. : Физматгиз, 1958. – Вып. 1. – С. 29–53.
[12] Криницкий Н. А. Язык логических схем // Цифровая вычислительная техника и программирование. – М. : Сов. Радио, 1966. – Вып. 1.
[13] Ляпунов А. А. К алгебраической трактовке программирования // Проблемы кибернетики. – М. : Физматгиз, 1962. – Вып. 8. – С.
235–241.
[14] Клейн М. Л., Морган Г. С., Аронсон М. Г. Цифровая техника для вычислений и управления / пер. с англ. – М. : ИЛ, 1960. – 386 с.
[15] Юров В., Хорошенко С. Assembler : учебный курс. – СПб. :
Питер, 1999. – 672 с.
[16] Кип Ирвин. Язык ассемблера для процессоров Intel / пер. с англ. – М. : Вильямс, 2005. – 912 с.
[17] Зубков С. В. Ассемблер для DOS, Windows и UNIX. – М. :
ДМК Пресс; СПб. : Питер, 2006. – 608 с.
[18] Backus J. W. The History of Fortran I, II, and III // Annals of the History of Computing. – Vol. 1. – No. 1 (July-September 1979).
[19] Campbel-Kelly M. Obituary: John Backus (1924–2007): Inventor of science’s most widespread programming language, Fortran // Nature journal. – Vol. 446. – No. 7 (April 2007). – P. 998.
[20] Wijngaarden van A. Programmeren voorautomatische rekenmachines. – Amsterdam : Mathematisch Centrum, 1956.
[21] Alberts G. Adriaan van Wijngaarden (1916–1987). – Biografisch Woordenboek van Nederlandse Wiskundigen, 2006 (BWNW).
[22] Дубинина Л. Г., Жимулев И. Ф. К 50-летию «Письма трехсот» // Вестник ВОГиС. – 2005. – Т. 9. – № 1. – C. 12–33.
[23] Zuse K. ber den allgemeinen Plankalkl als Mittelzur Formulierung schematisch-kombinativer Aufgaben // Arch. Math. – (1948/49). – S. 441–449.
[24] Zuse K. Der Plankalkl / Gesellschaft fr Mathematik und Datenverarbeitung // BMBW – GMD. – № 63 (1972).
[25] Баранов С. Н., Ноздрунов Н. Р. Язык Форт и его реализации. – Л. : Машиностроение, 1988. – 157 с.
[26] Броуди Л. Начальный курс программирования на Форте / пер. с англ.; предисл. И. В. Романовского). – М. : Финансы и статистика, 1990. – 352 с.
[27] Йенсен К., Вирт Н. Паскаль. Руководство для пользователя.
Описание языка. – М. : Финансы и статистика, 1982. – 15 с.
[28] Wirth N., Weber H. EULER: a generalization of ALGOL and its formal definition: Part I // Communications of the ACM. – No. 9 (1). – 1966. – P. 13–25.
[29] Wirth N., Weber H. EULER: a generalization of ALGOL, and its formal definition: Part II // Communications of the ACM. – No. 9 (2). – 1966. – P. 89–99.
[30] Вирт Н. Программирование на языке Модула-2. – М. : Мир, 1987. – 224 c.
[31] Richards M. The BCPL Reference Manual. – Memorandum MProject MAC. – Cambridge, July 1967.
[32] Kernighan B. W., Ritchie D. M. The C Programming Language.
Englewood Cliffs, NJ : Prentice Hall, 1978. (Русск. пер.: Керниган Б., Ритчи Д. Язык программирования Си. – М. : Вильямс, 2007. – 304 с.) [33] Страуструп Б. Язык программирования C++. – Специальное изд. – М. : Бином-Пресс, 2007. – 304 с.
[34] Reiser M., Wirth N. Programming in Oberon: steps beyond Pascal and Modula. – NY : ACM Press, 1992.
[35] Bszrmnyi L., Gutknecht J., Pomberger G. (Eds). The School of Niklaus Wirth: The Art of Simplicity. – Morgan Kaufman Publishers, 2000.
[36] Роббинс А. Unix : справочник / пер. с англ. – М. : КУДИЦПРЕСС, 2007. – 864 с.
[37] Ritchie D. Ken, Unix and Games // ICGA Journal. – 2001. – (2).
[38] Condon J. H., Thompson K. Belle Chess Hardware / In Advances in Computer Chess 3. – Pergamon Press, 1982.
[39] Вольфенгаген В. Э. Методы и средства вычислений с объектами. Аппликативные вычислительные системы. – М. : JurInfoR, Ltd., АО «Центр ЮрИнфоР», 2004. – XVI + 789 с.
[40] McCarthy J., Brayton R., Edwars D., Fox P., Hodes L., Luckham D., Maling K., Park D. et al. LISP I Programmers Manual. – Boston, Massachusetts : Artificial Intelligence Group, MIT Computation Center and Research Laboratory, 1960.
[41] Hewitt C. PLANNER: A Language for Proving Theorems in Robots. – IJCAI’69, 1969.
[42] Маслов С. Ю. Обратный метод установления выводимости для непредваренных формул исчисления предикатов // ДАН СССР. – 1967. – № 1. – С. 22–25.
[43] Milner R., Tofte M., Harper R. The Definition of Standard ML.
– MIT Press, 1990.
[44] Horn A. On sentences which are true of direct unions of algebras // Journal of Symbolic Logic. – 1951. – No. 16. – P. 14–21.
[45] Адаменко А., Кучуков А. Логическое программирование и Visual Prolog (c CD). – СПб. : БХВ-Петербург, 2003. – 990 с.
[46] Kowalski R. A. The early years of logic programming // Communications of the ACM. – 1988. – No. 31. – P. 38.
[47] Colmerauer A., Roussel P. The birth of Prolog // ACM SIGPLAN Notice. – 1993. – 28 (3). – P. 37.
[48] Dahl O-J., Myhrhaug B., Nygaard K. Common Base Language.
– Norwegian Computing Center, 1970.
[49] Грэхем И. Объектно-ориентированные методы. Принципы и практика. – М. : Вильямс, 2004. – 880 с.
[50] Knuth D. E. Structures Programming with go to Statements // Computing Surveys. – Vol. 6. – No. 4 (1974). – 292 p.
[51] Кирютенко Ю. А., Савельев В. А. Объектно-ориентированное программирование. Язык Smalltalk. – М. : Вузовская книга, 2007. – 328 с.
[52] Эккель Б. Философия Java. – СПб. : Питер, 2003. – 976 с.
[53] Хорстман К. С., Корнелл Г. Java 2. Библиотека профессионала. – М. : Вильямс, 2008. – Т. 1. Основы. – 816 с.
[54] Хорстман К. С., Корнелл Г. Java 2. Библиотека профессионала. – М. : Вильямс, 2008. – Т. 2. Тонкости программирования. – 992 с.
[55] Монахов В. Язык программирования Java и среда Netbeans.
– 3-е изд. – СПб. : БХВ-Петербург, 2011. – 704 с.
[56] Кузнецов С. Д. Основы баз данных: учебное пособие. – 2-е изд., испр. – М. : Интернет-Университет Информационных Технологий; БИНОМ, Лаборатория знаний, 2007. – 484 с.
[57] Гарсиа-Молина Г., Ульман Дж., Уидом Дж. Системы баз данных. Полный курс. – М. : Вильямс, 2003. – 1088 с.
[58] Fisher L. M. Reynold Johnson, 92, Pioneer in Computer Hard Disk Drives // The New York Times. – 1998. – September 18.
[59] Bachman Ch. W. The Role Data Model Approach to Data Structures // International Conference on Date Base (ICOD). – 1980. – March 24. – P. 1–18.
[60] Codd E. F. A Relation Model of Date for Large Shared Data Banks // Communication of the ACM. – 1970. – No. 13 (6). – P. 377–387.
[61] Date C. J., Darwen H. A Guide to the SQL Standard. – 4-th ed. – Addison-Wesley, 1997. – 522 p.
[62] Selinger P. G., Astrahan M. M., Chamberlin D. D., Lorie R. A.
Access Path Selection in a Relational Database Management System // Proceedings of the 1979 ACM SIGMOD International Conference on Management of Data. – P. 23–34.
[63] Stonebraker M. The Ingres Papers: Anatomy of Relational Database System. – Boston : Addison- Wesley, 1985. – 463 p.
[64] Stonebraker M., Moor D. Object-Relational DBMSs: The Next Great Wave. – Walthem : Morgan Kaufmann Publishers, 1996. – 207 p.
[65] Rubinstein S. Edgar Codd – computer pioneer in database // San Francisco Chronicle. – 2003. – 24 Apr.
[66] Сафонов В. О. Основы современных операционных систем.
– М. : Национальный открытый ун-т «ИНТУИТ». Лаборатория знаний, 2011. – 584 с.
[67] Hollebeek R., Schnall M., Beckerman B. NSF Workshop on New Visions for Large Scale Networks: Research and Applications // Petabyte Scale Radiology Archiving and Retrieval. – 2001. – Mar.
[68] Уолл Л., Кристиансен Т., Орвант Д. Программирование на Perl. – М. : O’Reilly, Символ. – 2008. – 1145 с.
[69] Koster M. Aliweb – Archie-LikeIndexingin the Web /List of PostScript files for the WWW94 advance proceedings/ First International Conference on the World Wide Web (June 1994). – Geneva (Switzerland) :
Postscript, Size: 213616. – 10 p.
[70] Eichmann D. The RBSE spider: balancing effective search against Web load / In Proceeding of the First World Wide Web Conference. – Geneva (Switzerland), 1994. – P. 67–79.
[71] Ray E. J., Ray D. S., Selzer R. The AltaVista Search Revolution.
– 2 ed. – Osborn : McGraw-Hill, 1998.
[72] Колисниченко Д. Н. Поисковые системы и продвижение сайтов в Интернете. – М. : Диалектика, Вильямс, 2007. – 272 с.
[73] АГАМА / IT InfoArt Stars: сайт. URL: http://infoart.udm.ru/ company/agama/index.htm (дата обращения 20.08.2012) [74] История Яндекса: сайт. URL: http://company.yandex.ru/ abaut/history/ (дата обращения 20.08.2012) [75] Нигма.РФ: сайт. URL: http://нигма.рф (дата обращения 20.08.2012) [76] Бондаренко С., Бондаренко М. Quintura Search: уникальная программа для поиска в Интернете: сайт. URL: http://www/ 3dnews.ru/software/quinura/print (дата обращения 20.08.2012) [77] Selberg E., Etzioni O. Multi-Service Search and Comparison using the MetaCrawler / In Proceedings of the 4th International World-Wide Web Conference. – Geneva (Switzerland), 1995. – P. 195–208.
[78] Kobayashi M., Takeda K. Information retrieval on the web // ACM Computing Surveys (ACM Press). – 2000. – No. 32 (2). – P. 144– 173.
[79] Brin S., Page L. The Anatomy of Large–Scale Hypertextual Web Search Engine. – Computer Networks and ISDN Systems. – 1998. – V. 30.
– No. 3. – P. 107–117.
[80] Страница памяти Дмитрия Крюкова на сайте компании «Стек Груп» : сайт. URL: http://www.stack.net/krukov.html [81] Google Corporate History (official) : сайт. URL: http://www.
google.com/intl/en/corporate/history.html (дата обращения 20.08.2012) [82] Stross R. Planet Google: One Company’s Audacious Plan to Organize Everything We Know. – New York : Free Press, 2008.
[83] Haygh T. Patric (Robert L.). Oral history (227). – Mountain View (California): Computer History Museum, 2006. – 139 p.
[84] Mock O. R. Logical Organization of the PACT I Compiler // J.
ACM. – 1956. – Vol. 3. – No. 4. – P. 279–287.
[85] Ryckman G. F. The IBM 701 Computer at the General Motors Research Laboratories // IEEE Annals of History of Computing. – 1983. – No. 5 (2). – P. 210–212.
[86] Mock O. R. The Share 709 System: Input-Output Buffering // J.
ACM. – 1959. – Vol. 6. – No. 2. – P. 145–151.
[87] Morris R., Grampp F. T. UNIX Operating System Security.
AT&T // Bell Laboratories Technical Journal. – 1984. – Vol. 63. – Part 2.
– No. 8. – P. 1649–1672.
[88] Aleph Null (C. A. Lang). Computer recreations: Darwin. Software // Practice and Experience. – 1972. – Vol. 2. – Issue 1. – P. 93–96.
[89] Vyssotsky V. A., Corbat F. J., Graham R. M. Structure of the Multics Supervisors // AF IPS Conference Proceedings, 27 (1965). – Washington D.C. : FJCC Spartan Books, 1965. – P. 202–212.
[90] Corbat F. J. On Building Systems That Will Fail // Turing Award Lecture, 1991.
[91] Dijkstra E. W. A note on two problems in connection with graphs // Numerische Mathematik. – 1959. – No. 1. – P. 269–271.
[92] Dijkstra E., Thomas J. M. (Editor). An Interview with Edsger W.
Dijkstra // Communications of the ACM. – 2010. – No. 53 (8). – P. 41–47.
[93] The Origin of Concurrent Programming: from Semaphores to Remote Procedure Calls (Brinch Hansen Per – Editor). – Berlin–NY :
Springer, 2002. – 544 p.
[94] Hunt J. W., McIlroy D. An Algorithm for Differential File Comparison // Computing Science Technical Report (Bell Laboratories). – 1976. – No. 41. – June.
[95] Manes S. Gates: How Microsoft’s Mogul Reinvented an Industry and Made Himself The Richest Man in America. – Touchstone Pictures, 1994.
[96] Айзексон У. Стив Джобс : биография / пер. с англ. – М. :
АСТ, Corpus, 2012. – 704 с.
[97] IEEE Computer Society Magazine Honors Artificial Intelligence Leaders // Digital Journalcom. – 2011. – 24.08.
[98] Williams S. Free as in Freedom: Richard Stallman and the Free Software Revolution. – Boston, Massachusetts : GNU Press, 2010.
[99] Таненбаум Э. Современные операционные системы. – 3-е изд. – СПб. : Питер, 2010. – 1120 с.
[100] Торвальдс Л., Даймонд Д. Ради удовольствия: рассказ нечаянного революционера. – М. : ЭКСМО-Пресс, 2002. – 288 с.
[101] Murray Ch. J. The Supermen: The Story of Seymour Cray and the technical Wizards behind the Supercomputer. – John Wiley & Sons, 1997. – 228 p.
[102] Тюрин В. Ф. Операционная система ДИСПАК. – М. : Наука, 1985. – 336 с.
[103] Малиновский Б. Н. История вычислительной техники в лицах. – К. : КИТ, ПТОО «АСК», 1995. – 384 с.
ЧАСТЬ III
Глава VII. Компьютерные сети Введение Настоящая глава посвящена истории обмена информацией на базе компьютерных сетей. Компьютерная сеть является некоторой реализацией графа-сети, часть вершин которой составляют пользователи, а часть – серверы или технические устройства, например накопители информации, спутниковые антенны, вышкиретрансляторы и т. д.История обмена информацией между людьми берет начало в глубокой древности, сначала как бесписьменный обмен (битье в барабаны, позже – в колокола, зажигание костров1, факелов и т.
д.), а с возникновением письменности – в форме почтовой связи2.
При этом связь осуществлялась как по суше (конно и пеше), так и по воде, и по воздуху (голубиная почта) [11, Taube, s. 240– 241].
В трагедии «Агамемнон» древнегреческий поэт Эсхил (525–456 гг. до н. э.) описывает, как при помощи костров было передано сообщение о взятии Трои.
В Египте регулярная почтовая связь появилась во времена Нового Царства (16–11 вв. до н. э.). Широко известно письмо Азирру Амирру египетскому фараону Эхнатону, датируемое 1340 г. до н. э. [12, Postwesen, s. 1080–1081].
В Персии появление регулярной почтовой связи относят ко времени царствования персидского царя Кира II (550–529 гг. до н. э.). Этот факт приводит, в частности, Геродот (484–424 гг. до н. э.) [13].
В Древнем Китае при династии Чжоу (1100–256 гг. до н. э.) уже появилась регулярная почта, резко расширенная в период первой китайской империи при династии Цинь (221–206 гг. до н. э.) и особенно – при династии Хань (206 г.
до н. э. – 220 г. н. э.) [14].
В Древней Индии в долине Инда в 3–2 тысячелетии до н. э. существовало развитое рабовладельческое государство Хараппа, не уступавшее в своем развитии государствам Египта и Месопотамии и имевшее тесные торговые и культурные связи с Ираном и Средней Азией [15].
В России почта возникла почти сразу же после создания в 862 г. Древнерусского государства. В «Повести временных лет»
упоминается 885 г., когда князь Олег1 послал родимичам гонца с вопросом. С 984 г. уже при первом великом князе киевском Владимире I Святославиче2 появляется регулярная почта, «повоз» – повинность для населения выставлять лошадей с повозками для княжеских гонцов [17, c. 352].
С 1266 г. появились правила проезда гонцов по русским землям, а от татар пришло новое название почты: «ямская гоньба»3.
В 1794 г. на линии Париж – Лилль (длина 225 км) заработал первый оптический телеграф братьев Клода и Игнация Шаппов4.
В 1824 г. по проекту Пьера Шато, ученика К. Шаппа, действующий оптический телеграф был построен и в России. Он соединял Санкт-Петербург и Шлиссельбург (длина 60 км). А уже в Олег стоял во главе Древнерусского государства после смерти Рюрика в 879 г., вначале в Новгороде, а с 882 по 912 г. – в Киеве.
Владимир I Святославич правил с 980 по 1015 г. После крещения (988 г.) принял имя Василий [16, c. 39].
«Ям» – тюркск. – почтовая станция в России в 13–18 вв. [18].
Клод Шапп (Claude Chapp: 1763–1805) – французский изобретатель одного из видов оптического телеграфа, названного им семафором и представленного на рубеже 1791/92 гг. Национальному Собранию Франции, по постановлению которого и была построена первая линия с передающими башнями. Его старший брат Игнаций Шапп (Ignace Chappe: 1760–1829) не только помогал брату при строительстве первой линии, но стал с 1794 г. главным директором французских телеграфов. В 1824 г. он выпустил в Париже книгу об истории создания телеграфа «Histoire de la tlgraphie», защитив в ней брата от несправедливых обвинений в плагиате, приведших К. Шаппа к самоубийству.
Хотя у К. Шаппа и были предшественники – Дж. Амонтонс (Guillaume Amontons: 1663–1705), Р. Гук (Robert Hook: 1635–1705), И. Бергштрёссер (Johann Bergstrsser: 1732–1812), он привнес множество технических новинок при строительстве оптического телеграфа, и, самое главное, это был действующий весьма эффективно вид связи, поэтому К. Шапп по праву считается создателем первого оптического телеграфа [20]. Интересно, что, узнав об оптическом телеграфе К. Шаппа, Иван Петрович Кулибин (1735–1818) по заданию Екатерины II создает проект оптического телеграфа, аналогичный семафору К. Шаппа, но со своей оригинальной кодировкой по слогам. К сожалению, после смерти Екатерины II об этом проекте И. П. Кулибина забыли [21].
1839 г. по проекту того же П. Шато была построена самая длинная (1200 км) на тот момент линия оптического телеграфа, соединившая Зимний дворец в Санкт-Петербурге и Королевский замок в Варшаве. Все расстояние (с учетом того, что на трассе было 149 башен – передающих/принимающих станций) сигнал проходил менее чем за 20 минут [19].
Идея строительства электрического телеграфа 1 как электростатической линии связи пробивала себе дорогу всю вторую половину 18 века. Из наиболее успешных опытов можно отметить опыты испанского врача и изобретателя Дона Франциско Сальва (Don Francisco Salva y Campillo: 1751–1828) в 1795–1796 гг.2 В 1804 г. им был построен электрохимический телеграф с 26 сосудами с электролитом (по числу букв латинского алфавита). При передаче сообщения (т. е. действии тока) в сосуде, соответствующем передаваемой букве, поднимались пузырьки, позволяя записать эту букву [23].
В 1809 г. этот телеграф был усовершенствован знаменитым немецким ученым С. Т. Зёммерингом (von Smmerring Samuel Thomas: 1755–1830)3 [24].
До 1839 г. было предложено около 50 различных систем телеграфов.
Идею электрического телеграфа предложил в 1753 г. шотландец Чарльз Моррисон (Morrison Charles), опубликовавший эту идею в заметке журнала «Scots Magazine», датированной 1 февраля 1753 г. и подписанной лишь инициалами «C.M.». Ч. Моррисон занимался в Глазго торговлей табаком. Позже эмигрировал в Вирджинию, где и умер. Расшифровал эти инициалы в 1859 г.
сэр Дэвид Брюстер, написавший ранее, в 1855 г., серию статей об электрическом телеграфе в «Nord British Review» [22, с. xxii, 545].
О результатах своих опытов Ф. Сальва сообщил 16 декабря 1795 г. в Академии Барселоны [23].
C. Т. Зёммеринг родился в Торуни, учился в Гёттингене и был не только известным врачом, но и анатомом, антропологом, палеонтологом (впервые в 1812 г. описавшим «Птеродактиля») и изобретателем [25].
К 1837 г. относится появление телеграфного аппарата Сэмюэля Морзе (Morse Samuel Finley Breese: 1791– 1872)1 с неравномерным кодом (для более часто встречающихся в английском языке букв – более короткий код), называемым азбукой Морзе.
Недостатком (при очевидной простоте телеграфного аппарата) была низкая пропускная способность линии из-за малопроизводительного буквоСэмюэль Морзе печатающего аппарата [23; 27].
В России в октябре 1832 г. в Санкт-Петербурге П. Л. Шиллингом2 был продемонстрирован электромагнитный телеграф со стрелочной индикацией сигналов фактически двоичного кода.
С. Морзе, родившийся в семье влиятельного кальвинистского пастора и известного географа, Дж. Морзе (1761–1826), получил хорошее образование, обучаясь первоначально в Академии Филлипса (штат Массачусетс), а затем – в колледже в Йеле, где слушал, в частности, лекции по электричеству Бенджамина Силлимана (B. Silliman) и Джереми Дэя (J. Day). Увлечение сына с юношеских лет живописью склонило, не без сомнений, родителей С. Морзе к решению послать сына в 1811 г. на три года в Англию для изучения живописи. Так С. Морзе стал профессиональным художником. В 1825 г. он организует в Нью-Йорке Национальную Академию живописи (National Academy of Design) и избирается ее первым президентом. В 1835 г. С. Морзе становится профессором начертательных искусств в университете Нью-Йорка. В 1836 г.
он знакомится с описанием электрического телеграфа, изобретенного и построенного в 1833 г. немецким физиком В. Вебером (Weber Wilhelm Eduard:
1804–1891) при помощи великого немецкого математика и астронома К. Гаусса (Gauss Carl: 1777–1855), соединившего в Гёттингенском университете физический кабинет с обсерваторией. С этого момента С. Морзе почти все свое время посвящает изобретательству [26; 28].
Барон Павел Львович Шиллинг (Paul Schilling von Cannstatt: 1786–1837) родился в Ревеле (ныне Таллин) в семье Л. Ф. Шиллинга, командира пехотного полка, балтийского немца по происхождению. Первоначальное образование П. Л. Шиллинг получил в кадетском корпусе, который окончил в 1802 г. С 1803 г. до лета 1812 г. служил переводчиком в русском представительстве в После смерти П. Л. Шиллинга его телеграф усовершенствовал Б. С. Якоби1, создав к 1850 г. оригинальное буквопечатающее устройство.
Лучшим, однако, оказался буквопечатающий аппарат Д. Э.
Хьюза (David Edward Hughes: 1831–1900)2, созданный в 1854 г.
Уже через 11 лет Д. Э. Хьюз устанавливает свои аппараты на линии Санкт-Петербург – Москва.
Мюнхене. В 1805 г. он знакомится с С. Т. Зёммерингом и увлекается идеей постройки электрического телеграфа. Осенью 1812 г. П. Л. Шиллинг разрабатывает и реализует в Петербурге метод электрического подрыва мин. В 1813– 1814 гг. он участвует в войне против Наполеона (награжден саблей «За храбрость»), а осенью 1814 г. возвращается на службу в Министерство Иностранных дел Российской Империи, не оставляя эксперименты с электричеством.
Параллельно в эти же годы он занимается изучением восточных языков (в первую очередь, китайского). Под его руководством к 1818 г. была построена первая в России литографическая мастерская, изготавливавшая для армии топографические карты и воспроизводившая китайские рукописи. В 1828 г.
П. Л. Шиллинг избирается членом-корреспондентом Российской Академии Наук отделения литературы и древностей. После демонстрации (1832) своего усовершенствованного телеграфного аппарата в России (в том числе Николаю I) П. Л. Шиллинг едет в Берлин и показывает (1833) свой аппарат Александру фон Гумбольдту (Alexander von Humboldt: 1769–1859). В России с конца 1832 г. началось строительство первых линий электро-телеграфной связи, прерванное смертью П. Л. Шиллинга в 1837 г. [29].
Якоби Борис Семёнович (von Jacobi Moritz Herman: 1801–1874) родился в богатейшей еврейской семье Симона Якоби – личного банкира Прусского короля Фридриха Вильгельма III (Friedrich Wilhelm III: 1770–1840). Учился в Берлинском и Гёттингенском университетах, изучая физику. Позже работал архитектором вначале в Берлине, а с 1834 г. – в Кёнигсберге, где с 1826 г. был профессором университета его младший брат, выдающийся математик Карл Якоби (Carl Gustav Jacob Jacobi: 1804–1851). В 1834 г. Б. С. Якоби строит первый в мире электродвигатель с непосредственным вращением рабочего вала. В г. Б. С. Якоби был приглашен профессором гражданской архитектуры в университет г. Дерпта (ныне Тарту). Приняв в 1837 г. российское подданство, Б. С.
Якоби в 1838 г. стал автором замечательного открытия – гальванопластики, за что в 1840 г. удостоился Демидовской премии. В 1847 г. Б. С. Якоби избирается ординарным академиком Российской Академии наук и до конца жизни заведует Физическим кабинетом Академии Наук в Петербурге [30; 31].
Дэвид Хьюз (до 1991 г. писалось Юз) родился в Лондоне, а в возрасте 7 лет вместе с родителями переехал в США, где стал физиком-экспериментатором.
В 1865–67 гг. работал в России, а в 1867 г. Д. Хьюз вернулся в Лондон. В г. он изобрел угольный микрофон, а в 1881 г. – индукционные весы [33].
Еще через 9 лет (в 1874 г.) французский инженер Э. Бодо (mil Baudot: 1845–1903)1 изобретает телеграфный аппарат, позволявший уплотнить телеграфные линии, положив в основу пятизначный код [19]. Правда, идея уплотнения принадлежала поданному Российской Империи, лауреату Демидовской премии за создание «счислителя» (см. [1, c. 46–50]) Хаиму-Зелику (Зиновию Яковлевичу) ложившему в 1858 г. метод квадруплексного телеграфирования2.
Добавим, что еще до регистрации в 1874 г. патента Э. Бодо русский изобретатель профессор Харьковского университета Ю. И. Морозов в 1869 г. предложил использовать для одновременной передачи нескольких сообщений по одному проводу переменный ток. Кстати, проблема предварительной фиксации информации была решена еще в 1858 г. английП. Л. Шиллинг ским изобретателем сэром Ч. Уитстоном (Charles Wheatstone: 1802–1875), Патент № 103.898 от 17 июня 1874 г. «Systme de tlgraphie rapid» [32, c.
394–395].
Квадруплекc (от лат. quadruplex – четвертной) – метод телеграфирования, позволяющий по одному проводу вести одновременно передачу двух различных телеграмм и прием двух других телеграмм. В 1874 г. Т. Эдисон (Edison Thomas Alva: 1847–1931) предложил схему, практически совпадавшую со схемой Слонимского [28].
отношению к перфокартам Жозефа Жаккара (Jacquard Joseph Marie: 1752–1834) Реальный прототип устройства, реализующего эту идею, принадлежит учителю математики, физики, химии и французского Филиппу Райсу (Philipp Reis:
Первая версия устройства, названного им «телефон», была продемонстрирована 26 октября 1861 г. членам физического общества Франкфурта (на Майне) З. Я. Слонимский Ш. Бурсель родился в Брюсселе (Бельгия).
В начале династии Сун (960–1279) китайский изобретатель Кунг-Фи создал (968) «телефон по трубе» (thumtsein), передававший речь по трубе, содержащей резонаторы, на достаточно большие расстояния. Впрочем, еще в древнеегипетских храмах существовали системы скрытых труб для передачи звуков.
К сожалению, туберкулез позволил Ф. Райсу проводить усовершенствование своего изобретения еще только в течение двух лет [36].
В 1871 г. Американец итальянского происхождения Антонио Меуччи (Antonio Meucci: 1808–1889) патентует в U.S.
Patent Office телефонное устройство. Однако в заявке на патент нет упоминания об электромагнитной передаче (transmission) звуков [37]1.
А вот в заявке на патент родившегося в Эдинбурге (Шотландия) Александра Белла (Alexander Graham Bell: 1847– 1922), поданной в феврале 1876 г. в тот же американский офис, это упоминание Филипп Райс уже есть [27]. Выданный А. Беллу патент датируется 7 марта 1876 г.
Двумя часами позже, чем А. Белл, подал заявку на патент Илайша Грей (Elisha Gray: 1835–1901) [38]3. Заявка И. Грея не была удовлетворена, и он подал жалобу в суд. В 1893 г. Верховный Любопытно, что в 2002 г. Нижняя палата Конгресса США приняла резолюцию № 269, не поддержанную, впрочем, Сенатом, объявлявшую А. Меуччи создателем телефона (Bill Number H. RES. 269 for the 107th Congress).
Александр Белл родился (1847) в семье профессора А. Мелвилла Белла (Alexander Melville Bell), профессионального учителя глухонемых. Неудивительно, что и сам А. Белл стал учителем глухонемых. 1877 г., год основания Bell Telephon Company (BTC), был также годом его женитьбы на бывшей ученице школы для глухонемых Мэбел Хаббард (Mabel Hubbard: 1857–1923). Среди изобретений А. Белла до сих пор широко используются аудиометр (1879), а также миноискатель (1881). Основанная А. Беллом компания BTC внесла большой вклад не только в развитие телефонии, но и в развитие компьютерных технологий (см. [2]). Любопытно, что в 2012 г. группой студентов донецкой компьютерной Академии «ШАГ» были созданы перчатки, преобразующие жест в речь и тем самым позволяющие осуществлять коммуникацию глухонемых с обычными людьми, что реализовало давнюю мечту А. Белла [27, c. 43–52; 38].
И. Грей родился в штате Огайо в 1835 г. По окончании Оберлинского колледжа он стал заниматься экспериментами в области электричества. В 1867 г.
запатентовал телеграфное реле с автоматической регулировкой. Им же был построен буквопечатающий аппарат собственной конструкции [38].
Добавим, что двухполюсный телефонный аппарат, позволивший вести переговоры на расстояниях, больших Александр Белл изобретатель, выпускник (1870) физико-математического факультета Петербургского университета Павел Михайлович Голубицкий (1845–1911) [19, c.
1880 гг. заявляли и американский дантист Махлон Лумис (Mahlon Loomis:
П. М. Голубицкий первый в мире патент на беспроводную связь, и уже упоминавшийся выше Дэвид Хьюз, который получил в 1879 г. радиосигнал на телефонном приемнике, соединенным с микрофоном, в результате действия искры индукционной катушки1.
В 1888 г. выдающийся немецкий физик Генрих Герц (Heinrich Rudolf Hertz: 1857–1894)2 экспериментально подтвердил электромагнитную теорию света великого шотландца Джеймса Максвелла (James Clerk Maxwell:
1831–1879) с помощью двух приборов, названных уже в 90-е гг. 19 века радиопередатчиком и радиоприемником. В качестве радиопередатчика Генрих Герц Г. Герц сконструировал прибор, названный позже вибратором Герца3, а в качестве радиоприемника – простейший резонатор: прямоугольную незамкнутую рамку с латунными шариками на концах и регулируемым искровым промежутком. Кроме подтверждения теории света Максвелла Г. Герц сделал вывод о возможности передачи энергии электрического и магнитного полей без проводов.
В феврале 1880 г. Д. Хьюз продемонстрировал свое изобретение членам Королевского Общества, которые, однако, убедили Д. Хьюза, что речь идет лишь об индукции [33].
Г. Герц родился в семье процветающего еврейского коммерсанта из Гамбурга Густава Фердинанда Герца (1827–1914), принявшего лютеранство. Г. Герц учился вначале в гимназии при университете Гамбурга, а позже в университетах Дрездена, Мюнхена и Берлина, где был учеником Густава Кирхгофа (Gustav Robert Kirchhoff: 1824–1887) и Германа фон Гельмгольца (Hermann Ludwig Ferdinand von Helmholtz: 1821–1894). Последний был его научным руководителем при защите диссертации (1880) на степень доктора философии.
В 1885 г. Г. Герц стал полным профессором университета в Карлсруэ, где и получил экспериментальное доказательство теории света Максвелла. Умер Г. Герц в возрасте 36 лет от заражения крови [40].
В основе вибратора Герца лежит катушка Румкорфа (Heinrich Daniel Ruhmkorff: 1803–1877) – преобразователь постоянного тока низкого напряжения в переменный ток высокого напряжения [41].
В 1890 г. французский изобретатель, физик, инженер, доктор медицины Эдуард Бранли (Edouard Eugene Desire Branly: 1844–1940) создал прибор для регистрации электромагнитных волн, названный им радиокондуктором (позже – когерером)1, и тем нявший в 1891 г. американское гражданство, в ходе публичной лекции в городе Сент-Луис (на реке Миссисипи, штат Миссури) дает описание принципов передачи радиосигнала на большие расстояния, а через 2 года, в 1893 г., патентует радиопередатчик и изобретает мачтовую антенну для передачи радиосигнала на дальние расстояния [43]. Итак, к 1893 г.
радио не только изобретено, но и реально существует.
Когерер (или трубка Бранли) – это стеклянная трубка, наполненная металлическими опилками, которые под воздействием радиосигнала резко меняют свою проводимость.
Никола Тесла родился в 1856 г. в Австро-Венгрии в семье священника сербской православной церкви Милутина Теслы (1819–1879). В 1873 г. закончил Высшее реальное училище в г. Карловац, затем три курса Высшего технического училища в Граце, а также один семестр философского факультета Карлова университета в Праге. С лета 1881 до июля 1884 г. Н. Тесла работал инженером электриком в Австро-Венгрии, Германии и Франции, затем один год в Нью-Йорке в компании Эдисона. Позже в Америке Н. Тесла основал свою компанию, занимавшуюся обустройством уличного освещения. Заработанные деньги тратил на исследования магнитных полей и высоких частот в созданной им лаборатории, просуществовавшей до пожара 1895 г. После 1895 г.
Н. Тесла работал в разных городах Америки, не прекращая разнообразных экспериментов в области ВЧ-токов, вращающихся магнитных полей и теории резонанса. Теоретические работы Н. Теслы, а также сотни (!) патентов сделали его имя широко известным. Не случайно именем Теслы названа единица измерения плотности магнитного потока [43; 44].
Естественен вопрос: «А как же А. С. Попов или Гульельмо Маркони»?
Прежде, чем ответить на этот вопрос, упомянем еще одну дату: августа 1894 г. В этот день на публичной лекции в Музее Естественной Истории Оксфордского университета были продемонстрированы опыты по беспроводному телеграфированию, которые провели профессор физики и математики Университета Ливерпуля Никола Тесла Оливер Лодж (Oliver Joseph Lodge:
1851–1940) и инженер Александр Мирхед (Alexander Muirhead: 1848– 1920).
О. Лодж изобрел собственный «прибор для регистрации приема электромагнитных волн», т. е. радиоприемник, состоявший из трубки Бранли, источника тока, реле и гальванометра [45]1.
Что касается А. С. Попова, то на заседании Русского физико-химического общества 7 мая 1895 г. в ходе лекции «Об отношении металлических порошков к электрическим колебаниям» он продемонстрировал прибор, схожий с прибором О. Лоджа, и воспроизвел В 1898 г. О. Лодж получил патент на принципы настройки на нужную станцию (в 1912 г. он продал этот патент компании Маркони). В том же 1898 г. им был изобретен динамический громкоговоритель. За свои научные достижения в 1902 г. О. Лодж был удостоен рыцарского звания [45].
Если говорить о применении построенного А. С. Поповым радиоприемника в метеорологии, то первым заседании Русского физико-химического общества передает первую в РосА. С. Попов При этом использовался вибратор Герца и приемник собственной конструкции, построенный еще в 1895 г. [47; 48]. Если говорить о Маркони2, то, по его собственным воспоминаниям [49], он начал эксперименты по радиотелеграфии в 1894 г., а уже весной 1895 г. радиосигнал передавался им на 1.5 км. В июне 1896 г. Г. Маркони подает заявку на патент и в июле 1897 г.
Лачинов Дмитрий Александрович (1842–1902) учился в Санкт-Петербургском университете, в Гейдельберге и Тюбингене, занимаясь физикой под руководством Гельмгольца и Кирхгофа. Д. А. Лачинов первый (еще в 1880 г., в первом номере журнала «Электричество») сформулировал условия передачи электроэнергии на большие расстояния. Д. А. Лачинов – автор многих изобретений, например электролитического способа получения и производства кислорода и водорода. Не случайно в 1881 г. за свои изобретения он был удостоен в Париже ордена Почетного Легиона и бронзовой медали [46].
Г. Маркони (Guglielmo Marchese Marconi: 1874–1937) родился в Болонье в семье землевладельца (не маркиза!). Титул маркиза (marchese) был присвоен Г. Маркони королем Италии Эммануилом III (Vittorio Emmanuele III: 1869– 1947; годы правления: 1900–1946) в 1924 г. Г. Маркони учился в Техническом институте в Ливорно, а в 20 лет поступил в Болонский университет. Под влиянием своего учителя, профессора физики А. Риги, он заинтересовался проблемой передачи электромагнитных волн. В 1896 г. в Великобритании впервые продемонстрировал свой аппарат [50].
получает британский патент. Приемник Маркони фактически повторял приемник А. С. Попова, но уже изначально подключенный к телеграфному аппарату. Передатчиком у Г. Маркони был вибратор Герца, усовершенствованный учителем Г. Маркони профессором Аугусто Риги (Augusto Righi: 1850–1921)1.
При этом передатчик был соединен с ключом Морзе. Безусловной за- Д. А. Лачинов слугой Маркони является создание в июле 1897 г. акционерного общества «Marconi & C0», основной задачей которого ставилось развитие радиотехники, и для работы в котором им было приглашено много видных ученых и инженеров. Итогом работы этой компании была трансатлантическая радиосвязь, установленная в 1901–1902 гг.
А. Риги в 1894 г. разработал новый тип генератора электромагнитных волн, а именно сферический осциллятор сантиметровых волн. На основании экспериментов с этим генератором в Институте физики Болонского университета А. Риги показал, что радиоволны отличаются от световых волн только длиной волны [32; 48]. C 1896 г. А. Риги – иностранный член Петербургской Академии Наук.
В 1909 г. Нобелевский комитет присудил Г. Маркони и K. Брауну1 Нобелевскую премию по физике «в знак признания их заслуг в развитии беспроволочной телеграфии», но вовсе не за открытие радио, как часто пишут в разных привело к судебному процессу с Н. Теслой, который закончился в 1943 г. решением Верховного суда США, признавшим приоритет Н. Теслы в открыКарл Браун Поскольку Нобелевская премия присваивается только живущим (и поэтому А. С. Попов в 1909 г. ее получить уже не мог), а заслуги Н. Теслы, Э. Бранли, О. Лоджа или бенгальца сэра Джагадиш Чандра Боше2 (Jgodish Chndro Boshu: 1858–1937) в развитии беспроволочной телеграфии были никак не меньше заслуг К. Брауна, то решение Нобелевского комитета вызвало у многих ученых удивление.
Карл Фердинанд Браун (Karl Ferdinand Braun: 1850–1918) усовершенствовал передатчик Маркони, сделав возможной выборку частоты за счет включения конденсатора в контур, содержащий разрядник. Им же были изобретены «трубки Брауна» (1897), называемые катодными трубками. Браун учился в университетах Марбурга и Берлина. С 1895 г. – директор Института физики в Страсбурге. Под его руководством защитил докторскую диссертацию будущий советский академик-физик Леонид Исаакович Мандельштам (1879–1944) [51].
Сэр Джагадиш Чандра Боше (Босе) провел в ноябре 1894 г. в ратуше Калькутты публичную демонстрацию опытов по беспроводной передаче сигнала в миллиметровом диапазоне. При этом вместо «трубки Бранли» Д. Ч. Боше использовал придуманный им ртутный когерер, не требовавший встряхивания, о чем было сообщено в журнале «Электрик» (т. 36, декабрь 1895 г.). Д. Ч.
Боше был первым, кто использовал полупроводниковые переходы для детектирования радиосигналов. В 1904 г. он первым из индусов получил патент в США [52; 53].
Хотя К. Браун бесспорно заслуживал Нобелевской премии, например, за создание катодно-лучевой трубки (CRT) (или, как теперь принято говорить, электронно-лучевой трубки ЭЛТ). Впрочем, и в будущем подобное случится не один раз.
Заканчивая введение к главе VII, заметим, что для развития компьютерных сетей важную роль сыграло появление Джагадиш Чандра мониторов, связанное с развитием CRT- Боше технологий, открытых К. Брауном, или, более общо, визуализация передаваемой информации. Но подробнее это будет обсуждено в § 27 следующей главы.
§ 25. Локальные компьютерные сети Локальными сетями (local networks) ныне называют компьютерные сети, размещающиеся либо в одном здании, либо в одной организации [54, c. 35], администрируемые с помощью маршрутизации сообщений и содержащие в качестве узлов не только компьютеры, но и маршрутизаторы, коммутаторы, а также точки беспроводного доступа, модемы, сетевые адаптеры, беспроводные маршрутизаторы. Кроме того, в качестве узлов ориентированной сети могут использоваться конвертеры среды, усилители сигнала и специальные антенны.
Локальная сеть одного предприятия называется сетью предприятия (enterprise networks).
Локальные сети бывают как проводные, так и беспроводные.
Особым случаем локальной сети является персональная сеть, соединяющая компьютер с его периферийными устройствами1.
Большинство сетей организованы в наборы уровней. Между каждой парой смежных уровней находится интерфейс, определяющий набор примитивных операций, предоставляемых нижним уровнем верхнему.
Напомним, что связи в компьютерных сетях делятся на две категории: использующие соединения от узла к узлу (т. е. без проблемы очередности передаваемой информации) и широковещательные каналы (т. е. каналы с выбором очередности передачи информации, будь то пользователь или компьютер)2.
Локальные сети, как правило, являются широковещательными каналами. Протоколы, использующиеся при определении очередности передачи информации, принадлежат к подуровню канального уровня, называемому MAC (Medium Access Control) – управление доступа к среде.
Создателем чистого MAC является профессор университета на Гавайях Норман Абрамсон (Norman Abramson: 1932)3, разработавший к концу 60-х гг. систему ALOHA4.
Подробнее о персональной сети мы поговорим в следующей главе.
Широковещательные каналы часто называют каналами с множественным доступом (multi-access channels) или каналами с произвольным доступом (random access channels) [54].
Н. Абрамсон родился в Бостоне в 1932 г. Степень бакалавра по физике получена им в 1953 г. в Гарварде, степень магистра физики – в 1955 г. в Калифорнийском университете в Лос-Анджелесе (UCLA), а степень Ph. D. инженера-электрика – в 1958 г. в Стэнфордском университете. В 1968–1994 гг. был профессором Университета на Гавайях одновременно двух специальностей – инженерной электротехники и компьютерных наук и, кроме того, директором Aloha System [55].
N. Abramson.The aloha system – another alternative for computer communication // In Proc. 1970 Fall Joint Computer Conference. – AFIPS Press, 1970. – P. 281–285.
Добавим, что чистая система ALOHA отличается от дискретной системы ALOHA тем, что время в ней считается непрерывным (т. е. кадры передаются в произвольное время), а в дискретной версии время делится на дискретные интервалы, в которые и должны умещаться все кадры.
Создателем дискретной системы ALOHA является Ларри Робертс (Lawrence Gilman Roberts: 1937) (подробнее о Л. Робертсе еще будет речь дальше, когда будем говорить о создании ARPANET [56]).