Текст книги "Журнал "Компьютерра" №724"
Автор книги: Компьютерра Журнал
сообщить о нарушении
Текущая страница: 8 (всего у книги 10 страниц)
Закончив с экспериментами, я принялся за очередную рабочую установку Висты. Прошла она гладко, – даже меню прежних систем не сбились ни на капельку, – и появились и писалки, и производительность. Я набивал систему одной программой за другой, восстанавливал адресные книги и почтовые папки, а запись образа, балбес, откладывал до окончания установки. И вот когда до этого самого окончания осталось, по моим подсчетам, минут сорок – случился тот самый xxyab, вынесенный в заголовок «Огорода».
Xxyab – это имя одного из файлов вируса, которого я подцепил, зайдя на сомнительный сайт за каким-то генератором ключей. Заметил я его случайно, заскочив по иной надобности в менеджер автозагрузки (вот еще одно добавочное удобство Висты: раньше для этого приходилось пользоваться отдельной программой MSConfig). Xxyab, а вместе с ним и его дружок по похожему в чем.то имени iifcy, оба – представленные в exe– и dll-инкарнациях, захватили все основные процессы, начав с антивирусных (NOD32) и антишпионских (Ad.Aware) и заканчивая проводником и прочими главными системными. Понятное дело, что удалить dll’ки не удавалось, а когда я специально с этой целью срочно установил Unlocker Assistant, вирусы стали сопротивляться так бешено, что просто обрушили систему. Зайдя в "легкую" ХР, я стер обоих гадов, однако Виста загружаться уже не пожелала. Ну, то есть грузилась, демонстрировала черный экран с движущимся курсором, мигала модемными и винчестерными огоньками – и только. И никакие safe mode и "последние удачные конфигурации", никакие попытки восстановления загрузки или "точек восстановления" к успеху не приводили.
Вообще говоря, я в курсе, что на сомнительные сайты лучше не ходить и сомнительные файлы – не открывать. Остерегайтесь, так сказать, случайных связей! СПИДу – нет! Но моя вера в непробиваемость антивирусной защиты, взращенная десятилетней практикой (последний вирус я словил на драйверах, идущих в комплекте к CD-читалке, тогда еще – уж-жасной новинке, – и было это в совершенно незапамятные времена, все же прочее всегда обнаруживалось и пришибалось на корню), сделала меня неосторожным, – и вот на тебе! При всех установках первое, что я делал за отключением аккаунт-контроля, – это ставил антивирус. На сей раз его пробная, тридцатидневная, версия была скачана с американского сайта (обычно я пользуюсь русским, но тут как-то так получилось) и обновлена в смысле баз, – и пожалуйста: копия не сделана, система рухнула.
Поделом! Я почему.то даже не обиделся на NOD32, и когда, "переспав" трагедию, принялся за новую (пятую!) установку, не стал искать добра от добра: поставил снова его же, правда – русский. Буквально на днях пришел очередной пресс.релиз, отчет об очередном соревновании десятка антивирусов, – и вот там победил Касперский и кто.то еще один, а NOD32 и остальные его коллеги тестовый вирус пропустили. Вполне может быть. Но очень трудно расставаться с предубеждениями, а к Касперскому (не к Жене лично, а к его продукту) оно у меня, увы, сложилось давным.давно, – не потому, что он плохо ловит – он, полагаю, ловит лучше многих, – а потому, что тяжел и громоздок. Возможно, сегодня он полегчал, но потребуется еще несколько веских аргументов, чтобы мне снова захотелось это проверить.
NOD же 32 легок, изящен и красив, и все равно никогда не угадаешь, в какой именно ситуации какой именно антивирус пропустит заразу. Во всяком случае, я решил еще раз поставить на NOD32, – тем более что риск не так уж велик, когда у тебя на пристежном винчестере лежат образы системы за последние пару недель. Просто в этот раз карты очень уж неудачно легли!
Так или иначе, все вроде бы утанцевалось, и этот "Огород" я пишу в Word 2007 из-под Висты. Единственное, что хочется добавить в конце, – это к вопросу о том, как Microsoft вольготно чувствует себя на любом компьютере: и там, куда ее зовут, и там, куда не приглашают, – в комплект к истории с виденьем отключенных дисков. Уже после установки и снятия всех резервов я, предварительно создав "Точку восстановления", решил проверить.таки пришедший по Windows Update драйвер nVidia. Он установился и, как и предполагалось, видеоподсистему притормозил.
Можно было б откатиться к прежнему драйверу, можно – деинсталлировать апдейт, но я почему-то решил (может, для проверки?) вернуться к последней "Точке восстановления". Процедура прошла вроде бы благополучно и потребовала перезагрузки. Которой не произошло: система не смогла найти загрузочный файл. Ужас! Кошмар! Это после всех вышеописанных.то мучений. Я снова лег спать, и, видать во сне, мне пришло в голову глянуть в BIOS Setup. И что же вы думаете? – в последовательности загрузочных устройств не было ни одного винчестера! DVD-ROM’ы, флоппи.дисковод, какие.то, наконец, Generic USB-устройства… Я установил правильную загрузочную последовательность – и все прошло на ура. Уверяю вас, что перед этим инцидентом я в BIOS Setup не заходил недели две, так что кроме Висты нашкодить было попросту некому: глубочайшую вирусную проверку компьютера несколькими антивирусами я, разумеется, провел, едва загрузился после последней установки [Виста этого не делает, как бы автору ни хотелось обвинить Мелкософт еще в одном грехе. Все гораздо прозаичнее. В нечастых случаях, когда винчестер впадает в ступор (перестает отзываться на команды вследствие ошибки в драйвере, глюка контроллера или самого винчестера) и сразу после этого идет перезагрузка без выключения питания, такой фокус выполняет BIOS Setup. Его современные версии формируют список загрузки динамически, на основании списка найденных устройств. "Зависший" винчестер не отзывался на команды и, соответственно, не был обнаружен процедурой POST при перезагрузке (у SATA-дисков, как известно, нет аппаратного "ресета", кроме как по выключению питания или отключению сигнального шлейфа), поэтому он и был исключен из списка доступных для загрузки устройств. Если перезагрузка идет с выключением питания, винчестер инициализируется заново, и такого не происходит. Довольно распространенный глюк с дисками SerialATA. – Прим. Сергея Леонова.].
P.S. И после этого случилась еще одна мини-авария: Виста, ни с того ни с сего, грузилась до середины и давала синий экран, – причем я ничего перед этим в системе не менял. То же самое происходило и в safe mode. И вот тут.то чудом выручила строчка меню, которая никогда меня, за все годы работы с Windows, выручить не умела: "Последняя удачная загрузка".
Дай ей бог здоровья! Причина, впрочем, так и осталась невыясненной.
FERRMA: Один за всех и все за одного!
Автор: Алексей Стародымов
Каждое современное мобильное устройство, будь то сотовый телефон, коммуникатор или карманный компьютер, наделено некоторым количеством «вшитого» в операционную систему софта – будильниками, адресными книгами, браузерами, клиентами электронной почты, простенькими играми и так далее и тому подобное.
Конечно, реализация этих программных фишек не может устроить всех и каждого: зачастую их качество оставляет желать лучшего, а некоторая крайне полезная для современного человека функциональность, вроде поддержки ICQ-подобных сервисов, отсутствует практически в любом "устройстве из коробки". Хорошо, если мы имеем дело с КПК или смартфоном, где на выручку приходит масса качественного (и дорогого) специализированного софта, написанного сторонними разработчиками; а вот если нам нужно "облагородить" и превратить в рабочую лошадку простой мобильный телефон, в основе интерфейса которого лежит фирменная операционная система закрытого типа?
Как ни удивительно, сегодня с этим проблем едва ли не меньше, чем в случае с аппаратами на базе открытых ОС: поддержка Java в наши дни присутствует практически в каждом телефоне ценой от ста долларов, а гибкость этой платформы позволяет создавать приложения, которые могут быть полезны обладателям телефонов совершенно разных брэндов. В этом, собственно, вся соль – приложения и игры, написанные на Java, являются кроссплатформными: один и тот же мидлет может работать, допустим, на телефоне Samsung, смартфоне Nokia и каком-нибудь наладоннике с WM внутри. Естественно, с совместимостью есть определенные проблемы – в каких-то продуктах Java-машины поновее, в каких-то – постарее, да и сами мидлеты нередко оптимизируются разработчиками под конкретные модели телефонов. Визуально разница заключается лишь в способе реализации работы с Java-контентом: некоторые аппараты (как правило, корейского производства) позволяют загружать мидлеты только с помощью WAP-браузера – таким образом демонстрируется борьба с пиратством. В остальных случаях достаточно сбросить jar-файлы по Bluetooth или кабелю; порой достаточно этого самого jar-файла, а кое-где требуется еще и jad, хранящий информацию об инсталлируемом приложении. Некоторые современные мобильные телефоны поддерживают многозадачность: так, аппараты от Sony Ericsson позволяют одновременно запускать до десяти Java-приложений, Motorola Z6/V8/U6 – всего одно, но есть возможность его свернуть или передать по "синему зубу", а вот телефоны Nokia, Samsung и LG допускают лишь один мидлет, уже без возможности работы в фоновом режиме.
Такова теория, которая, как обычно и бывает, пытается идеализировать ту или иную технологию. С технической и исторической точек зрения все гораздо интереснее и… сложнее. Начнем с того, что набор спецификаций, предназначенных для разработки Java-приложений и их запуска на карманных электронных устройствах, получил название Java 2 Micro Edition (Java 2ME), тогда как спецификации для серверных решений называются Java 2 Enterprise Edition (Java 2EE), а для домашних компьютеров – Java 2 Standard Edition (Java 2SE).
При этом, что очень удобно, разработчикам ПО не нужно разбираться в особенностях архитектуры конкретных мобильных устройств и изучать новые малознакомые среды программирования,– SDK (Software Development Kit) для написания софта с учетом различных версий спецификаций Java весьма схожи, и ничто не мешает в кратчайшие сроки научиться писать Java 2ME-приложения, имея опыт работы, скажем, с более сложным Java 2SE. Кроме того, платформа Java 2ME бесплатна, что сыграло важную роль в популяризации технологии: если производитель устройства решает реализовать поддержку Java в своем новом портативном устройстве, то он никому ничего не должен – понятие лицензионных отчислений здесь отсутствует. Полагаю, стоит упомянуть, что огромное количество Java-приложений также распространяется на свободной основе – платить приходится в основном за игры да за что-нибудь совсем уж специфическое. В то же время базовым набором полезных мидлетов можно разжиться, не заплатив ни цента, – скажем, "комплект" для работы в Интернете, включающий Opera Mini 4, JIMM, MailMan, ClimateControl, Google Maps и Mail.Ru Agent, не будет стоить ничего: заходишь на официальный сайт разработчика, скачиваешь, устанавливаешь и пользуешься в свое удовольствие.
В общем и целом принцип работы Java на конкретном устройстве таков: в программное обеспечение телефона разработчик встраивает виртуальную Java-машину, с помощью которой выполняются, а затем выводятся на дисплей загруженные мидлеты. Вроде бы все просто? Отнюдь. На практике картина выглядит далеко не так радужно: если некая виртуальная машина абстрактного устройства с большой долей вероятности может обеспечить выполнение кода, то с выводом информации на дисплей и управлением программой могут возникнуть (и зачастую возникают) проблемы – вновь встает вопрос о совместимости: хорошо, если конкретный мидлет разработала крупная компания, которая в состоянии протестировать его на совместимость с большинством актуальных моделей мобильных телефонов или же выпустить его версии для аппаратов различных брэндов (с различными схемами софтклавиш, разными разрешениями и ориентациями дисплеев), учтя при этом особенности реализации их Java-машин. Однако массу интересных Java-приложений пишут программисты-одиночки, которые разрабатывают их "с прицелом" на свой собственный аппарат или же линейку "соплатформников" одного производителя. И дать гарантию, что такой мидлет будет корректно работать на телефоне другой модели, не может никто.
Более того, основная проблема заключается в так называемых наборах API (Appli cation Programming Interface – программный интерфейс приложения), отвечающих за доступ к каким-либо программным или аппаратным функциям устройства непосредственно из Java-приложения, исполняемого виртуальной Java-машиной. Приведем пример из жизни: есть такой мидлет – BT Info, предназначающийся для Blue-Jack’инга. На Sony Ericsson W880i он получает доступ к Bluetooth-модулю, отыскивает устройства и обменивается с ними информацией, а вот MOTOROKR Z6 при попытке запуска мидлета выводит на дисплей сообщение об отсутствии поддержки JSR-82.
Что это значит? Виртуальная Java-машина, которой оснащена Z6, не имеет доступа к Bluetooth API устройства, то есть соответствующие Java-приложения функционировать не будут. Аббревиатура JSR расшифровывается как Java Specification Request – фактически это модули/конфигурации/профили/спецификации, реализуемые на основе дополнительных библиотек (классов) и призванные улучшить функциональность платформы в целом. Одни из них являются специфическими, другие применяются почти повсеместно и уже стали ее "костяком", благо отсутствие некоторых интересных API было обнаружено производителями устройств и ОПСОСами (желающими использовать новую платформу для внедрения своих дополнительных услуг) еще в первые годы существования Java 2ME. Полный же список модулей, которые реально поддерживаются представленными на рынке аппаратами, можно отыскать на www.jcp.org/en/jsr/all.
"Почему мобильные телефоны не оснащаются одинаковым набором API? Ведь так было бы проще и разработчикам ПО, и пользователям…" – примерно такой вопрос был недавно задан на одном из интернет-форумов, посвященных мобильным технологиям. Попробуем ответить. Дело в том, что сама архитектура Java 2ME не может обеспечить полной стандартизации.
Допустим, есть набор основных библиотек, конфигураций и профилей, поддержка которых присутствует в Java-машинах устройств в обязательном порядке, а есть и дополнительные (а порой и "экзотические") элементы, добавляемые разработчиками "по желанию" или по необходимости. А поскольку аппаратные/программные характеристики устройств отличаются, разработчики встраивают ровно те возможности, которые, по их мнению, будут востребованы пользователями и в то же время поддерживаются на уровне железа. Зачем, например, бюджетному телефону поддержка JSR-184 (Mobile 3D Graphics API), если его процессор все равно не справится с обработкой трехмерной графики? Посему такая возможность в Java-машину и не закладывается. Свою роль здесь играет и маркетинг: почему бы дополнительно не разделить устройства на классы по их Java-функциональности? Возьмем те же игры: если пользователя устроят простенькие 2D-игрушки, пусть покупает аппарат за сот ню долларов, а если ему хочется насладиться 3D-графикой – пусть поднакопит денег и возьмет аппарат подороже.
Впрочем, все относительно, и многое зависит еще и от амбиций производителя. Скажем, LG не считает нужным добавлять поддержку 3D-графики даже в свои топовые продукты, а бюджетные телефоны Sony Ericsson ценят в том числе и за хорошую производительность в 3D-Java.
В основе платформы Java 2ME лежат две основные конфигурации: CDC (Connected De vice Configuration, JSR-36 для версии 1.0 и JSR-218 для версии 1.1) и CLDC (Connected Limited Device Configuration, JSR-30 для версии 1.0 и JSR-139 для версии 1.1).
Разница между CDC 1.0 и 1.1, а также между CLDC 1.0 и 1.1 заключается в возросшем количестве возможностей и, следовательно, в новых требованиях к аппаратной составляющей устройств; причем новые версии не переписаны с нуля, а представляют собой эволюцию (обновление) старых версий. Конфигурация CDC предназначена по большому счету для наиболее сложных мобильных устройств, вроде смартфонов, автомобильных навигационных систем и даже игровых приставок, а CLDC применяется в простых мобильниках. Очевидно, что эти конфигурации как раз и относятся к "костяку" платформы и поддерживаются большинством современных продуктов соответственно их классу и способу применения. Разница между CDC и CLDC заключаются в наличии или отсутствии некоторых библиотек, свойствах языка Java, возможностях виртуальных машин, а также аппаратных требованиях к устройствам. Но для непосредственного написания приложений, предназначенных для работы в устройстве, конфигураций мало, – вот мы и подобрались к вершине "Java-айсберга", которая называется MIDP (Mobile Information Device Profile, JSR-37 – версия 1.0, JRS-118 – 2.0).
Базируется MIDP на CLDC и, собственно, представляет собой эту конфигурацию плюс некоторое количество API, чего уже вполне достаточно для создания мидлетов. MIDP версии 1.0 основывается на CLDC 1.0, MIDP 2.0 – на CLDC 1.0 в случаях устройств, оснащенных от 128 до 512 килобайт встроенной памяти, или же на CLDC 1.1, если в аппарате больше 160 килобайт памяти, к тому же здесь добавлена поддержка операций с плавающей точкой. В связке CLDC+MIDP (в принципе, сегодня она и обозначает поддержку Java 2ME мобильными устройствами) обязанности распределяются следующим образом: CLDC отвечает за математические вычисления (работу с целыми и псевдослучайными числами, функциями, операциями с плавающей точкой), за подключения и сети (будь то Bluetooth-, USB-, COM– или инфракрасное подключение, а также http или TCP), за обработку массивов и векторов и за работу со строками – словом, за то, чего пользователь, загрузивший и запустивший новое Java-приложение, своими глазами не увидит. Другое дело – MIDP: профиль специализируется на обработке графических оболочек приложений, отображении элементов меню и картинок, выводе на экран текста и линий. Что касается версий, то все современные мобильные телефоны поддерживают MIDP 2.0, что обуславливает, например, поддержку технологии Push Registry, полноценную реализацию работы со звуком и доступ к вибромотору аппарата, усовершенствованные игровой и мультимедийный API и возможность использования более гибкого и приятного пользовательского интерфейса. В сравнении с MIDP 1.0, MIDP 2.0 может похвастать гораздо лучшей совместимостью с различными устройствами – теперь не приходится писать мидлеты чуть ли не под каждую конкретную модель мобильника. Отметим также, что MIDP 1.0 обратно совместим с 2.0.
Надеюсь, когда-нибудь Java-приложения догонят по функциональности софт для открытых операционных систем: хотелось бы рано или поздно увидеть мидлет, который мог бы сохранять SMS в текстовый файл, или, скажем, мидлет, который бы заменял собой интерфейс камеры… Думается, в ближайшем будущем нас ждет много чего интересного – мегапикселы мегапикселами, музыка музыкой, а возможность самостоятельно улучшить программную функциональность своего мобильного любимца должна стоять на первом месте. К счастью, производители устройств и разработчики ПО в этом случае находятся с нами по одну сторону баррикад. В то же время аппаратные характеристики гаджетов постоянно совершенствуются – если необходимым условием для реализации в устройстве CLDC является 16– или 32-разрядный процессор с тактовой частотой 8–32 МГЦ, то частота "камушка" современного мобильника нередко превышает 200 МГц.
Простенькие приложения запускаются так быстро, словно они висели в оперативной памяти, а софт потяжелее – буквально в течение двух-трех секунд. Недурно, правда? Остается расслабиться и получать удовольствие, ожидая, когда придет время еще более мощных "камней" и профиля MIDP 3.0. Оно уже не за горами…
Слушаем в оба: Creative Inspire T10S
Автор: Виктор Некрасов
+
для своей цены – неплохой звук и дизайн
-
кроме «бюджетности» – не обнаружено
Любой технологический гигант стремится охватить максимально широкую потребительскую аудиторию. Для этого в арсенале Creative, помимо прочей аудиотехники, есть почти полсотни акустических систем на любой вкус – от «пищалок» по цене до 20 долларов до мощных 7.1-канальных комплектов за 600 баксов.
Вся акустика делится на три группы: портативные системы, настольные 2.0 и 2.1 и многоканальные 5.1 и 7.1. Каждая группа, в свою очередь, поделена на несколько семейств – i-trigue, SBS, Inspire и Gigaworks. Модель T40 из топового семейства Gigaworks я не так давно слушал и остался, в общем-то, доволен. Настало время попробовать модель попроще – Inspire T10s.
Что можно сказать, глядя на эти два спикера? Самые что ни на есть десктоповые колонки без сабвуфера. Цену в 60 долларов низкой не назовешь, однако за эти деньги обещают хороший звук. Но сначала о внешнем виде.
Поскольку T10s относятся к другому семейству, на T40 эти колонки не походят никаким боком. Вместо модных желтых спикеров – черные, со стильным хромом. Красивый серый металлический цвет корпуса сменился не менее эффектным черным глянцем в стиле Apple, а вместо синего LED-индикатора мы видим зеленый.
Колонки стали чуть шире «в талии» – дабы вместить 75-мм динамик, – из-за чего, на мой взгляд, лишились элегантности. Нет, внешний вид неплохой, «дешевым» его назвать нельзя, тем не менее T10s никогда не спутаешь с HiFi-компонентом.
Выход для наушников и аудиовход расположены на боковине колонок – сразу за тряпичным лейблом Creative.
Удобнее, конечно, чтобы вход для наушников был на передней панели, но и так терпимо.
Самое главное в колонках – это звук. Увы, с первыми же аккордами понимаешь, почему T10s не место в семье Gigaworks: звучат они так себе. Басы громыхают и похрюкивают (впрочем, будем объективны – сабвуфера-то нет), средние и высокие частоты свалены в кучу, звучание неразборчивое. Но даже на максимуме громкости искажений не добавляется – нет треска пластика и звона металла решетки динамика. Короче говоря, звук, достаточный для просмотра фильмов на небольшом мониторе, фонового прослушивания музыки и игр.
Главное, что он не раздражает и не давит на уши.