Выдающиеся люди в истории информатики. Ада Лавлейс.




Введение.

 

Важный этап развития вычислительной техники приходится на XIX век. Это был век выдающихся изобретений. Чтобы создать такие машины, которые решали бы задачи быстрее и проще, чем это делают люди, в ход были пущены старые идеи и новые теории. Двадцатые годы XIX века - как раз тот период, когда Чарльз Бэббидж вел разработки Разностной Машины (Differnce Engine), которая строилась на деньги Королевского астрономического общества. Машина предназначалась главным образом для расчетов астронавигационных таблиц, а возможности ее ограничивались операциями сложения. Впрочем, Бэббидж, передав свои материалы инженерам и через некоторое время полностью рассорившись с их главой Джозефом Клементом, охладел к Разностной Машине. Его основной целью стало более свершенное устройство - Аналитическая Машина (Analytical Engine). В отличие от Разностной Машины, следующий агрегат умел работать с логическими переменными и осуществлять условные переходы.
По своей архитектуре эта машина была механическим прототипом современного компьютера. Она состояла из двух частей: "мельницы" (процессора в современной терминологии), где выполнялись операции, и "амбара" (он же оперативная память), в котором хранились исходные данные и промежуточные результаты. По задумке Бэббиджа, "амбар" должен был содержать 1000 регистров, каждый из которых представлял собой 50-разрядное число. Внутреннее представление чисел было десятичным. Числа можно было передавать на "мельницу", обрабатывать там и возвращать в тот или иной регистр "амбара".

Управлять Машиной предлагалось с помощью перфокарт. Подобного термина тогда еще не существовало, однако прототип современной карты был хорошо известен и применялся с 1801 года в ткацком станке Жаккарда. Бэббидж предлагал использовать перфокарты, как для управляющих инструкций, так и для указания адресов чисел в памяти ("амбаре"). Константы должны были заноситься в память вручную. Дополнительный набор перфокарт мог быть использован для задания начальных условий. Устройство ввода предусматривало тасование колоды перфокарт вперед-назад на определенное число позиций. Подобная механика была необходима при выполнении условных переходов в программе.

К сожалению, в те времена технология была развита значительно хуже, чем аналитические средства. Бэббидж не был в состоянии сделать и собрать многие высокоточные детали, которые требовались для его машины. Тем не менее, его изобретение имело большое значение: многие последующие изобретатели использовали идеи придуманных им устройств, подобно тому, как он воспользовался идеей Жаккара.

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

Наслышанная о создаваемой Разностной Машине, она с группой студентов посетила лабораторию Чарльза Бэббиджа. С этого визита Ада "заболела" компьютерами. Сам изобретатель отметил незаурядную девушку, которая не только понимала, как работает машина, но и была в состоянии по достоинству оценить перспективы ее развития.

После того, как итальянский инженер Л.Менабри составил подробный инструктаж по конструкции Аналитической Машины, Ада перевела его на английский язык. Она же нашла некоторые ошибки в рассуждениях Бэббиджа, проработала комментарии к тексту. Ей принадлежит изобретение циклов и подпрограмм - Ада сообразила, что при использовании условных переходов можно будет использовать одну и ту же подборку перфокарт для повторяющихся последовательностей команд.

Проработке Аналитической Машины Ада уделяла очень много времени, называя это устройство "своим первенцем" (всего у Ады было трое детей). С мужем ей в этом отношении очень повезло - он ценил и поощрял ее занятия математикой. Ада приложила немало усилий, чтобы воплотить изобретение Бэббиджа в реальном аппарате. Нехватка денег преследовала его постоянно. Астрономическое общество в свое время предоставило ему грант в 1,5 тысячи фунтов на построение Разностной Машины, но в действительности требовалась сумма раз в 50 большая. Не помогли ни дополнительные правительственные субсидии, ни стотысячное наследство. Аналитическая Машина требовала еще больших расходов. Чтобы раздобыть денег на закупку необходимых материалов (стали и латуни, потребность в которых измерялась тоннами), а также изготовление деталей, они решили сыграть на скачках. Методика игры была их собственной и основывалась на законах вероятности. Первое время казалось, что новая система работает. Но дело кончилось плохо, и, чтобы заплатить долги, были проданы фамильные драгоценности семейства Лавлейс. Однако Аналитическая Машина была в XIX веке технологически невыполнима, и Ада Лавлейс умерла, так и не попробовав запустить свои программы.

