Rambler's Top100
DeepHome
17.05.2007  00:00
Maybe I'm a Leo: Нетипичные заметки о Леопарде
"Отвлекающий маневр"

Столько уже всего написано о грядущей версии Mac OS X, но главное... Главное, на мой взгляд, упущено совершенно.

Apple не Microsoft. Еще год назад самый нетипичный игрок компьютерной отрасли откровенно сообщил, что "во избежание копирования конкурентами самых выигрышных и важных аспектов новой системы, они не будут обнародованы вплоть до выхода ОС на рынок, спасибо за понимание". Чего уж тут не понять?

Про самое главное все равно не напишешь. То, что Apple Inc. играет по правилам автомобильного, а не компьютерного, рынка - не новость. Хорошо это или плохо, это объективная реальность, с которой следует считаться. Поскольку они всегда так делали, и все еще живы - наверное, они имеют право так поступать.

"Машина Времени" и "Виртуальные Столы" со всеми подобными штучками - на мой взгляд, отвлекающие маневры.

"Особенная версия"

"Леопард" - особенная версия Mac OS X. И дело даже не в том, что формально она "юбилейная", и что еще во времена "Ягуара" (10.2) и "Пантеры" (10.3) было понятно, что 10.5 будет особенной...

Разработка Леопарда совпала с тремя драматическими периодами в истории Apple. Маки перешли на процессоры от Intel, главный (единственный!) конкурент выпустил Windows Vista и Apple Inc. поставила на кон собственную судьбу и репутацию, публично заявив о намерении заново изобрести мобильный телефон. Ничего сопоставимого по значению с любым из этих событий не происходило во время разработки ни одной из предыдущих версий системы.

В июне (выход в свет iPhone) и в октябре (надеюсь) мы с вами узнаем, удалось ли инженерам Apple с честью выйти из сложнейшей ситуации, и достойны ли они тех слов, которые о них принято говорить.

Первое из испытаний инженеры Apple выдержали. Смена архитектуры подобна стихийному бедствию. Ожидалось, что переход займет несколько лет, и потратить на него придется все наличные силы и ресурсы... Но уже в начале 2006, когда на прилавках появились самые первые Intel-Маки, цель была достигнута.

"Ядро"

Начнем с самой сути. Микроядро Mac OS X - усовершенствованная "операционная подсистема" mach. Одним из ключевых ее разработчиков был Авидис Теванян. Вплоть до недавнего времени, старший вице-президент Apple Computer по программному обеспечению. Это замечательное микроядро. Одна из самых значительных разработок за всю бурную историю вычислительной техники.

Но времена меняются. Меняются и задачи, стоящие перед разработчиками Mac OS X. С некоторых пор системе приходится жить сразу на двух хардверных платформах, существенно отличающихся друг от друга. А тут еще и оговорки руководителей Apple самого высокого ранга о грядущем увеличении числа платформ, поддерживаемых Mac OS X...

Неизвестно, будет ли в 10.5 новое микроядро. Это очень отвественная и важная часть операционной системы, которая должна быть одновременно и выдержанной, как старое доброе вино, и максимально современной. Разработка нового ядра точно ведется, и новому поколению "ядерщиков" удалось отстоять свой "безумно великий проект". Эви Теванян покинул компанию.

Впрочем, причина его ухода официально не объявлялась, и могла быть совершенно иной.

Стоит ожидать, как минимум, серьезных изменений на самом низком уровне операционной системы: увеличение числа ядер (процессоров) признано основным средством повышения производительности.

"Разрядность"

Когда 64-разрядные процессоры появились в массовых моделях персональных компьютеров, у скептиков появился замечательный повод поострить и поиздеваться над тупым обывателем, которому "втюхивается" совершенно ненужный товар. Тем временем, на свет стало появляться все больше и больше программных продуктов, для которых 64-разрядная архитектура была как воздух.

"Тигр" (Mac OS 10.4) умеет работать с 64-разрядными процессорами, но не является 64-разрядной операционной системой в полном смысле этого слова.

32-разрядность эта негативно сказывается, например, на возможностях графической подсистемы Mac OS X. Размер обрабатываемой "картинки" ограничен. И пусть, на первый взгляд, максимально возможный размер кажется фантастическим и нереальным. Он реален и достижим.

В предыдущие десятилетия острая недостаточность ресурсов (оперативной и дисковой памяти) породила на свет сотни остроумных трюков, позволяющих эти ограничения обходить. Все эти трюки - замечательный памятник человеческой изобретательности. Но кратчайший путь между двумя точками - прямая. Теперь можно и нужно учиться ходить "по прямой".

Леопард - 64-разрядная операционная система, умеющая работать с 32-разрядным "железом" и программами. 32-разрядные программы (на 64-разрядных Intel-Маках) под управлением "Леопарда" работают эффективнее, чем на "родных" 32-битных компьютерах, за счет того, что половинки 64-битных регистров предоставляются им в качестве самостоятельных регистров.

"Независимость от разрешения экрана"

В отладочно-экспериментальном исполнении, это свойство появилось в 10.4. Поиграться с ним можно в программе Quartz Debug, которая поставляется вместе с бесплатной средой разработки. В 10.5 это новшество становится реальностью, доступной каждому пользователю.

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

В 10.5 пользователь сможет, как и прежде, устанавливать "общее разрешение" экрана. Кроме того, в Леопарде можно индивидуально изменять разрешение в каждом конкретном окне.

Quartz - бесконечно масштабируемая векторная "рисовалка", построенная на принципах, близким к PDF (или PostScript), что значительно облегчает подобные трюки. Программам, работающим с пикселями, придется труднее.

Начиная с 10.4, в официальных наборах API появились специальные средства для доступа к конкретным пикселям растровой графики, которые предписывалось применять всегда и везде. Традиционно, программист получал доступ к массиву пикселей, и вручную вычислял координаты интересующих его точек экрана. Уже в 10.4 на этом пути появились "засады".

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

То, что делают практически все программисты по многу раз, технология берет на себя. Программисту остается сделать то, и только то, что отличает его замысел от общей для всех части.

"Продолжение следует..."

В Леопарде появится несколько новых технологических компонент. Маковским программистам опять придется прочитать тысячи килобайт увлекательнейшего чтива и в который уже раз буквально "сесть за парту" - чтобы не отставать от планки.

В следующей статье мы поговорим о Core Animation, Image Kit, обновлении средств разработки, о совершенно новом инструменте DashCode (усиливающим подозрения относительно истинного назначения Dashboard), о новом поколении самого главного языка программирования Mac OS X - Objective-C...

Оставайтесь с нами!

Maybe I'm a Leo: Нетипичные заметки о Леопарде
Источник/Source: Олег Свиргстин
(495) 933 6737 | sales@deepapple.com deepapple.com | deepstore.ru | griffintech.ru | macally.biz | xtrememac.ru | wacomstore.ru | ipodcentre.ru
Rambler's Top100 Индекс цитирования