Софтпанорама 1994, No.68 (53) *** FOREWORD *** Составитель Н.Н.Безруков =================== ноябрь 1994 (gamma ) ================================= ---------------------------------------- # К О Л О Н К А Р Е Д А К Т О Р А # ---------------------------------------- Уважаемые коллеги ! It is obvious that we will not include things like threads and preemptive multitasking in Windows. By the time we added that, you would have OS/2. - Bill Gates (Очевидно, что мы не будет добавлять подзадачи и вытесняющий планировщик задач в Windows. К тому времени когда мы это сделаем, у Вас уже будет стоять OS/2. - Билл Гейтс) 11 октября была объявлена, а 4 ноября поступила в магазины и к сборщикам ком- пьютеров версия 3.0 операционной системы OS/2 или как ее часто называют WARP - ускоренный OS/2. События складываются так, что видимо ей суждено сы- грать важную роль на рынке коммерческих операционных систем для PC. Ее по- явление совпало с резким повышением мощности персональных компьютеров, точ- нее началом массового выпуска компьютеров с P5/90 (и таким же резким прод- ешевлением старших моделей 486 - моделей c удвоением частоты). Она также ра- ботоспособна на моделях с двумя процессорами (двухпроцессорные P5/90 и P5/100 сейчас становятся популярными прежде всего в качестве серверов и ра- бочих станций). Поэтому я решил ее попробовать и поделится c читателями своим(еще очень ограниченным) опытом и впечатлениями. Т.е. этот номер будет тематическим. В то же время я хочу подчеркнуть, что я не фанатик, считаю любовь к операци- онным системам такой же неуместной как любовь к молотку и клещам и вообще за плюрализм ;-). Я не собираюсь рекомендовать немедленно хватать последнюю версию OS/2 и ставить ее всем вместо DOS/Windows (кстати действительно мож- но и предпоследнюю - тоже очень неплохая версия :-). В реальной жизни очень часто нам не приходится выбирать на какой операционной системе работать. Например если нет хорошего железа, то MS-DOS это тоже ничего. И хороший программист приспосабливает любую систему к себе сглаживая ее недостатки за счет удачного подбора дополнительных утилит, замены некоторых компонент и т.д. Но для того, чтобы видеть куда же нужно идти очень полезно знать о су- ществовании альтернатив. Одной из таких альтернатив является UNIX. Второй на мой взгляд OS/2. И в этом номере я решил воспользоваться выходом версии 3.0 для того чтобы привлечь внимание к этой существенно отличной и от DOS и от UNIX операционной системе. Безусловно LINUX сейчас является оптимальной операционной системой для науки, обучению системному программированию и телекоммуникаций, однако потенциал LINUX на коммерческом рынке существенно ниже из-за невозможности использо- вать огромное количество качественных программ для DOS и Windows 3.11. MS- DOS/Windows 3.x как стандарт де-факто диктуют более высокую степень совмес- тимости c существующим программным обеспечением и для машин класса P5/90 и выше имеется таких два "претендента на престол": OS/2 и Windows NT. Где-то на горизонте маячит Windows 95, однако пока это "воздух". Кроме того первая версия OS никогда не бывает удачной, хотя по части умения перенимать(или покупать), а затем зарабатывать на чужих продуктах и идеях Microsoft чрез- вычайно силен. Однако M$ сейчас проводит чисто монополистическую политику навязывания поль- зователям Windows 95 силой и поскольку (как уже отмечалось выше :), плюра- лизм это хорошо, а монополизм плохо, я в какой-то мере против использования продуктов Microsoft. Похоже Microsoft становится такой же закрытой компани- ей как IBM в начале 70-x или Apple в конце 80-x. И наоборот, IBM по сравне- нию с M$ сейчас является прогрессивной компаний, отстаивающей открытую ар- хитектуру и поддерживающей UNIX. В плане операционных систем M$ вообще ниже всякой критики. Если рассматривать MS-DOS c позиций системного программиро- вания, то в чем-то, где-то, как-то это был возврат к ранним мониторам, т.е. первобытно общинному строю(читай коммунизму :) из эпохи раннего капитализма (UNIX). Это был компромисс, исчерпавший себя еще на AT286. Но нет же, он и сейчас уродует неплохое железо типа 386 и 486 компьютеров. Недаром Билла Гейтса за его способность скармливать массам примитивные вещи (DOS, Basic) и желание монополизировать индустрию производства программного обеспечения американская пресса окрестила "Председатель Билл"(Chairman Bill). Вернемся к OS/2 и зададим принципиальный вопрос: "Так в чем состоит идейная привлекательность OS/2 и почему она рассматривается как одна из наиболее совершенных операционных систем для архитектуры x86?". На мой взгляд это связано с идеей системы виртуальных машин реализованной, правда не так чет- ко как в VM/CMS или появившейся, а затем пропавшей с горизонта VM/386, но все же в определенной степени реализованной в OS/2. Я считал и считаю VM/CMS блестящей по замыслу и реализации операционной системой, намного опередившей свое время. Но поработать на ней нынешнему поколению программи- стов уже не придется. Поэтому чтобы получить хотя бы отдаленное представле- ние о VM можно немного поэкспериментировать с OS/2. OS/2 позволяет создать на компьютере несколько виртуальных DOS машин со своими конфигурационными параметрами и обеспечивает настоящий мультитаскинг этих машин на реальном процессоре. Для коммерческих приложений и особенно игр MS-DOS вполне адек- ватен и вопрос только в том, что одного экземпляра DOS на машине явно мало. Нужна мультизадачность. Это кстати прекрасно понимал автор CP/M и DR/DOS покойный Гарри Килдол(Gary Kildall), который уже давно, лет десять назад создал Concurrent DOS и ввел мультизадачность в версию 7.0 DR DOS, но дове- сти эту версию не успел. Его смерть прошла почти незамеченной в компьютер- ной прессе и индустрии. Все таки как несправедливо, что создатель идеи BIOS и реальный автор MS-DOS(первая версия была по сути клоном CP/M) не получил ни денег ни славы, а талантливый купец Гейтс получил все в избытке. Здесь, конечно, есть вина и IBM. OS/2 обеспечивает эту возможность, позволяя одновременно работать с приложе- ниями для DOS, Windows 3.x и самой OS/2, причем приложения для OS/2 можно рассматривать как приложения для еще одной виртуальной машины, подобной DOS и Windows, только несколько более производительной. К сожалению для того, чтобы экспериментировать необходимо соблюдение трех предусловий. Во-первых любая мультизадачная OC вообще и Warp в частности требует довольно приличного железа. К некоторым особенностям железа (разнотипные SIMM, кри- вая MB) у них аллергия, и в этом смысле и OS/2 и LINUX несколько более ка- призны, чем DOS и Windows. Кстати если возникают проблемы, то при установке рекомендуется отключать режим Turbo, Shadow и т.д. Потом можно все вклю- чить. Правда компьютер, точнее BIOS не должен быть слишком старым. Если в компьютере используются IDE винты, то BIOS должен иметь дату после 01/04/90. Однако, еще раз подчеркну, что требования Warp к железу выглядят на сегодняшний день вполне разумно: любой 386 компьютер (386dx40 совсем не- плох) 8Mb и 40M памяти на винчестере. Для некоторого количества эксперимен- тов с WARP или OS/2 2.11 можно обойтись и 4M памяти, но если речь идет не о BBS или постоянной работы с сетью, то на 4M Windows for Workgroups 3.11 предпочтительнее. В этом смысле оперативная память является наиболее крити- чным ресурсом, однако профессионалы высокого класса могут то, что недоступ- но простым смертным и если убрать весь жир (PM, фонты, ATM и отказаться от HPFS) WARP в текстовом режиме вполне работоспособен на 4M в том смысле, что на нем можно поставить BBS и еще что-то делать самому параллельно или кру- тить две досовские сессии. Без ATM фонтов при недостатке памяти вполне мож- но обойтись и печатать все из Windows или DOS, а для того, чтобы использо- вать PM и HPFS памяти желательно побольше, хотя бы 6 или лучше 8M. Т.е. ес- ли у Вас 4M и вы хотите получить удовольствие, то нужно выложить $150 и до- купить 4M. Впрочем как говорит пословица за удовольствие надо платить :-). Процессор тоже является критическим ресурсом, хотя гораздо менее критичным чем объем оперативной памяти. Желателен любой 486dx2, например AMD 486dx2/66 материнская плата с которым сейчас стоит в США где-то порядка $270. Поскольку DOS и Windows машины виртуальные, то ввод-вывод по опреде- лению медленнее реальных. Однако 386 это достаточно мощный процессор и OS/2 2.11, а тем более Warp неплохо смотрятся даже на 386sx25 и именно на нем я второй раз ставил OS/2. Первый был Dell 486dx2/50-16 и я был удивлен, что OS/2 жила на noname 386sx25-8 вполне нормально. Т.е. даже на 386sx25 Zmodem работал параллельно с ZIP - задача по определению непосильная для Windows 3.xx даже на 486dx2/66-16. Но опять же природу не обманешь и если использо- вать графику, то желателен процессор, имеющий мощность более 100 лошадиных сил. Мне кажется, что платы AMD VL 486dx2/66/256K будут стоить к лету деше- вле $200, т.е. они будут доступны для достаточно широкого круга программис- тов и я надеюсь, что они сыграют в распространении Warp в СНГ ту же роль, которую сыграли платы AMD 386dx40 в распространении у нас Windows. Конечно, для нормальной графики кроме процессора обязательно нужна локальная шина (она достается сейчас нам бесплатно - разницы в цене я не видел и во- обще Запад сейчас переходит на PCI, которая для 486 процессоров медленнее VL. Туда ему и дорога :-). Для 486 VL это наилучшая шина. Желателен пусть даже самый дешевый акселератор (сейчас много отличных акселераторов деше- вле $100). Очень полезен CD-ROM, пусть даже одно скоростной Fillips или Panasonic за $60, поскольку уж больно много дискет в дистрибутиве Warp. Во-вторых, помимо желания необходимо время на установку и освоение. OS/2 это мощная и сложная OS, основанная на очень нетривиальной можно сказать блес- тящей идее виртуальных машин и наивно считать, что ее можно поставить за час и попробовать за день. Т.е. это можно, но результат предсказуем и я ви- дел немало "крутых" пользователей, которые мне говорили "ну что Вы нашли в этой OS/2; мы вот вчера попробовали и убедились, что MS Windows гораздо лучше. Пришлось убить, а то места на диске жалко :-) В наших условиях, если компьютер не brand name, то только на установку может потребоваться пару, а то и более итераций (напомню, что если первая не пошла, можно попробовать вторую с выключенным Turbo, Shadow и т.д.). Диск переразмечать не нужно, но для правильной установке Warp нужно обязательно предварительно удалить ста- рую beta или 2.11. ЭТО ОЧЕНЬ ВАЖНО для правильной установки и может быть причиной фальстартов. К сожалению установка "по-живому", без удаления ста- рой системы(например бета-версии Warp) это самая распространенная и грубая ошибка при инсталляции Warp. Если вы работает не на brand name, то при имеющемся разнообразии железа воз- можны трудности с драйверами, и при установке OS/2 как и установки LINUX желательно знать, какие платы стоят в компьютере. Это прежде всего тип ви- деоплаты и тип SCSI-контроллера, если он есть. Инсталлятор для Warp пожалуй лучший, который я видел, но и он иногда неправильно угадывает особенности железа и может неправильно определить тип видеоплаты и т.д. (кстати по этой причине я не рекомендую экспериментировать с Beta II - в ней возникает го- раздо больше проблем с кривым железом). Os/2 это мощная 32-разрядная опера- ционная система и неизбежно ее инсталляция существенно сложнее установки MS-DOS/Windows где просто ставятся generic drivers и "гуляй Вася". Кроме того в процессе инсталляции Os/2 считывается порядка дюжины дискет, причем некоторые по два раза. Полный набор дискет для Warp (c Bonus Pack) состав- ляет порядка полсотни: Warp CD: OS/2 : Disk 0 - Disk 13 = 14 OS/2 main code Disp : Disk 1 - Disk 4 = 4 Display drivers PMDD : Disk 1 - Disk 3 = 3 Printerdrivers DMPD : Disk 1 - Disk 2 = 2 MultiMedia stuff? Symbols : Disk 1 - Disk 5 = 5 ??? Debug : Disk 1 = 1 debug disk --- Итого 29 Bonus СD: MMedia0 : Disk 1 = 1 MMedia Viewer. More audio/video format support InterNet: Disk 1 - Disk 4 = 4 InterNet Access Kit. Very Nice! C$serve : Disk 1 = 1 Compu$serve access. Works : Disk 1 - Disk 4 = 4 IBM Works. Nice suite of programs P2P : Disk 1 = 1 Person to Person FaxWrks : Disk 1 = 1 FaxWorks HyperAc : Disk 1 = 1 HyperAcces Lite Install : Disk 1 = 1 Installation Disk --- Итого 14 Кроме того при инсталляции используются дискеты дистрибутива Windows и они должны быть в наличии. Кстати для OS2 for Windows 2.11 дискет существенно меньше (по моему 11+5). и если лень вставлять дискеты, то можно попробовать ее :-). Это тоже очень не слабая операционная система и в этом смысле Warp это не версия 3.0, а ско- рее 2.2. В третьих, помимо энтузиазма желателен определенный уровень квалификации для преодоления проблем на начальном этапе и/или доступ к соответствующим кон- ференциям FIDO или RELCOM, чтобы было кому задать вопросы. После установки тоже есть проблемы, хотя знание Windows как правило позволяет их быстро преодолеть. Однако пользователь типа меня т.е. не любящий читать документа- цию вначале какое-то время тычется по меню наугад, как слепой котенок. Я например в 2.1 не сразу нашел как выйти на shut down, чтобы выключить маши- ну (оказывается, если кликнуть правой клавишей на свободном пространстве PM то появляется меню с этом словом. Впрочем, как потом оказалось Ctrl-Alt-Del тоже нормально сливает буфера и кэш). Судя по мне, какое-то минимальное по- нимание приходит где-то через неделю. Так что день на установку и неделя на минимальное освоение это совсем не много. А уже потом можно делать выводы. Но, конечно, в этом забеге многим не добежать ... :-). Помимо идеи виртуальных машин в OS/2 есть еще три "осколка классики" c VM: - основным механизмом передачи информации между процессами в OS/2 являют- ся магистрали (pipes). К сожалению я так и нашел интерфейса PIPES с REXX который делает CMS таким удобным для разработки. Стек реализован, а вот на- бор примитивов и семантика CMS pipelines по-видимому еще нет. - в качестве супершелла используется REXX. Кстати поддержка REXX является лакмусовой бумажкой для определения качества приложений под OS/2. Если REXX не поддерживается например терминальным эмулятором или редактором, то с мо- ей точки зрения это не лучший продукт для OS/2. Все "крутые" приложения под OS/2 имеющие макроязык обязаны поддерживать REXX по крайней мере в качестве альтернативного макроязыка. - в качестве системного редактора используется EPM клон редактора VM/XEDIT - одного из двух классических программируемых редакторов. Однако если в EMACS макроязык построен на базе Lisp, то в XEDIT и его клонах мак- роязыком является REXX. Основное преимущество XEDIT по сравнению с традици- онными редакторами является то, что в режиме "condenced" (если использовать терминологию MultiEdit), т.е. в режиме, когда на экране показываются строки отвечающие заданному условию, доступны все(BCE!!!) команды редактора ! Это уникально важная возможность недоступна любителям MultiEdit и программисты, которые ее освоили редко переходят на другие редакторы. Из моих знакомых Дмитрий Лозинский и Игорь Левитин до сих пор пользуются KEDIT - достаточно качественным клоном XEDIT для DOS и OS/2. Все выше сказанное показывает, что OS/2 наиболее привлекательна для сильных пользователей и для профессиональных программистов которые уже сегодня по- нимают, что MS-DOS/Windows это вчерашний или позавчерашний день. Действи- тельно, если вспомнить историю, то DOS была куплена Microsoft у как некото- рый клон CM/M для 8086. Аналогично Windows это перенос интерфейса Макинтош на PC. Наоборот, Os/2 это как бы подтягивает PC на уровень mainframe, пред- лагая повысить производительность программиста путем создания приложений из готовых компонент, объединенных на уровне REXX. Watcom даже выпустил для этой цели VX-REXX, который позволяет создавать приложения быстрее, чем VB. Кстати современным версиям UNIX тоже есть что позаимствовать в VM: концепция виртуальных машин в UNIX отсутствует, как впрочем и концепция супершел- ла(это мой собственный термин) типа REXX. Вообще утилиты на UNIX очень раз- ношерстные. Даже на уровне назначения клавиш разработчики четко придержива- ются принципа "анархия - мать порядка". Я что-то не видел двух редакторов использующих близкие макроязыки, не говоря уже о диалекте C-shell или bash в качестве макроязыка. Т.е. кирпич есть, а раствор йок - засох :-). Впрочем в рамках GNU работа по созданию супершелла будет скоро начата. Базой выбран Scheme (диалект LISP). Конечно отсутствие супершелла не умаляет привлека- тельности LINUX - он бесплатен, более открыт (есть доступ к исходным текс- там) и как клон UNIX лучше приспособлен для работы с Internet. Все таки как ни крути OS/2 это коммерческая система за которую надо платить денежки и программное обеспечение к которой недешево (и, кстати, дороже, чем для Windows). Но как некоторое подобие VM OS/2 дает несколько отличный и не ме- нее интересный подход к тому какой должна быть современная операционная си- стема. Я хочу еще раз подчеркнуть, что идея состоит в там, чтобы предоста- вить пользователю столько виртуальных машин для работы с приложениями под MS-DOS и MS Windows 3.x, сколько он хочет. Плюс некоторый набор цементирую- щих все это компонент в виде pipes и REXX. Т.е. это шаг к операционной сис- теме хамелеону, которая подстраивается под API запускаемого приложения. Этот очень интересный подход к построению операционных систем IBM обещает раз- вить в Taligent. OS/2 блестяще решает сложную проблему эмуляции DOS и только за это можно про- стить существующие ошибки и недостатки реализации (они безусловно есть), например длительное время загрузки(три минуты на моей 486dx2/50), более ме- дленную работу некоторых приложений под Windows, особенно обидно, что нет VM pipeline (это существенно обедняет возможности REXX, но в качестве сур- рогата можно использовать существующие pipe + GNU AWK) и то, что пока нет встроенной pear-to-pear LAN (но можно использовать бета-версию Lantastic for OS/2), Novell requester это отдельный продукт и т.д. и т.п. Недостатки любой OC можно перечислять до бесконечности :-). Вообще Os/2 настолько хорошо расширяет возможности DOS, что теперь, после ухода со сцены DR DOS ее можно рассматривать как логического преемника DR DOS, своего рода DR DOS 10.0. Ради справедливости стоит отметить, что блес- тящая совместимость отнюнь не означает безграничной и при всей совместимос- ти OS/2 с огромным парком накопленного программного обеспечения, важное для Вас конкретное приложение может и не работать. Правда в этом смысле мне по- ка везло - Keyrus, ME, QEDIT, VC, Hiew, Arcview, Pkzip, Arj и другие утили- ты, публиковавшиеся с Софтпанораме и используемые мной уже много лет рабо- тают нормально. Даже если что-то не работает и Вы не слишком завязаны на этом приложении, то обычно ему легко можно найти адекватную замену поискав среди OS/2 shareware, которой немало и которая достаточно высокого качест- ва. По этой же причине, если Вам кажется, что Winword 6.0 работает медлен- но, то можно попробовать Ami Pro 3.1 или Describe. ME не поддерживает длин- ные имена. Ну так либо с этим надо смириться, либо, если это критично, то перейти на Brief или KEDIT или EPM. Т.е. и для коммерческих приложений аль- тернативы есть. С базами данных дело обстоит похуже, но тоже есть варианты: DB/2, Oracle, Sybase или Focus(интересная иерархическая база данных для OS/2, Windows, UNIX и mainframe), есть продукты Computer Associates(кстати наиболее активно из крупных производителей программного обеспечения работа- ющей на OS/2). Хуже всего представлены электронные таблицы. Есть Lotus 123 и если он не устраивает, то его можно сменить на Excel 3.0 (сделанный M$ еще для Os/2 1.3). Eще есть теблица в составе Bonus Pack. Моего любимого QuattroPro нет. Но конечно же я могу запускать версии для DOS и Windows. Стоит отметить, что для тех, кто начинал на DOS и знает его как свои пять пальцев, переход на OS/2 логичнее и проще, чем на LINUX, поскольку преодо- ление собственной инерции это вещь довольно трудная (в этом случае DOS это что-то вроде вредной привычки :-), а избавиться от вредной привычки всегда нелегко). Хотя EMACS мощнее, но меня, например, вполне устраивает MultiEdit (или Brief) в сочетании с Kedit(в основном для выборочного просмотра) и изучать EMACS почему-то совсем не тянет. Аналогично я использую WinWord вместо LaTeX, хотя LaTeX, безусловно богаче и гибче. Так что для тех, кто испорчен MS-DOS, OS/2 намного привлекательнее ;-). Это действительно своего рода DOS 10.0. Почти вся лучшая Shareware для MS-DOS в том или ином виде перенесена на OS/2 (есть 4DOS - называется 4os2, клоны Norton Commаnder, клон PKZIP, LH и терминальные эмуляторы и т.д. и т.п.), как впрочем и луч- шая Freeware для UNIX (весь GNU, утилиты, TCP/IP и все приложения для Internet; есть даже korn-shell и С-shell ;-). Какая-то минимальная подборка Shareware для OS/2 публикуются в выпуске B этого номера. OS/2 это сейчас базовая система для FIDO и следовательно проблем с Shareware быть не может. Помимо великолепной совместимости с MS/DOS и Windows Os/2 имеет более-менее приемлемую совместимость с UNIX, в общем-то достаточную для переноса базо- вого программного обеспечения, включая софтвер для работы с Internet. Взаи- моуважение и сотрудничество между пользователями/разработчиками LINUX и OS/2 привело к тому, что практически все все продукты GNU (GCC, Modula, ADA, Emacs, Make, Flex, Bizon, Awk, bash, perl, и т.д.), все стандартные утилиты UNIX доступны и широко используются на OS/2. Есть даже Korn shell. И что важно в Warp есть полное TCP/IP. Список наиболее популярных GNU ути- лит, перенесенных на OS/2 приведен в выпуске С. Просматривая этот список нельзя не придти в к выводу, что с OS/2 вполне можно начинать осваивать UNIX :-). Кроме этих базовых компонент GNU есть сотни наименований софтвера перенесен- ного с UNIX (и прежде всего с AIX) и довольно значительная коллекция Freeware, разработанная сотрудниками IBM. Поскольку Linux использует стан- дартный MBR, он прекрасно может сосуществовать на одном компьютере с OS/2 и комбинация LINUX+OS/2 это сейчас стандартная конфигурация для американских сильных пользователей и профессионалов. Конечно еще далеко не каждый поку- пает себе домой 486dx2/66-16-540 или P90-32-1G, но через год-два машины VL 486dx2/66-8-420 или лучше станут стандартом для машин разработчиков и у нас. Ну а на такой машине поставить две или даже три операционные системы несло- жно. В этом смысле характерен следующий Origin: ________________________________________________________ ! ! ! H. Roussel roussel@physics.mcgill.ca ! ! Well, okay! ! Proudly using OS/2 2.1, IBM Cset++ 2.1 it depends! ! "The best 32-bit OS for Intel machines" <- on how you! ! define best! ! Also using Linux, Slackware 2.0 ! ! "For what's missing in OS/2, security+multiuser" ! -------------------------------------------------------- Если говорить о перспективах OS/2, то нужно еще раз подчеркнуть, что OS/2 это прежде всего операционная система для Pentium и старших моделей 486(начиная с Dx2/50). Поскольку цены на этот класс компьютеров падают на 10% в месяц, то в этом смысле время для OS/2 настало только этой осенью, когда машины PCI P90-16-540-acc-15" раскупаются как горячие пирожки, а VL 486dx2/66-8- 420-acc1M-15".28ni-СDROM-2x" стала в США по сути домашней машиной (и стоит дешевле $1500). Как для любой удачной идеи существенную роль в распространении OS/2 сыграл INTERNET. В свою очередь Warp сам предоставляет отличные возможности работы с Internet, поскольку включает все базисные компоненты Internet, причем уровень их реализации очень высок. Кроме того пользователи Internet так или иначе знакомы с UNIX и лучше других понимают, что Windows это "не то". Ну- жен вытесняющий планировщик т.е. на OS/2, UNIX, NT. Уровень поддержки TCP/IP на OS/2 на голову выше, чем в Windows - поскольку OS/2 это удачная мультизадачная система, а не графическая оболочка к MS-DOS. Исключительно интересен REXX. Это нечто большее, чем стандартный язык управ- ления заданиями OS/2. Я бы назвал его супершеллом. Хорошо знакомый профес- сионалом, прошедшим школу VM, этот язык перенесен на все известные сейчас платформы (помимо IBM mainframe, DOS, Windows и OS/2 он используется в Amiga, Netware, UNIX, NT). В этом плане он чем-то напоминает C, т.е. реали- заций больше чем операционных систем. Я хочу подчеркнуть, что REXX это больше чем язык управления заданиями, это одновременно универсальный макро- язык редактора, терминального эмулятора и других системных утилит. На мой взгляд он очень ценен для администраторов сетей Netware. Являясь по ряду своих свойств(динамическое изменение типа переменных, массивы с динамичес- кой размерностью, типом индекса и количеством измерений (допускается ассо- циативный поиск) языком очень высокого уровня (very high level language - VHLL) REXX очень удобен для прототипирования. Как и в ряде других VHLL, тип переменных в REXX определяется последней операцией присваивания. Но что ин- тересно, так это то, что это распространяется на массивы. Массивы в REXX действительно не имеют фиксированной размерности, типа и количества измере- ний(мечта любого объектно-ориентированного фаната). То есть все это может меняться динамически. Тип индекса тоже произволен, например можно написать: is_fruit.='N' /* размерность массива неизвестна, но можно задать умолчание для не инициализированных элементов !!! */ i="apple" /* присвоили значение индексу */ is_frui.i='Y' /* а теперь элементу массива с индексом "apple" ! */ .... if is_fruit.index='Y' /* ассоциативная индексация !!! */ then do .......... end Вообще REXX с виду простой, но достаточно мощный язык, который можно рассмат- ривать как попытку создания интерпретируемого языка сравнимого по удобству обработки строк с PL/1, но по объему на порядок меньше. И это практически достигнуто. Более того программа может генерироваться динамически в процес- се выполнения самой себя как в Lisp. Т.е. язык совпадает с собственным мак- рогенератором ! При этот уровень рекурсии может быть произволен. Например можно вывести любую переменную с ее именем или генерировать процедуру, а затем ее выполнять и т.д. Можно даже динамически исправлять синтаксические ошибки в программе, типа незакрытых кавычек, но это, пожалуй, уже слишком. Т.е. Visial Basic тоже ничего, но до REXX по ряду параметров не дотягивает. Помимо поддержки FAT, Os/2 имеет гибкую и более эффективную, чем FAT(при раз- мере логических дисков более 100M) файловую систему HPFS (основанную на B-деревьях). В общем-то сопоставимую по совокупности свойств с файловой си- стемой UNIX. Неслучайно Linux позволяет читать (пока только читать) разделы HPPS. Я уже писал, что среди сторонников Linux есть немалое число членов Team OS/2. Т.е. есть определенный класс пользователей для которых сочетание OS/2 + Linux является оптимальным. Даже для старой, доброй FAT в OS/2 под- держиваются важные расширения, в частности одно очень важное лично для меня как редактора - длинные имена. Имеется расширение HPFS, поддерживающее али- асы как в VM и UNIX. Я думаю, что со временем будет поддерживаться и файло- вая структура LINUX. Вообще аналогия с UNIX очень уместна. Интересная, совершенно нетипичная ситу- ациям, сложилась с маркетингом OS/2. UNIX в свое время спасли университеты. IBM (как в свое время AT&T к UNIX) до последнего времени проявляла лишь эпизодический интерес к своему творению и постоянно ходили слухи, что либо сама IBM решит, либо Билл Гейтс уломает руководство IBM поставить на ней крест в обмен на какие-то пряники. Если и появлялась реклама, то как прави- ло бездарная. Даже сама IBM не всегда ставила OS/2 на свои компьютеры и компьютеры дочерних фирм (например Ambra). Однако те энтузиасты, которые поставили и оценили OS/2 стихийно организовали мощную группу поддержки, известную под названием Team OS/2. Члены этой группы в какой-то мере и спасли OS/2. Среди них было много сисопов FIDO, которые раньше других оценили OS/2. Практически в каждом американском штате есть BBS, ориентированные исключительно на OS/2. Среди них можно отметить 1:309/9, 1:114/12, 1:143/37, 1:103/132, 1:202/514 (Os/2 connection), 1:202/918, 1:125/20, 1:207/107, 1:202/338, 1:128/77, 1:307/18, 1:128/105(Socialism online :-) 1:141/260, 1:141/243, 1:141/222,1:141/109, 1:141/600, 1:141/730, 1:150/130, 1:2600/135, 1:112/37, 1:133/308 (Atlanta Os/2 user group), 1:236/20, 1:291/13, 1:3800/1, 1:396/51, 1:3800/24, 1:2340/110 1:292/60, 1:100/220, 1:280/304, 1:289/27, 1:3628/11, 1:3644/1, 1:209/705, 1:209/210, 1:278/709,1:107/218, 1:3813/304, 1:170/110, 1:273/201, 1:376/32, 1:123/81, 1:116/66, 1:116/17,1:19/26, 1:106/202, 1:130/65, 1:106/437, 1:106/1028, 1:109/347, 1:109/301. Неслучайно американские FIDO конференции по OS/2 очень высокопрофессиональ- ны и конкурируют по насыщенности с конференциями Internet. Региональные отделения Team-OS/2 издают свои электронные бюллетени (один из них приведен в выпуске С данного номера). Интересны некоторые из Origin членов Team-OS/2, которые встречаются в comp.os.os2.advocacy: --- OS/2 forever! Windoze never! (OS/2 - всегда! Виндоза никогда !) Christopher Hemmer, chemmer@uofport.edu --- "OS/2 is what DOS and Windows should have been. Windows/NT aspires to become what OS/2 is." - Lee Reiswig, May, 1993. (OS/2 это то, чем должны были бы быть DOS и Windows. И то чем пытается стать Windows/NT) Tom Sorensen * gt0040a@prism.gatech.edu * ccastts@prism.gatech.edu --- Support OS/2 -- show the Chicago beta to your friends! (Поддержите OS/2 - покажите бета-версию Chicago своим друзьям) joetom@aol.com (JoeTom) "Chicago runs best on a VCR" (Чикаго лучше всего работает на видеомагнитофоне" wardell@ibm.net Brad Wardell Многие используют цитаты Билла Гейтса времен "большой и крепкой дружбы" M$ с IBM, подобные цитате приведенной выше. Сегодня эти его восхваления OS/2 звучат очень своеобразно. Уж очень сильно изменились взгляды на OS/2 у "лучшего друга пользователей PC" :-). Сравните сами: БЫЛО: "I believe OS/2 is destined to be the most important operating system, and possibly program, of all time." СТАЛО: "We don't need new products to beat OS/2. OS/2 is more noise than real, because there's no one developing software for OS/2" (одно из высказываний Гейтса во время его недавнего турне по Европе) В общем-то благодаря усилиям Team-OS/2 количество пользователей к середине 1994 года перевалило за отметку 5 млн. Ну а при таком количестве пользова- телей уже можно прибыльно продолжать разработку. Однако только после выпус- ка Warp IBM вроде зашевелилась в плане маркетинга и сейчас действительно начала что-то делать по продвижению OS/2 на рынке. Например заключила дого- воры с Dell и Gateway о поставке ее как альтернативной операционной системы для тех покупателей, которые об этом попросят. Ряд немецких производителей компьютеров (в частности Vobis) разорвал договоры с Microsoft и будет поставлять компьютеры только с OS/2. Т.е. Team-OS/2 это уникальный случай когда благодаря "усилиям масс" продукт выжил несмотря на противодействие колоссальной маркетинговой машины M$, способной не только убедить пользователей покупать серенький продукт вместо более совершенных (вспоминается DR DOS - MS DOS; Turbo Pascal - MS Basic), а и вообще доказать миллионам пользователей, что удобнее всего ходить на ушах. Машины способной эффективно рекламировать и продавать несуществующие продукты: одним из личных вкладов Гейтса в программирование являются не то- лько такие термины как MS-DOS, Windows, MS-Basic и MS-Word, но и такой тер- мин как waporware. Т.е. торговля воздухом это стандартная уловка M$ и часто количество статей в прессе и всякого рода пресс-конференций по какому-ни- будь продукту или новой версии имеющегося продукта прямо пропорционально степени готовности новой версии продукта-конкурента, а не собственного. На- пример сейчас, когда c учетом появления Windows NT 3.5 судьба Windows 95 неясна, популярные журналы посвящают целые номера обзору возможностей Windows 95. Надо отдать должное, работать с прессой M$ умеет... Под давлением конкуренции и особенно маркетинговой машины M$ (c ее колоссаль- ными связями в журналистских кругах и ролью M$ как крупнейшего рекламодате- ля) IBM все время снижал цены на OS/2 и как-то так сложилось, что OS/2 2.1 в первой половине этого года было чем-то средним между Shareware и Freeware. Парадоксально, но цена отличной 32-разрядной операционной системы была ниже чем цена Shareware редактора для DOS или screen saver для Windows: $50, $35 и наконец $15! Кроме того версия 2.11 на CD-ROM распрост- ранялась IBM перед выпуском версии 3.0 даром всем подписчикам крупных евро- пейских журналов. Цена Warp в варианте "for windows"(т.е. который предпола- гает наличие у пользователя копии M$ Windows, если последний собирается ис- пользовать программы для Windows) тоже невелика и в США колеблется от $85 до $45. Более того, последние выпущенные упаковки OS/2 2.11 ($15) содержат талон на скидку $50 при покупке следующей версии. Есть и другие скидки, в частности для пользователей зарегистрированных версий OS/2 2.1 и 2.11. В общем легальная копия OS/2 2.11 cейчас не проблема для большигнства пользо- вателей СНГ и этим моментом наверное стоит воспользоваться. Как то приятнее работать на "законной" системе имея фирменный дистрибутив. Я думаю, что и Warp под давлением M$ подешевеет через полгода на половину. Документация к Warp более полна, чем для OS 2.11 хотя несколько дополнитель- ных книг конечно же не помешают. Лучшей из известных мне книг для начинаю- щих, пожалуй, является книга Moskowitz & Kerr (редакторы) OS/2 Unleashed, опубликованная издательством Sams. Переиздание, ориентированное на Warp (Warp Edition) выйдет в декабре этого года. Список книг, планируемых к из- данию приведен в MARKET\BOOKS этого выпуска. В USENET имеется масса активно работающих групп по OS/2 и они в наших услови- ях гораздо доступнее, чем FTP. Есть группа и в RELCOM. В частности, Дмитрий Завалишин, человек немало сделавший для развития FIDO в СНГ и России и на- писавший в частности шлюз FIDO-Internet, является активным сторонником OS/2 и я часто вижу его письма в этой группе. Леонид Бунич - основатель и бес- сменный руководитель московской тусовки программистов, также работает на OS/2. Os/2 достаточно популярна в Финляндии (родине LINUX) и прибалтийских странах. Harry Bush которого многие помнят по публикациям в Софтпанораме активно работает в Латвии и даже имеет Origin: Harry Bush [Team OS/2 Latvia] Harry@castle.riga.lv (2:51/2) Еще раз отмечу, что использование REXX действительно повышает личную произво- дительность, в особенности если приходится работать с модемом и не хочется учить еще один script language (это я могу судить по себе - я так и не удо- сужился изучить встроенный язык Telix/Procomm). Поэтому на более-менее при- личных машинах коммуникационную программу лучше использовать не для DOC (кстати в полноэкранном окне виртуальной DOS-машины Procomm и Telix работа- ют отлично), а что-нибудь из Shareware для OS/2: Zoc, TE/2, PMCOM или HyperAcces Lite из Bonus Pack. В общем, я настоятельно рекомендую попробовать Warp даже если Вы не собирае- тесь на нем работать. Впечатления от REXX и ощущения когда одновремен- но(пусть медленно) крутятся три-четыре программы, а Warp все не виснет и не виснет достаточно интересны, чтобы потратить день на установку и пару суб- бот и воскресений на экспериментирование. Мне, например, Warp так понравил- ся, что я в общем-то не собираюсь от него отказываться. Я убежден, что мы должны дать Warp шанс и потом сравнивать Windows 95 не с Windows 3.xx, а Warp. С уважением, Н.Безруков 9 ноября 1994 г.