Но на этом не закончилась история с Аналитическими машинами, и первым разработчиком такой машины посчастливилось стать тоже женщине. Грэйс Хоппер (Grace Hopper) родилась в 1906 году - на 91 год позже Ады.Mark-1 - воплощение Аналитической Машины. Итак, младший лейтенант ВМС США Грэйс Хоппер была направлена в Гарвардский университет, где к тому времени был установлен компьютер Mark-1. Учитывая интерес Грэйс к двум смежным областям - геометрии и механике,- она была идеальным кандидатом на работу с компьютерами типа Mark-1, когда любой программист (такого термина тогда еще не существовало, а должность Грэйс называлась словом "кодировщик") одновременно блестяще разбирался в механическом содержимом громоздкой машины. Но если Аде Лавлейс принадлежит право интеллектуальной собственности на циклы, то Грэйс и ее коллеги в 1944 году использовали эти принципы на практике. С точки зрения Грэйс, подпрограммами были сравнительно универсальные последовательности команд, которые можно было объединять в более крупные блоки. Свои подпрограммы программисты хранили в блокнотах и при необходимости переписывали их друг у друга. При этом им приходилось каждый раз заново рассчитывать адреса переменных. Учитывая, что текст записывался в кодах, а складывать программисты, как правило, не умеют, можно себе представить, как часто при переписывании возникали ошибки. Да и читать программы, даже снабженные комментариями, оказывалось достаточно сложно.

Екатерина Логвиновна Ющенко (в девичестве Рвачева) родилась 8 декабря 1919 года - через столетие после леди Лавлейс.В ее жизни есть моменты, напоминающие судьбу великой англичанки, но еще больше того, что присуще только советским людям. В юности она тоже была лишена близости отца, но не потому, что он оставил семью, а из-за того, что его в 1937 году арестовали и осудили на 10 лет лишения свободы. Была арестована и мать, пытавшаяся доказать его невиновность.

Как и леди Лавлейс, судьба подарила ей возможность написать первые программы для первой (на этот раз на континенте Европы) ЭВМ, созданной около ста лет спустя после проекта Беббиджа в НАН Украины под руководством другого гения - Сергея Алексеевича Лебедева. Они очень похожи на те, что когда-то составила леди Лавлейс.

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

На этом, пожалуй, и кончается некоторое сходство в их судьбах.

Екатерина Логвиновна стала член-корреспондентом НАН Украины, заслуженным деятелем науки, лауреатом премии Совета министров СССР, была дважды удостоена Государственной премии Украины, премии имени В.М.Глушкова.

За сорок лет работы в институте ею создана широко известная в Украине, бывшем Советском Союзе и за рубежом научная школа теоретического программирования. В 2001-м году ее не стало...

Но не только в научном плане велика роль женщин в развитии вычислительной техники. Со временем образуется огромное количество различных фирм по разработке и продаже программного и аппаратного обеспечения. Следовательно, разыгрываются человеческие трагедии капиталистического века: нарастает конфликт между продавцом и изобретателем. И создаются фирмы энтузиастами, ладятся в гаражах и на коленках чудеса современной техники и математики, живут эти фирмы какое-то время, сформированные из основателя-отца (матери) - гения и друзей-работников. Пример такой фирмы - компания Cisco. Основала эту компанию в декабре 1984 года семья: муж Len Bosack и жена Sandy Lerner. Сэнди Лернер, — является главным действующим лицом в истории создания Cisco. Не по научному вкладу, а по роли в ее истории, потому что недаром говорят, что за каждым гениальным мужчиной стоит не менее гениальная женщина, которая всю жизнь «подталкивает» его на эти гениальности. Чтобы основать компанию San Francisco Systems, от которой тут же оставили для краткости cisco (так и писалось с маленькой буквы до 1995 года), супруги заложили свой дом. Зарплату сотрудникам платили с собственных кредитных карточек. Когда деньги кончились, в 1986 году Сэнди пошла работать системным администратором в компанию Schlumberger, продолжая отдавать cisco все свободное время. Супруги проектировали оборудование в спальне, собирали его в гостиной и тестировали в столовой. Сэнди Лернер настолько стремилась сделать покупателей счастливыми, что сама учредила группу поддержки пользователей Cisco, не дожидаясь ее спонтанного зарождения.
Основные вехи карьеры Сэнди Лернер:

