Содержание


Запуск Linux на PlayStation 3

Часть 1 . Больше, чем развлечение

Пожалуйста, настройте ваш монитор

Comments

Серия контента:

Этот контент является частью # из серии # статей: Запуск Linux на PlayStation 3

Следите за выходом новых статей этой серии.

Этот контент является частью серии:Запуск Linux на PlayStation 3

Следите за выходом новых статей этой серии.

Когда компания Sony впервые объявила, что PlayStation 3 обладает встроенной поддержкой Linux, это вызвало большой ажиотаж. Поначалу установка Linux вызывала ряд определенных трудностей. Поддерживаемый приставкой установщик с помощью специального сценария превращал DVD-дистрибутив Fedora Core 5 или 6 в работающую систему со специальным ядром для PS3. Люди проводили многие часы в попытках заставить работать другие ОС, такие как Ubuntu, а "царем горы" в то время стала операционная система Yellow Dog Linux компании Terra Soft, обладающая современным графическим установщиком, который мог запускаться на PS3.

Со временем многое изменилось. Fedora 7 замечательно устанавливается на PS3. Все, что при этом должен сделать пользователь – это указать драйвер загрузчика PS3, чтобы система смогла обнаружить установочный DVD, и выбрать видеорежим при первоначальной настройке системы, чтобы можно было использовать графический интерфейс установщика.

Итак, вы можете запустить Linux на PS3. Это просто. Проблема заключается в том, что не обязательно все будет работать хорошо. Если вы приобрели PS3 в качестве недорогой системы разработки приложений для процессора Cell, то после установки ОС по умолчанию можете быть слегка разочарованы, обнаружив, что к моменту появления приглашения командной оболочки система успеет создать на жестком диске сотню-другую мегабайт swap-файлов.

Об этой серии

В этой серии из трех статей Linux на PS3 рассматривается в качестве перспективной среды разработки приложений. Первая статья, открывающая серию, познакомит вас с основными настройками, присущими PS3, объяснит, как можно эффективно их использовать, и покажет несколько приемов, которые могут улучшить производительность системы и обеспечить более удобную работу с дисплеем. В последующих частях будут рассмотрены вопросы производительности и более тонкой настройки, которые, хотя и применимы к любой системе, особенно полезны для превращения вашей приставки из концептуального образца в реально работающую систему.

Начало работы

Для начала у вас должен быть дистрибутив Fedora 7 (вероятно, Fedora 8 тоже будет работать, но когда я начинал писать эту статью, у меня под рукой была Fedora 7). Очевидно, вы могли бы получить лучший результат, установив какой-нибудь оптимизированный или специально адаптированный для PS3 дистрибутив, но Fedora 7 имеет огромное преимущество: поддержка этой системы включена в пакет Cell/B.E. SDK (хотя RHEL 5.1 также поддерживается, Fedora 7 симпатичнее).

Я большой поклонник сети Bittorrent, поскольку она помогает распределять сетевую нагрузку. Это означает, что следует оставлять свой Bittorrent-клиент включенным до тех пор, пока вы не отдадите, по крайней мере, столько же информации, сколько получили сами. Программное обеспечение open source – это своего рода сотрудничество людей, и совместное распределение сетевых затрат является отличной отправной точкой. Загрузка DVD-образа (обратитесь к разделу Ресурсы) займет какое-то время, так что, пока вы ждете, я расскажу кое-что из истории PS3 Linux.

Linux можно было запустить и на приставке PlayStation 2, но для этого нужно было изрядно попотеть. Для запуска Linux на PS2 компанией Sony был выпущен специальный пакет, который мог работать только на старых, "толстых" моделях PS2 и требовал наличия дополнительного жесткого диска. Этот пакет не поддерживался более новыми (и более распространенными), "тонкими" моделями PS2, и поэтому о нем быстро забыли. Хотя, по большому счету, это произошло из-за того, что этот пакет был своего рода лишь доказательством концепции – на практике PS2 не обладала достаточным количеством памяти, а без использования специальных компиляторов процессор представлял собой довольно стандартное ядро MIPS-архитектуры. Поддержка и документация векторных блоков ограничивались рамками служебных инструментов для разработчиков.

В отличие от своей предшественницы, PS3 обладала поддержкой работы с Linux с момента выхода в продажу, и компания Sony обеспечила широкую доступность кода и установочных пакетов, необходимых для запуска Linux. Компакт-диск под названием "Cell addons", выпущенный приблизительно в то же время, что и сама приставка, обеспечивал прямую поддержку Fedora 5 и 6, а также содержал все файлы, необходимые для портирования на PS3 других дистрибутивов. В результате Fedora 7 свободно работает на PS3 без необходимости использования каких-либо дополнительных компакт-дисков, хотя вам и потребуется скачать с ресурса Sony инсталлятор, позволяющий установить необходимый загрузчик операционной системы. Также на странице загрузки Sony вы всегда можете скачать самую последнюю версию "Cell addons" (обратитесь к разделу Ресурсы), включающую в себя все необходимые обновления и новое ядро.

