Александр Петрович Соколов, в дальнейшем Саша С., поскольку только в Протвино я знал 4-х с такими координатами – человек с уникальным образованием и компетенциями. Родом из Инсара – мой земляк. Закончил в Пензе велосипедный техникум, потом заочно МИРЭА, защитил кандидатскую, был техником, инженером, системным программистом, потом системным инженером (уникальная компетенция на стыке ПО и «железа»), начальником лаборатории, созданной для автоматизации работ по созданию нового ускорителя. Могу про него (и буду) в дальнейшем много говорить, сейчас вернусь к Oracle. В Союзе была группа пользователей DEC (DECus), куда входили счастливые владельцы компьютеров, произведенных этой компанией. Компьютеры, правда, были приобретены левым образом, а системным ПО члены этой группы и обменивались. Первый Oracle 4-ой версия для VAX VMS пришел в ИФВЭ из ВНИИСИ (Безруков, Викторов, Голосов). Исходный текст был написан на С, попытки ввести русские буквы воспринимались как команда – это явилось основным поводом русификации.
Саша С. подошел к этому процессу технологически правильно – на дистрибутиве имелись ассемблерные библиотеки с программами Oracle, которые он идентифицировал и исправил. Это привело к тому, что Oracle стал работать с русскими буквами не только на уровне данных, но и на уровне системных объектов.
Затем специалистами отдела АСУ была сделана аналогичная русификация Oracle для СМ-4 (PDP-11) – древняя версия 2.1. Конечно эти версии были скорее реляционными игрушками, хотя под ними были написаны относительно промышленные приложения.
В начале 90-х годов начались полуофициальные отношения с корпорацией Oracle (представительство в Москве было открыто в мае 1994-го, были подписаны дистрибьюторские соглашения с ЛВС, ФОРС и РДТЕХ). Мы получили официальную версию Oracle 5.1В под MS-DOS, которая, увы, обладала теми же недостатками по отношению к русскому языку, т.е. не работала с ним даже на уровне данных.
Группой специалистов, которая впоследствии почти полностью вошла в РДТЕХ, была сделана русификация вышеупомянутой версии – титанический труд, о котором следует рассказать особо.
Во-первых, программы MS-DOS работали в то время только в области оперативной памяти до 640 Кбайтов, даже если на вашем компьютере имелось больше (1 мегабайт) – компания MICROSOFT еще не успела написать драйвер расширенной памяти. Поэтому Oracle для работы своих «больших» программ пришлось написать свой драйвер. Дистрибутив был в виде исполнительных модулей, поэтому пришлось использовать дизассемблер, однако стандартные [дизассемблеры] не могли работать с большими программами (см. комментарии выше) и потому тоже пришлось писать дизассемблер самостоятельно. Уфф!, успокою читателей, MS-DOS переписывать не понадобилось.
Дальше мы идентифицировали фрагменты, работающие со злополучным 8-ым битом – вот чем отличается великий и могучий! (всего получилось не меньше сотни), – переписали их и вставили обратно в исполнительные модули.
На этом я закончу душераздирающую историю о технических трудностях, поверьте, их было много, и мы единодушно согласились, что проще было бы написать свой Oracle.
Во всех случаях русификации был подготовлен и отлажен полный комплект документации, отработана технология перевода и подготовки оригинал-макетов, создана одна из базовых технологий будущей компании РДТЕХ – публикации баз данных. Вообще, мы вместо того, чтобы просто строить дома, создавали технологии их строительства.
Русский Oracle успешно распространялся на российском рынке (в стандартном дистрибутиве появилась уже поддержка национальных языков и кодировок, но «наш» позволял называть по-русски и системные объекты – таблицы, столбцы и все остальное).
Закончу эту главу нашей с Oracle истории в России смешным эпизодом – в одном из российских компьютерных изданий появилась статья: «Прощай Oracle под MS-DOS!» Автор с грустью вспоминал, как лихо шествовал русский Oracle под MS-DOS, и как жалко, что MICROSOFT закрыл эту ОС, но про нас никто даже не вспомнил. Мне стало обидно, и я написал в эту газету язвительную заметку о том, что, если кто-то с гордостью говорит о втором законе Ньютона, но автора не упоминает, подразумевается, что сам автор статьи его и придумал. Не опубликовали, увы.