2000–2002
- Председатель компании BGLI;
- Председатель и основатель Центра изучения ранней английской
женской прозы и библиотеки, Chawton, Hampshire;
- Основатель и директор корпорации XKL Systems;
- Президент и основатель благотворительного фонда Bosack & Kruger;
- Основатель и компаньон ветеринарного госпиталя и реанимационного
центра для травмированных животных (CATCCH);
- Рекрутинговая фирма в Вирджинии;
- Основатель и главный инженер компании Sono Luminus.

1995–2000
- Основатель и президент компании Urban Decay LLC.

1984–1990
- Основатель Сisco Systems, Inc., занимала различные должности.

 

Глава 1.

Выдающиеся люди в истории информатики. Ада Лавлейс.

Вычислительная техника имеет давнюю историю. На протяжении многих лет проводились специальные исследования по истории вычислительной техники. Но с начала 60-х годов XX века произошёл перелом, когда применение ЭВМ во многом изменило наш мир. ЭВМ начинают применяться в экономике, в науке, в управлении, в здравоохранении и обучении. Распространёнными становятся профессии, связанные с ЭВМ. В результате интерес к ЭВМ, в том числе в историко-техническом плане, резко повышается и продолжает устойчиво расти. Конкретно это выразилось в росте числа публикаций по истории вычислительной техники, всё большем внимании к личности людей, стоявших у истоков важнейших направлений развития вычислительной техники, в первую очередь к Чарльзу Бебиджу и Аде Лавлейс. Эти люди ещё в 40-е годы XIX века имели вполне современные взгляды на математические возможности и научное применение вычислительных машин.

В истории вычислительной техники имена Чарльза Беббиджа и Ады Лавлейс стоят рядом. Автор единственной научной работы об аналитической машине Бебиджа - Ада Лавлейс навсегда вписала своё имя в историю науки. Составленные 28-летней графиней Августой Адой Лавлейс примечания к статье итальянского инженера Л.Ф. Менабреа дают основания считать её первой программисткой, чьё имя навсегда останется в истории вычислительной математики и вычислительной техники. По существу, она заложила научные основы программирования на вычислительных машинах за столетие до того, как стала развиваться эта научная дисциплина.

Августа Ада Лавлейс родилась 10 декабря 1815 года. Она была единственной дочерью великого английского поэта Джорджа Гордона Байрона (1792-1824) и Аннабеллы Байрон, урождённой Милбэнк (1792-1860). Ада наследовала у матери любовь к математике и многие черты отца, в том числе близкий по эмоциональному складу характер. В 1816 году Байрон навсегда покидает Великобританию. Он никогда больше не видел дочери, но часто вспоминал о ней, посвятил ей трогательные и нежные строки в поэме "Чайльд Гарольд".

Ада получила прекрасное воспитание. Важное место в нём занимало изучение математики - в немалой степени под влиянием матери. Беббидж, который был знаком с леди Байрон, поддерживал увлечение юной Ады математикой.

К 1934 году относится знакомство Ады с разностной машиной Беббиджа. В своих воспоминаниях де Морган так описала один из первых визитов Ады к Бебиджу: "Пока часть гостей в изумлении глядело на это удивительное устройство с таким чувством, как, говорят, дикари первый раз видят зеркальце или слышат выстрел из ружья, мисс Байрон, совсем ещё юная, смогла понять работу машины и оценила большое достоинство изобретения".

В 1835 году Ада Байрон в возрасте 19 лет вышла замуж за лорда Кинга, который впоследствии стал графом Лавлейс. Замужество Ады не отдалило её от Беббиджа; их отношения стали ещё более сердечными. В начале знакомства Беббиджа привлекли математические способности девушки. В дальнейшем Беббидж нашёл в ней человека, который поддерживал все его смелые начинания. Ада была почти ровесницей его рано умершей единственной дочери. Всё это привело к тёплому и искреннему отношению к Аде на долгие годы.

Ада была маленького роста, и Беббидж, упоминая о ней, часто называл её феей. Однажды редактор журнала "Экземенейтор" описал её следующим образом: "Она была удивительна, и её гений (а она обладала гениальностью) был не поэтический, а метафизический и математический, её ум находился в постоянном движении, которое соединялось с большой требовательностью. Наряду с такими мужскими качествами, как твёрдость и решительность, леди Лавлейс были присущи деликатность и утонченность наиболее изысканного женского характера. Её манеры, вкусы, образование… были женскими в хорошем смысле этого слова, и поверхностный наблюдатель никогда не смог бы предположить силу и знания, которые лежали скрытыми под женской привлекательностью".