Разбираемся с гипервизором

Основу PS3 составляют следующие компоненты: 256 МБ основной памяти, процессор Cell/B.E., проводной Ethernet-адаптер (на некоторых моделях также присутствует и беспроводной 802.11b/g модуль), жесткий SATA-диск и графический блок под названием RSX, имеющий 256 МБ собственной памяти. Также имеются расширения для поддержки периферийного оборудования – порты USB, карт-ридер (на некоторых моделях) и Bluetooth. Но все это не то, на чем работает PS3 Linux.

Linux работает на PS3 под управлением гипервизора — в сущности, на виртуальной машине, подобной Xen. Гипервизор обеспечивает контролируемый доступ к аппаратной части PS3. Например, код Linux не имеет прямого доступа к графическому процессору RSX. Для этих целей используется специальное устройство, предоставляющее ограниченный доступ к RSX и содержащее достаточно эффективный 2D видеобуфер.

Гипервизор выполняет ряд преобразований. Например, как было замечено, гипервизор предоставляет в распоряжение Linux виртуальный видеобуфер, а затем приводит его в действие с помощью графического ядра RSX. Точно также, Linux не имеет доступа к жесткому SATA-диску. Вместо этого Linux получает доступ к SCSI-диску, которому сопоставлена лишь область, выделенная под раздел "Other OS". Таким образом, просто физически невозможно получить доступ к части диска, используемой игровыми приложениями PS3.

Наибольший интерес вызывает, пожалуй, сетевое оборудование. PS3 Linux может получить доступ либо к гигабитному проводному интерфейсу, либо к беспроводному интерфейсу 802.11g, но не к обоим сразу. Если в процессе настройки в качестве сетевого интерфейса будет указан беспроводной интерфейс с идентификатором SSID, гипервизор будет использовать беспроводную связь, в противном случае будет использоваться проводной интерфейс.

Итак, рассмотрим спецификации системы с учетом поправок: PS3 Linux запускается на виртуальной машине, которая имеет процессор Cell/B.E. с 6 элементами SPE, около 212 МБ основной памяти, один сетевой интерфейс, SCSI-диск (плюс несколько дополнительных SCSI-дисков при наличии карт-ридера), SCSI-устройство, представляющее накопитель DVD-ROM, CD-ROM или, возможно, Blue-ray, а также работающие порты USB и Bluetooth. Графическая подсистема представлена специальным видеобуфером с поддержкой широкого набора видеорежимов (обратитесь к разделу Краткая информация о видеорежимах бытовой электроники).

Определитесь с вашей рабочей средой

Чтобы эффективно использовать PS3 для разработки приложений, определитесь с тем, какая рабочая среда подходит для ваших задач. Если вам достаточно удобно работать в командной строке, и вы можете полностью отказаться от использования среды X, вы сэкономите огромное количество памяти, поскольку среда Gnome, которая по умолчанию используется в Fedora, не особо экономична в этом плане. С множеством утилит по настройке системы удобнее всего общаться через X, но для их выполнения может потребоваться много времени. Я выполнял обновление пакетов с помощью графического менеджера в среде Gnome, и это заняло у меня несколько часов. Возможно, это произошло из-за того, что процесс занимал в памяти 375 МБ, что существенно превышало объем физически доступной памяти. Все основное время уходило на выгрузку данных в swap-файл, что делало работу системы похожей на работу Emacs на VAX.

Из всего этого можно сделать основной вывод: самым слабым местом PS3 является недостаточное количество памяти. Поэтому как можно скорее отключите ненужные вам службы, запускайте xterm вместо gnome-терминала, а если вам нужно работать с несколькими окнами, запускайте screen вместо нескольких сеансов xterm.

Настройки дисплея

