`

СПЕЦІАЛЬНІ
ПАРТНЕРИ
ПРОЕКТУ

Чи використовує ваша компанія ChatGPT в роботі?

BEST CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Palm OS -- прелюдия номер 5

0 
 

Несмотря на решительные попытки очередного "штурма" рынка наладонных компьютеров, предпринимаемые "альянсом гигантов-производителей", объединяемых платформой Pocket PC, противостоящая сторона лидирующих позиций пока не сдает. Конечно, сегодняшнее главенство Palm-совместимых устройств уже далеко не тотальное доминирование пятилетней давности, но от этого факта ситуация становится только интереснее.
Увы, пытаясь рассказать о новой Palm OS версии 5, попадаешь в весьма затруднительное положение. Cпецифика такой "истории" слишком велика и одновременно слишком далека от насущных ежедневных потребностей основной массы пользователей ПК, только задумывающихся над расширением своих возможностей за счет наладонного компьютера. Поэтому мы не будем "забираться" в технологические дебри и нюансы, ограничившись функциональными обзорами самой ОС и представителя "новой волны" Palm-совместимых устройств, а также попытками прогнозирования ситуации, направленными на облегчение выбора модели Palm для тех, кто намеревается сделать этот выбор в первый раз. Последняя оговорка немаловажна -- у более или менее опытных пользователей наладонных компьютеров неизбежно формируются собственные уникальные шаблонно-стереотипные требования, уникальность которых автор понимает и уважает...


Аналогии

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

В данном случае речь идет о совсем неожиданной аналогии -- между компаниями Palm и... Apple. Если взять самые важные исторические факты, отбросив несущественные детали, можно получить, образно говоря, два пейзажа разных авторов, но с одной и той же натуры. Некогда Apple ярко и надолго "прозвучала" компьютером Macintosh, обладавшим по своим временам средней ценой при впечатляющих и весьма специфических характеристиках. В перечне последних наиболее интересным автору кажется сочетание 32-битового процессора M68000 с... монохромным экраном с квадратным пикселом (равным разрешением по вертикали и горизонтали). А ведь оно не случайно -- программисты, писавшие во время оно низкоуровневые графические программы, хорошо помнят нюанс растровой графики, именуемый aspect ratio, -- коэффициент, отражающий "неквадратность" пиксела. Настоящий бич для процессоров с малой вычислительной мощностью, aspect ratio способен "съесть" море ресурсов в компьютерах с примитивной видеоподсистемой -- каждый вывод на экран линии, символа и т. д. требует выполнения массы "дорогих" (в терминах времени процессора) операций умножений. Единственное красивое (потому как принципиальное) инженерное спасение от такого "несчастья" -- квадратный пиксел, для которого aspect ratio равен 1 (что вообще исключает потребность в умножениях).

Конструкторы первых моделей Macintosh, по-видимому, основывались именно на такой логике -- использование дополнительного быстрого сопроцессора (M68000 поддерживает только целочисленную арифметику), естественно, позволило бы увеличить производительность, но во времена Macintosh микросхемы стоили слишком дорого... Намного позже конструкторы Palm сделали практически то же самое, только по другим соображениям. К моменту выхода первого Palm на рынок чипы уже существенно подешевели, M68000 из "революционного процессора" превратился в "классику", но... установка сопроцессора означала резкий рост энергопотребления, что в компактном устройстве с батарейным питанием просто непозволительно. Соотвественно, и решение пришло само собой -- квадратный пиксел правил бал (стандартное разрешение для всех КПК Palm "первой волны" было 160 x 160 пикселов при строго квадратном экране).

Грамотные инженерные решения, средняя цена и новизна продуктов привели к лавинообразному росту продаж обеих компаний. Apple и Palm, каждая в свое время, буквально "взорвали" рынок миллионами проданных компьютеров за несколько лет (в случае с Palm скорость насыщения рынка 5 млн.КПК/год уже никого не удивляет).

Palm OS -- прелюдия номер 5
Sony CLIE2 PEG-NX70V. Цена в Киеве -- 4536 грн. Предоставлен магазином "Сучаснi цифровi технологii" BIGIT: тел. (044) 248-6603
После продолжительного успеха с Macintosh конструкторы Apple столкнулись с одной малоприятной проблемой -- яростным нежеланием своего поставщика процессоров (Motorola) поднимать тактовую частоту. А между тем тактовая частота превращалась в важный маркетинговый инструмент, и рынок требовал роста мегагерц. Apple идет на болезненный шаг -- полностью меняет архитектуру компьютеров, предпринимая все возможные меры для сохранения наработанного сторонними производителями ПО. Исчерпавшее себя семейство процессоров M680x0 с предельным значением тактовой частоты 66 MHz остается в прошлом и на рынок "выбрасывается" PowerMac с центральным процессором PowerPC.

Конструкторы Palm сталкиваются с проблемой подъема тактовой частоты значительно раньше -- из-за ограниченности в выборе процессоров Motorola только малопотребляющими моделями. И, естественно, предпринимают аналогичные действия -- меняют основу архитектуры своих компьютеров. Доказавшие состоятельность экономичные и весьма мощные процессоры семейства ARM приходят на смену неувядающему, но "медленному" процессорному ядру M68000. При этом также предпринимаются беспрецедентные меры по предотвращению "обвала" рынка ПО для новой платформы. Собственно, этим "мерам" под названием Palm OS 5 и посвящена статья. На этом рассуждения на скользкой дорожке аналогий можно было бы прекратить, но это все-таки еще не все...

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

Мы не будем даже пытаться судить, хорошо это или плохо. Главное -- это факт. И Apple отваживается на крайне рискованный шаг -- меняет платформу полностью. На смену "бессменной" Mac OS приходит нечто совершенно из другого мира -- Mac OS X. Причем основа основ Mac OS X, в том числе и идеологическая, -- ОС NextStep -- была как бы "прикуплена" Apple... И компания Palm в свое время тоже успела "прикупить" во многом весьма похожую на NextStep ОС -- BeOS (в этой сделке "дорожки" Apple и Palm даже "пересеклись", ведь "отец-основатель" компании Be -- бывший CEO Apple)...

Если бы из всей этой истории нам был известен только первый технологический факт, его можно было бы объяснить просто хорошим уровнем подготовки конструкторов двух компаний (в чем сомневаться не приходится). Но три "совпадения" уже формируют закономерность, которую пока неофициально подтверждают официальные лица Palm. Как и предыдущей, четвертой, версии Palm OS 5 уготована роль "операционной системы эволюционного этапа", полностью аналогичная роли Mac OS для PowerMac. Революция произойдет, но несколько позже -- основанная на BeOS Palm OS 6 ни в этом, ни в следующем году, по-видимому, не появится...


Цена эволюции

Из столь детального "сравнительного жизнеописания" понятно, что, во-первых, от Palm OS 5 не стоит ожидать наблюдаемых невооруженным взглядом революционных изменений. И действительно, на пользовательском уровне, слава Богу, никаких принципиальных "взрывов", способных только отпугнуть пользователя, воспитанного на спартанских принципах Palm, не происходит. Это, можно сказать, -- замечательно. Самые же интересные изменения скрыты на системном уровне и действительно заслуживают ознакомления. Хотя бы потому, что если "работают" аналогии между столь "далекими" друг от друга компаниями, как "ведущая" Apple и "ведомая" Palm (Apple исторически проходила все этапы пути первой), то кто знает, не сформируются ли новые "аналогии", где "ведущей" станет сама Palm...

Итак, о главной проблеме, которую решили конструкторы Palm, мы уже знаем -- сохранение базы наработанного прикладного ПО при учете принципиальных различий между процессорным ядром M68000 и ARM (для уточнения: 9-го семейства). Между двумя этими архитектурными моделями лежит настоящая пропасть: ARM9 является образчиком Гарвардской архитектуры, а M68000 -- классическая фон-Неймановская машина; M68000 использует схему big-endian размещения байт в слове, ARM9 -- little-endian; процессоры Motorola способны адресовать 32-битовые слова четными адресами, механизмы адресации ARM9 требуют выравнивания по границе слова (адрес должен делиться на 4). И все же... выбор ARM немного облегчил решение задачи -- хотя бы из-за некоторого "сходства" регистровой модели двух процессоров: у ARM9, как и у M68000, шестнадцать 32-битовых регистров общего назначения.

Второй немаловажный фактор, способствовавший успешности мероприятия, -- "медлительность" процессоров Palm, вынуждавшая разработчиков прикладного ПО тщательно продумывать алгоритмику своих программ -- так тщательно, чтобы они успешно работали даже на 16 MHz тактовой частоты. Когда же с переходом на новый процессор частота "выросла" до отметки 150 MHz и выше, именно "нетребовательность" приложений дала возможность направить высвободившуюся производительность на обеспечение совместимости. В Palm OS 5 этим занимается подсистема, именуемая PACE (Palm Application Compatibility Environment -- окружение обеспечения совместимости приложений Palm). Конечно же, на фоне растущего количества реально работающих разнообразных программных эмуляторов PACE не кажется уникальной разработкой, но все же не следует забывать о масштабах -- даже новые Palm с ARM-процессорами слишком далеки от современных десктопов с мощными процессорами. И, кроме того, в отличие от большинства эмуляторов PACE по принципу действия куда ближе к... JIT-компиляторам (just in time) байт-кода Java-машины в коды целевого процессора.

Задача, решаемая PACE, -- интерпретация машинных кодов процессора M68000 в последовательности кодов ARM9. Естественно, во множество интерпретируемых PACE команд попадают и так называемые trap-инструкции. С их помощью в процессорах M68000 осуществляются "системные вызовы" -- передача управления ядру ОС. PACE интерпретирует эти обращения в реальные вызовы ядра Palm OS 5 (здесь надо отметить, что само ядро ОС существенных изменений не претерпело). При таком подходе практически все "честно написанные" программы, разработчики которых не пользовались "грязными приемами" (обращение в системные области памяти к скрытым структурам данных, минуя интерфейсы ОС, и т. п.), в идеале должны оставаться работоспособными. "В идеале" здесь означает -- если в реализации PACE и самих программ нет ошибок...

JIT-интерпретация команд медленного процессора в команды быстрого, трансформация форматов системных вызовов Palm OS одной архитектуры в форматы другой -- это еще не все обязанности, с которыми "справляется" PACE. Одна из главных и самых интересных особенностей подсистемы -- поддержка идеологии "бархатных революций" для разработчиков прикладного ПО. Идея "бархатной революции" весьма привлекательна -- создатели прикладной программы могут "вынести" ее самые ресурсоемкие фрагменты в отдельные альтернативные процедуры, реализованные в "родных" кодах ARM9, сохранив бинарную совместимость с M68000 и получив существенный прирост быстродействия при исполнении на Palm с новыми процессорами. Надо заметить, что процедура построения "гибридных" программ ARM--M68000 весьма проста и даже в какой-то мере способствует... улучшению качества кода -- по крайней мере теперь у разработчиков возникает серьезная мотивация провести ревизию и профилирование кода.

К обеспечивающим сервисам, поддерживающим выполнение PACE своих функций, в той или иной степени можно отнести и DAL (Device Abstraction Layer) -- подсистему, гарантирующую максимальное "отдаление" аппаратно-зависимого кода от ОС и прикладных программ. Хорошее функционирование DAL при переходе на процессоры ARM, по большому счету, является необходимым условием успеха новой платформы. Ведь в отличие от уходящих в прошлое процессоров DragonBall, производимых исключительно Motorola, ARM -- чипы принципиально "клоновые", те или иные вариации которых сегодня производят чуть ли не все, кому не лень.

Итак, подводя итоги нашего краткого знакомства с Palm OS 5, можно говорить о том, что архитекторы, разработчики и кодировщики Palm постарались сделать все возможное, чтобы облегчить "страдания" самых главных своих партнеров по бизнесу -- создателей прикладного ПО. Не забыты и конечные потребители -- им пока не нужно волноваться о бинарной несовместимости уже имеющихся у них КПК Palm семейств M1xx, M5xx и клоновых моделей, основанных на процессорах DragonBall (более 30 млн. пользователей -- слишком весомый аргумент, чтобы его проигнорировали производители ПО), с новыми ARM-моделями. И наконец, для желающих обзавестись "первенцом" -- первым КПК Palm -- облегчилась задача выбора, хотя бы из-за превосходства в функциональности устройств под управлением Palm OS 5.


"Первые журавли"

В качестве примера одного из первых КПК, создатели которого решили сразу и чуть ли не на "всю катушку" использовать возможности новой платформы ARM9 + Palm OS 5, мы выбрали новую модель Sony CLIE -- PEG-NX70V. Об этой модели КПК легче рассказывать в стиле "чего в ней нет", чем познакомить с обширнейшим перечнем разнообразной "начинки". И все-таки... Цветной дисплей с разрешением 320 480 (!), как все цветные дисплеи в семействе CLIE, можно назвать безукоризненным, а возможность трансформации этой машинки из "книжки-раскладушки" в более привычный "монолитный брусок" с помощью механизма разворота и отбрасывания дисплейной части кажется совсем не лишней -- ведь слишком многие пользователи привыкли именно к такому технологическому исполнению КПК. Встроенная цифровая камера, обеспечивающая разрешение снимков 640 480 и позволяющая вести съемку в режиме "кинокамеры" (до 1 часа видеозаписи на 128 MB карту Memory Stick), MP3- и видеоплееры (в комплекте -- наушники с проводным пультом дистанционного управления), порт IrDA с отдельным излучателем для ИК-управления бытовой аудиовидеотехникой, клавиатура и традиционный для CLIE "джойстик" (Jog Dial), разъемы для подключения адаптера беспроводной сети 802.11b и, естественно, flash-карточки Memory Stick, диктофон с ADPCM-компрессией... Короче говоря, после такого "краткого" перечисления совершенно неясный термин, характеризующий эту модель, -- Personal Entertainment Organizer (так и напрашивается перевод "персональный массовик-затейник") -- становится если не понятным, то, по крайней мере, впечатляющим.

Все это функциональное богатство поддерживается производительностью 200 MHz ARM-процессора и 16 MB оперативной памяти. Правда, с последней дело обстоит не так просто, как в "классических" Palm, где величина RAM точно соответствует всей доступной под пользовательские потребности памяти. У NX70V для пользователя реально остается всего 11 MB (4 MB заняты предустановленными программами, управляющими всей небедной периферией, 1 MB резервирован под "разделяемую память", используемую этими программами).

О предустановленном ПО следует сказать особо: во-первых, в Sony разработали собственную пользовательскую оболочку (в терминах Palm -- лончер, launcher), во-вторых -- снабдили NX70V всем необходимым для утилизации мультимедийных возможностей КПК (в том числе, и поддержкой Macromedia Flash). Однако в части традиционных для "наладонников" функций NX70V ничем от своих предшественников не отличается.

Собственно, пора "пения дифирамбов" NX70V закончилась. К сожалению, недельный опыт эксплуатации этого КПК выявил и ряд если и не недостатков, то весьма критичных моментов. У устройства достаточно высокое энергопотребление, вынуждающее или подзаряжать аккумуляторы каждый день, или "экономить батарею" снижением подсветки экрана и отказом от использования расширенных мультимедийных функций. Встроенная клавиатура не очень удобна из-за малых размеров кнопок, расположение Jog Dial под первым пальцем левой руки (характерное для всех CLIE) приводит к сильной утомляемости.

В принципе, эти нюансы можно считать малосущественными, но вот совместимость с ПО у NX70V действительно оставляет желать лучшего. Такое каноническое приложение, как Agendus (ActionNames), на этой машинке выдало на экран нечто неудобоваримое. Большие проблемы наблюдались и с устойчивостью работы многих объявленных Palm OS 5 совместимыми программ. Но самое малоприятное, пожалуй, заключается в сложностях запуска под управлением Palm OS 5 системных расширений (хаков), созданных для классических Palm. 11 MB памяти NX70V буквально вынуждают использовать внешнюю память Memory Stick для хранения больших приложений (500 KB и более), и желание применить в данном случае развитые хак-механизмы, позволяющие выполнять программы без копирования в основную память, трудно в этом случае назвать "прихотью". Увы, в NX70V такое пока невозможно...

Ready, set, buy! Посібник для початківців - як придбати Copilot для Microsoft 365

0 
 

Напечатать Отправить другу

Читайте также

 

Ukraine

 

  •  Home  •  Ринок  •  IТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Мережі  •  Безпека  •  Наука  •  IoT