В октябре 1842 года была опубликована статья Менабреа, и Ада занялась её переводом. План и структуру примечаний они разрабатывали совместно с Беббиджем. Закончив очередное примечание, Лавлейс отсылала его Беббиджу, который редактировал его, делал различные замечания и возвращал. Работа была передана в типографию 6 июля 1843 года. Начиная с 10 июля, стала поступать корректура, которую также смотрели и исправляли совместно. Когда возникали трудности, они встречались и разрешали их в личной беседе.

Центральным моментом работы Лавлейс было составление программы вычислений чисел Бернулли. Интересно, что мысль о составлении такой программы пришла Лавлейс уже после получения корректуры. 10 июля она пишет Беббиджу: "Я хочу вставить в одно из моих примечаний кое-что о числах Бернулли в качестве примера того, как неявная функция может быть вычислена машиной без того, чтобы предварительно быть разрешённой с помощью головы и рук человека. Пришлите мне необходимые данные и формулы".

Беббидж прислал не только необходимые данные, но и составил последовательность действий (алгоритм), лежащую в основе программы. Однако при этом он допустил ошибку, обнаруженную Адой. Об окончании составлении программы она известила Беббиджа 19 июля. По мнению Беббиджа, программа вычисления чисел Бернулли была достойна отдельной статьи или брошюры.

28 июля Лавлейс восторженно пишет Бебиджу: "Я счастлива узнать, что мои примечания требуют фактически мало исправлений. Сказать честно, они удивили меня… хотя речь идёт обо мне самой. Они действительно написаны прекрасным стилем, который превосходит стиль самого очерка. Я заставила рассмеяться графа Л., когда невозмутимым тоном заметила: "Я очень довольна своим первенцем. Это необычайно прекрасный ребёнок, и он вырастет в человека первоклассной величины и силы".

Менабреа был удивлён, обнаружив свою статью не только хорошо переведённой, но и снабжённой обширными и глубокими комментариями и замечаниями. Статья была переведена профессиональным математиком (в этом он не сомневался), а каждое замечание было подписано инициалами AAL (Augusta Ada Lovelace), которые он не смог связать ни с одним известным ему лицом. Каково же было восхищение Менабреа, когда после длительных выяснений он узнал, что за этими инициалами кроется 27-летняя леди Лавлейс.

После окончания работы над статьёй Менабреа Ада Лавлейс в письме от 11 августа задаёт Беббиджу вопрос, оставит ли он "интеллект и способности "леди-феи" на службе своим великим целям?". Ответ Бебиджа был, естественно, положительным. В этом же письме Лавлейс предлагает консультировать всех желающих по вопросам, связанным с вычислительными машинами, чтобы Беббидж не отвлекался от основной работы.

Начиная с 1844 года, Ада Лавлейс всё больше увлекается игрой на скачках, тем более что сама прекрасно ездила и любила лошадей. На скачках играли и Беббидж и Вильям Лавлейс, причём Беббидж, интересовавшийся прикладными вопросами теории вероятностей, рассматривал с этих позиций и игру на скачках и искал оптимальную систему игры. Ада израсходовала на скачках почти все принадлежащие ей средства и к 1848 году сделала большие долги. Потом её матери, леди Байрон, пришлось погасить эти долги.

В начале 50-х годов появились первые признаки болезни, унесшей жизнь Ады Лавлейс. Несмотря на принимаемые меры, болезнь, конечно, прогрессировала и сопровождалась тяжёлыми мучениями. 27 ноября 1852 года Ада Лавлейс скончалась, не достигнув 37 лет. Она была погребена рядом с отцом в фамильном склепе Байронов. Уже в настоящее время в память о ней назван разработанный в 1980 году крупнейшими специалистами по программированию язык АДА - один из наиболее мощных и универсальных алгоритмических языков.