Если вы собираетесь работать удаленно, без использования монитора, этот вопрос не должен особо вас беспокоить. Но если вы хотите работать в системе, которая бы достойно выглядела визуально, вам следует рассмотреть вопрос настройки дисплея. Наилучшее качество достигается при использовании HDMI-выхода PS3. Если у вас есть компьютерный монитор, то использование переходника HDMI/DVI будет достаточно дешевым решением, однако убедитесь, что ваш монитор поддерживает протокол защиты широкополосных цифровых данных (High-bandwidth Digital Content Protection, HDCP). Если монитор не поддерживает HDCP, то вы сможете увидеть лишь черный экран или яркую статическую картинку. Если вы используете KVM-коммутатор, то имейте в виду, что он также должен поддерживать HDCP, как и монитор! К сожалению, не существует известных способов отключить эту "полезную функцию" – вы просто не сможете получить на выходе незашифрованный сигнал. До тех пор, пока устройство, способное воспроизводить фильмы высокой четкости, должно обеспечивать защиту контента, придется смириться с тем фактом, что для просмотра рабочего стола в среде X вам необходимо иметь специальное разрешение. Кабель HDMI/DVI можно использовать практически для всех видеорежимов, которые может предложить PS3, для режимов бытовой электроники, таких как 720p, а также для режимов ПК, таких как WXGA.

Если у вас нет возможности использовать HDCP, или вы не располагаете монитором с DVI-интерфейсом, то следующим наилучшим вариантом станет использование компонентного видеосигнала (component video). Хотя чаще всего этот интерфейс используется в телевизионных приемниках, он также поддерживается некоторыми компьютерными мониторами и очень похож на старый стандарт VGA с тем отличием, что сигнал передается по трем раздельным RCA-разъемам. Один разъем используется для передачи красного цвета, второй для передачи зеленого, и третий – для передачи синего. Если у вас есть компонентный видеокабель от PS2, вы можете использовать его, тем самым сэкономив на покупке нового. Компонентный кабель гарантированно поддерживает дисплеи с разрешениями 720p и 1080i, но может не работать с разрешением 1080p (обратитесь к разделу Краткая информация о видеорежимах бытовой электроники, если вы забыли, в чем заключается разница). Компонентный видеосигнал обеспечивает как поддержку более высоких разрешений, так и более четкое изображение по сравнению со следующими двумя вариантами.

Если у вас нет возможности использовать и компонентный кабель, то, возможно, у вас имеется устройство, поддерживающее стандарт S-video. Этот стандарт можно использовать для режима 480i, при этом сигнал S-video разделяется на два канала – сигнал яркости и сигнал цветности. Это обеспечивает лучшую четкость по сравнению с последним вариантом – композитным сигналом. Композитное видео – это старый RCA-разъем (или "тюльпан"), обычно желтого цвета, совместимый практически со всем, чем только можно. Однако если вы можете не использовать композитный выход - не используйте.

Обратите внимание на то, что установщик Fedora 7, по сути, бесполезен при использовании видеорежима ниже 720p (если только при этом не используется текстовый режим). На самом деле, если вы планируете использовать PS3 в качестве среды разработки, вам стоит присмотреться к более высоким разрешениям. Система Linux имеет встроенную совместимость с большими дисплеями и в основном ориентирована на их использование, поэтому оконная среда Fedora на дисплеях с низким разрешением выглядит ужасно. Более того, такие дисплеи (в особенности при использовании композитного кабеля) выдают трудночитаемое и ужасно размытое изображение.

Моя система работала на WXGA-мониторе с разрешением 1280x768, при этом я использовал DVI-кабель. Эта конфигурация оказалась вполне пригодной для работы. Области рабочего стола при этом было достаточно, чтобы расположить несколько неперекрывающихся оконных приложений.

Установка Fedora

К этому моменту установочный DVD-образ Fedora уже должен загрузиться, так что перейдем к установке системы. Следуйте стандартным инструкциям PS3 для разметки жесткого диска (при этом все данные будут уничтожены, так что при необходимости создайте резервные копии) и установки загрузчика Other OS. Когда наступит время вставить DVD-диск Fedora и загрузиться с него, введите команду linux64 text или linux64 video=720p в командной строке kboot. Режим 720p является необходимым минимумом для комфортной установки ОС; если у вас нет возможности использовать компонентный или DVI выход, запустите программу установки в текстовом режиме. В моем случае загрузка с использованием параметров по умолчанию привела к тому, что установщик завис, отображая на экране логотип Fedora; фактически окно установщика было больше области экрана по умолчанию, и мне ничего не оставалось, кроме как выключить систему и попытаться повторить процесс установки заново.

После этого давайте двинемся дальше, загрузив и установив все текущие обновления с серверов обновления Fedora. Также как и установка Linux, это займет некоторое время, поэтому, начав процесс установки или обновления ОС, придумайте себе занятие на ближайшие несколько часов.

Далее: установка дополнений PS3

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


Ресурсы для скачивания


Похожие темы


Комментарии

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

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=Linux, Open source
ArticleID=301704
ArticleTitle=Запуск Linux на PlayStation 3: Часть 1 . Больше, чем развлечение
publish-date=04172008