Следует отметить, что представления Лавлейс о принципиальных возможностях аналитической машины были вполне обоснованы. Круг вопросов, рассмотренных в её "Примечаниях", весьма широк. Хотя Беббидж написал свыше 70 книг и статей по различным вопросам, а также составил большое число неопубликованных описаний вычислительной машины, полного и доступного описания и, главное, анализа возможностей машины для решения различных задач он так и не сделал. Беббидж говорил, что слишком занят разработкой машины, чтобы уделять время её описанию. Работа Лавлейс не только заполнила этот пробел, но и содержала глубокий анализ особенностей аналитической машины. Прекрасный популяризатор идей Беббиджа леди Лавлейс настолько хорошо понимала его работу, что описала принципы действия аналитической машины с чёткостью, которой не ожидал сам Беббидж. Он неоднократно повторял, что представления Лавлейс о его работе были яснее, чем его собственные.

Усвоив идеи Беббиджа и обладая глубокими познаниями в математике, Ада Лавлейс с большой энергией проповедует эти идеи, стремясь сделать их широко известными и понятными, стараясь заинтересовать учёных работами Беббиджа. Наряду с этим она разрабатывает некоторые чертежи для машины Беббиджа и исследует вопросы, связанные с применением в машине двоичной системы счисления. Лавлейс высказала ряд идей, получивших широкое применение только в настоящее время. Основной итог её работы - создание основ программирования на универсальных цифровых вычислительных машинах.

 

 

Глава 2.

Деяния Грэйс Хоппер.

Грэйс Хоппер (Grace Hopper) родилась в 1906 году - на 91 год позже Ады. Ее карьера, хотя и нетипична для женщины, на первых порах не представляла ничего особенного - Вессарский колледж, степень доктора математики в Йельском университете в 28 лет, профессорская должность в Вассаре. Таланты умной девочки, казалось бы, раскрылись, жизнь шла своим чередом, и ничто не предвещало бурных изменений.
Как и в случае с компанией Helwett Packard, для полной реализации потенциала Грэйс поторебоввалассь экстраоринарная ситуация. Ее создала Вторая мировая война. Грэйс, уже тридцатисемилетняя дама-профессор, вступила в женскую добровольную организацию содействия ВМС США. Для того, чтобы образом изменить свою жизнь, человек должен иметь авантюристическую жилку, и Грэйс обладала ей в полной мере. Однажды она так выразила свой основной жизненный принцип: "Если у вас возникла интересная идея, валяйте, делайте. Извиниться потом легче, чем заранее получить разрешение".

Mark-1 - воплощение Аналитической Машины

Итак, младший лейтенант Грэйс Хоппер была направлена в Гарвардский университет, где к тому времени был установлен компьютер Mark-1.
В создании Mark-1 приняли участие силы - ВМС США, заказавшие универсальную счетную машину для расчетов баллистических таблиц: фирма IBM, президент которой Томас Уотсон в патриотическом порыве финансировал военную разработку и предоставил производственные мощности для создания необходимых деталей; и математик Говард Эйкен. А в основу Mark-1 было положено оставленное Бэббиджем описание его Аналитической Машины.
Полученное "чудовище" достигало 17 м в длину и 2,5 м в высоту. Провода, которыми соединялись его 750 тыс. деталей имели суммарную длину более 800 км. Программа вводилась с перфоленты, а данные с перфокарт (не зря же, в конце концов, перфораторы составляли львиную долю продукции IBM). Компьютер имел электромеханическое реле и работал по тем временам очень быстро - 0,3 с у него уходило на сложение и вычитание двух чисел и 3 с на умножение.
Учитывая интерес Грэйс к двум смежным областям - геометрии и механике,- она была идеальным кандидатом на работу с компьютерами типа Mark-1, когда любой программист (такого термина тогда еще не существовало, а должность Грэйс называлась словом "кодировщик") одновременно блестяще разбирался в механическом содержимом громоздкой машины. "Интеллектуальным" обслуживанием машины, помимо профессора и младшего лейтенанта Грэйс Хоппер, занимались математики-мичманы Роберт Кэмпбел и Ричард Блок.
Существует легенда, что Грэйс принадлежит термин debugging (для программы - отладка; а буквально - изничтожение насекомых). История такова: однажды Mark-1 сломался из-за того, что в одном из реле покончил жизнь самоубийством крохотный мотылек (bug). Останки бедняги были аккуратно извлечены. Тогда-то якобы Грэйс впервые и употребила термин debugging, имея в виду ту самую работу, которой в данный момент была занята группа программистов, - очистку компьютера от насекомых. На самом деле слово bug в английском языке имело двойное значение (и насекомое, и техническая неисправность) задолго до Грэйс, так что мы имеем дело с очередным апокрифом компьютерного общества.
Но если Аде Лавлейс принадлежит право интеллектуальной собственности на циклы, то Грэйс и ее коллеги в 1944 году использовали эти принципы на практике. С точки зрения Грэйс, подпрограммами были сравнительно универсальные последовательности команд, которые можно было объединять в более крупные блоки. Свои подпрограммы программисты хранили в блокнотах и при необходимости переписывали их друг у друга. При этом им приходилось каждый раз заново рассчитывать адреса переменных. Учитывая, что текст записывался в кодах, а складывать программисты, как правило, не умеют, можно себе представить, как часто при переписывании возникали ошибки. Да и читать программы, даже снабженные комментариями, оказывалось достаточно сложно.

От кодов к языку.

Первая попытка облегчить участь программистов была сделана в 1948 году. Алан Тьюринг и Макс Нейман в Манчестере (Англия) вели работы по созданию компьютера, аналогичного американскому и, кстати, получившему то же название - Mark-1. Для него была создана так называемая система "сокращенного кодирования" - первый язык высокого уровня. Изначально задуманные 32 машинные команды - длинной пять байтов каждая - для удобства получали буквенные обозначения. Однако затем длина команд была увеличена до шести байтов, и в результате многие преимущества новой системы были сведены на нет: каждая команда обозначалась уже двумя символами, но для сокращения избыточности второй из них одновременно оказывался началом следующей команды. С помощью телетайпа производилось двоичное кодирование, и создавалась перфолента.
Следующим шагом было "короткое кодирование". У Джона Мочли, работающего над созданием компьютера UNIVAC, возникла идея научить компьютер воспринимать алгебраические уравнения в их традиционном виде. Затем специальная программа-интерпретатор переводила уравнение на язык нулей и единиц. В полной мере реализовать этот замысел не удалось, потому что знаки математических действий по-прежнему приходилось заменять на их численные коды. Интерпретаторы стали первой попыткой сделать компьютер более дружественным, но интерпретирующая программа пожирала и без того скудные ресурсы памяти и замедляла выполнение программ. Да и целесообразность интерпретации введенной с перфокарт программы выглядит, вообще, говоря, сомнительно.
Вот этот "интерпретатор" и навел Грэйс Хоппер (которая работала в фирме Джона Мочли) на мысль, что для общения человека с компьютером есть более приятный способ, чем кодирование. Однако нужно ли было такое "очеловечивание" компьютера? В какой-то момент Грэйс заметила, что программисты постепенно изолируют себя от остального человечества и начинают мыслить в тех же терминах, что и счетные машины. Толчком, как утверждают, послужили собственные проблемы Грэйс при подведении баланса ее банковского счета: по привычке она попыталась произвести сложение и вычитание в восьмеричной системе исчисления, и очень удивилась, когда ее итог не совпал с тем, что получилось у банка.
К 1952 году из "сокращенного кодирования" вырос первый компилятор - язык Autocod, созданный Алексом Гленном.
Хотя программисты, оберегая свое исключительное положение при вычислительной машине, всячески сопротивлялись распространению языков типа Autocod, фирмы-производители, пытавшиеся вывести компьютеры за пределы военных и университетских лабораторий, вкладывали в создание новых языков значительные средства.
Компания Raimington Rand, купившая права на UNIVAC, натолкнулась на нехватку "жрецов в белых халатах", свободно "чирикающих" на двоичном коде, поэтому процесс общения с машиной надо было облегчить и включить в поставку компьютера программное обеспечение. Возникла идея создания библиотеки подпрограмм, из которой программа-компоновщик (компилятор) выбирала бы необходимые блоки и автоматически устанавливала нужную адресацию. В 1951 г. Гhэйс Хоппер было поручено создать такую библиотеку. Несколько лет спустя, когда ею была реализована уже четвертая версия компилятора A (версия A-3), из маркетинговых соображений он был переименован в Math-Matic.
Пятидесятые годы были периодом активной разработки машинно-зависимых языков высокого уровня. В 1953 году вышли в свет два из них - Speedcoding фирмы IBM, который она разумно представила со своим новым компьютером IBM 701, и Vortex, созданный в Массачусетском институте. Vortex был первым языком, в котором символы вводились в их естественном виде. Он, однако, не был коммерческой разработкой и практически не распространился за пределы МТИ.
Основным признаком таких языков была краткость инструкций - пара символов либо цифровой код, так что по-прежнему для работы с машиной нужно было изучать "дельфиний" язык.
Использовать полноценные английские слова догадалась Грэйс Хоппер. Для того, чтобы облегчить компьютеру работу, в качестве базиса было принято, что все инструкции обладают значимыми первым и третьим символом. Остальные символы при анализе игнорировались. Грэйс, видя перспективность этого подхода к языкам программ, действовала на свой страх и риск. Когда в 1956 году компилятор B-0 был готов, ей оставалось извиниться за самоуправство и задним числом убедить начальника в перспективности нового подхода. Для пущей наглядности она преобразовала компилятор в трехъязычный, заставив его понимать инструкции на английском, французском и немецком языках. Этим она положила начало одному порочному направлению в программировании - переводу инструкций языка на программирования на национальные языки (забегая вперед, скажем, что впоследствии появились самые разнообразные версии языка Cobol - вплоть до китайской, где инструкции записывались с помощью иероглифов).
Как бы то ни было, после такой демонстрации цель - убедить начальство, что компьютер может понимать нормальные слова - была достигнута, и B-0, в миру Flow-Matic, был одобрен для коммерческой реализации.

Мама языка Cobol

К концу пятидесятых годов практически для каждой торговой марки, если не для серии, компьютера был создан свой язык высокого уровня. Компания Ramington Rand (к этому времени Sperry Rand) выпускала Flow-Matic; для IBM 704 уже существовал FORTRAN; ВВС США, в пику ВМС, на которые и работала Sperry Rand, создали AIMACO.
В 1959 году представители производителей компьютеров и научного мира провели совещание в Пенсильванском унивеститете (третьем оплоте информатики, после Гарварда и Массачусетса). На повестке дня стояло создание единого по синтаксису, гибкого, универсального языка для разработки бизнес-приложений. Однако если между собой не могли договориться даже отделения военного министерства, чего оставалось ждать от независимых производителей?
Грэйс Хоппер решила подтолкнуть их к заключению соглашения и нашла для такого языка заказчика - Министерство обороны США, с его "зоопарком компьютерной техники" (более 1000 компьютеров, полностью несовместимых между собой), крайне нуждалось в подобном средстве.
Министерство обороны организовало специальную конференцию - Conference on Data System Language (CODASYL), в которой участвовали IBM, Honeywell, General Electric, Sperry Rand и другие - в общем, все, кто расчитывал получить от Пентагона заказ на поставку компьютеров.
Группа программистов во главе с Грэйс достаточно быстро сформулировала основные положения языка COBOL (COmmon Business Oriental Language), основанного на Flow-Matic. Другие компании не пришли в восторг от идеи COBOL'a. IBM, имевшая в запасе FORTRAN и Commercial Translator, стремилась убедить аудиторию, что на создание нового языка нет времени. Honeywell пыталась сделать стандартом свое творение FACT. Но Грэйс не напрасно столько лет имела дело с ВМС США и знала, как убедить военное начальство...
Идея COBOL была проработана к осени 1959 года, а первые трансляторы от RCA и Sperry Rand поступили в продажу к зиме.
Что можно еще сказать о Грэйс Хоппер? В 1966 году, шестидесяти лет, она ушла на пенсию из Вспомогательной службы ВМС США, однако не прошло и года, как была вновь призвана для работы по стандартизации языков программирования. Окончательная отставка Грэйс последовала в 1986 году. В то время она имела чин адмирала ВМС США и была самой старшей среди служащих офицеров.

 

 

Глава 3.

Сэнди Лернер.

 

Сэнди Лернер родилась в Финиксе в 1955 году, в день взятия Бастилии. Ничего революционного, впрочем, в ее детстве не наблюдалось. Родители развелись, когда Сэнди было 4 года; ее отправили жить с тетей и дядей на ранчо в Калифорнию. Видимо, тогда зародилась любовь к животным, особенно лошадям, и нелюбовь к куклам, в которые она никогда не играла. Большую часть времени девочка проводила в одиночестве, много читала. Любимый телесериал — про странное, отчасти потустороннее, отчасти безумное семейство Адамс, до сих пор выделяющийся на фоне того, что обычно показывает американское телевидение.

В 9 лет она вступила в местный 4-Н-клуб (от «Head, Heart, Hands, and Health», нечто вроде скаутского движения с сельскохозяйственным уклоном). «Это был неоценимый опыт, — вспоминает Лернер. — Я научилась выступать перед публикой и формулировать свои мысли». Одновременно начинается ее деловая карьера: Сэнди купила теленка, вырастила, продала, купила еще двух… К моменту поступления в университет ее стадо насчитывало 30 голов.

В подростковом возрасте начинает проявляться повстанческая натура Сэнди. Она отказывалась отдавать честь национальному флагу на школьных линейках, в 13 лет ее арестовала полиция на митинге протеста против Вьетнамской войны. «Я была социалистом с двенадцати лет» — не от каждого миллионера услышишь такое признание. Окончив школу, Сэнди полтора года проработала в банке. «Это был ад, — вспоминала наша героиня. — Президент банка заставлял нас вставать на колени, чтобы проверить длину юбок».

Она спаслась бегством в Калифорнийский университет, где два года изучала сравнительную теорию коммунизма «как настоящий большевик», затем переключилась на прикладную экономику и первый раз села за терминал мэйнфрейма IBM 360. «Это было религиозное переживание». Лернер говорит, что до сих пор не доверяет компьютерам, которые может поднять один человек. В 1977 г. она перевелась в Стэнфорд, сменив специализацию на вычислительную математику, и попала в логово самых отъявленных компьютерных фанатиков во всей Америке. «Я была там единственной девушкой и, похоже, только я принимала ванну». Впрочем, нет, регулярно мылся еще один компьютерщик, Леонард Босак. Он даже умел пользоваться столовым прибором! Их сближают и менее внешние признаки — интеллект и чувство юмора. Сближают настолько, что раскрутившийся со скоростью жесткого диска роман завершается браком еще на студенческой скамье.

Получив дипломы, молодая семья осталась в университете, Босак возглавил вычислительную лабораторию факультета компьютерных наук, Лернер заняла аналогичную должность в Высшей школе бизнеса. В то время вычислительный парк Стэндфордского университета уже насчитывал около 5000 разнокалиберных компьютеров, раскиданных по площади в 35 квадратных километров. Локальные сети подразделений работали на разных протоколах, и их объединение представлялось невероятно трудной задачей. Пока университетское руководство обсуждало пути ее решения и аккумулировало средства, Лен Босак нашел простой до гениального способ.

Для того чтобы понять, что же действительно он сотворил, необходимо принять во внимание исторический фон. Созданная на средства военных экспериментальная сеть ARPANET была родоначальницей Интернет, но кардинально отличалась от последней. ARPANET предполагала соединение между компьютерами — большими «серьезными» машинами — для совместного использования ресурсов. Коммутацией пакетов занимался Interface Message Processor, IMP, отдельный миникомпьютер (маленький и дешевый только на фоне мэйнфреймов). Соответственно проблема совместимости возникала на уровне операционных систем, а не сетевых протоколов, точнее единственного протокола NCP. Концепция маршрутизации возникла также из сугубо военной предпосылки — обеспечить доставку пакетов данных при частичном разрушении заведомо избыточной коммуникационной инфраструктуры. Маршрутизацией занимались те же IMP при помощи протокола внешнего шлюза (Exterior Gateway Protocol, EGP). Аналогичные ARPANET проекты велись и в других странах, так что идея взаимодействия целых сетей возникла закономерно. Такое взаимодействие логично было организовать в немногочисленных точках, обслуживаемых мощными шлюзами — аналогами IMP, и договориться заодно об общем протоколе. Для этой цели как раз подоспел набор протоколов TCP/IP, разрабатываемый изначально для преодоления количественных ограничений NCP — всего одна сеть из 64 машин максимум! Для маршрутизации в такой простой топологии хватало примитивного EGP.

При возникновении ARPANET локальных сетей еще не было, они появились позже и долго развивались совершенно независимым путем. Развитие это привело к настолько сложным структурам, что маршрутизация понадобилась уже и в них. С учетом постоянных, не всегда отслеживаемых изменений в сети, протокол внутреннего шлюза должен быть гораздо более интеллектуальным.

Что же придумал Леонард Босак в 1984 году? Программное обеспечение, на лету перелопачивающее данные из одного протокола в другой и обеспечивающее маршрутизацию. Плюс высокоскоростной узкоспециальный микрокомпьютер под него, оказавшийся в десятки раз деш



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-05-25 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: