Показаны сообщения с ярлыком Mac OS X. Показать все сообщения
Показаны сообщения с ярлыком Mac OS X. Показать все сообщения

вторник, 28 октября 2008 г.

Лицом к человеку или немного о настройке/мониторинге сетевой активности.

/*

Есть, милок, такая система, называется Mac OS...
(слова древнего предания)

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

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

итак, Господа, типовая ситуация: настоящяя блондинка (Ъ) хочет разобратьтя в основах мониторинга/контроля/настройки сетевой активности. начальный уровень знаний равен нулю. что ей посоветовать? варианты:

а) для Linux:

1) любая вменяемая "вводная" по TCP/IP способная донести простую идею, что это - не более чем транспорт/автобус, в котором едут пассажиры/(специализированные сетевые протоколы)

2) Русские выпуски Linux Gazette. в дополнение модно пошарить по сусекам оригинала: Linux Gazette. в частности - Linux Advanced Routing & Traffic Control HOWTO (оригинал).

3) xgu.ru - надо/можно выбрать очень неплохой материал

4) любая вменяемая дока по конфигурации ядра и патчам Netfiller (многие вкусные вещи до сих пор не в мейнстриме). для openSUSE и нашего скромного Enlightenment LiveCD именно поэтому используется ядро, собранное Яном Энгельхартом.

5) примерный списочек "крутых мэнов, что ждут тебя за углом"...
man ip (пакет iproute2. в принципе он заменяет следующие две позиции, но, к сожалению, не в ходит в базовую установку многих дистрибутивов)
man route
man netstat
man ping
man traceroute (man tracepath)
man iptables (man iptables-save, man iptables-restore)
man hosts (довольно эффективное средство в некоторых случаях)
man sysctl (man sysctl.conf)
man protocols
man ethtool (настройка режима сетевой карточки)
man ldconfig
man resolv.conf
это так, на вскидку. плюс wifi или что-там на руках...

6) "инструментарий":
wireshark
tcpdump
и так далее по списку в зависимости от предпочтений.

намеренно не касаюсь OpenVPN, Squid и прочих сторонних приложений. задача же по контролю исходящего трафика в Linux до сих пор не имеет тривиального решения (imho). понятно, что на шлюзе, стоящем жопой наружу... простите, на том оборудовании, что обеспечивает связь с внешним миром при помощи сети Интернет, есть и блоклисты и логирование и чего там только нет (по ситуации и в зависимости от скилов да настроения одминского). а если линков несколько (динамическая нагрузка и/или резервные каналы с анлимом на входящий траф) то можно даже honeypod соорудить по согласованию с начальством (очень, знаете ли, в плане самообучения помогает, хех). а дальше уже можно и "предметно" расписывать под конкретную ситуёвину.

б) Mac OS X:

1) гуйня в Preferences Panel по Network, Sharing, Firewall (на 10.5.*)

2) дописать в /etc/rc.common статические маршруты, смену мака и прочую рутину коли есть в ней нужда

3) скачать и поставить две (2) программы:
Little Snitch - контроль исходящих соединений, мониторинг текущего трафика.
WaterRoof - всё остальное.

смотрим, как это выглядит:



привёл примеры статической конфигурации хоста из пресетов. смотрим на опции WaterRoof, замечаем, что шейпинг трафика тоже под рукой равно как и динамические правила. WaterRoof is freeware and open-source. Little Snitch - полнофункциональное Demo и стоит денег, что не грех и заплатить. причём автор настаивает на скачивании Demo, тестировании и оплате только если решите оставить программу себе (очень правильный и грамотный подход, Господа).

выводы делайте сами, уважаемые... по обстоятельствам...

P.S. зато аудиоплееров в Linux-е до жопы! и KDE можно запустить даже под виндой!

P.P.S. YaST -> System -> /etc/sysconfig Editor единственный вменяемый гуёвый редактор фаервола/(параметров сети), что мне известен. к сожалению для шейпинга трафика прописывать параметры лучше таки ручками в vim...

P.P.P.S. баталии ip vs ipfw vs pf не предусматривал. настоящие пацаны (Ъ) пользуют OpenBSD :) (кто к чему привык, Господа).

"А какая в этой басне мораль?
А морали нет никакой..."
*/

вторник, 18 марта 2008 г.

Сборка и настройка MPlayer для Mac OS X (Hackintosh)

*
При отсутствии повара пользуют и кухарку...
(Народная мудрость)

Всем хорош Мак, только видео в нём смотреть нечем... И нет универсального инструмента для тупенького удовлетворения насущных потребностей типа:

сконвертировать фильмец для просмотра на мобилке (Nokia 7610)
рипнуть DVD
перегнать из HDTV в обычную авишку с x264 кодеком
нарезать превьюшек для фильма
посмотреть тот же DVD в нормальном качестве (имеется в виду ГРАМОТНОЕ применение фильтров деинтерлейсинга и постпроцессинга, а не тупые шаблоны, зашитые неизвестно кем и хз куда)
и т.п.

В *nix всё это легко и непринуждённо делается связкой MPlayer + mencoder + ffmpeg, а поскольку Mac OS X тоже *nix - то нет видимых причин, что мешают нам собрать эти шедевры и для Мака. Если Вы приготовились орать о том, что дескать можно воспользоваться готовыми сборками/портами - STFU! Эти "готовые" отличаются во-первых древностью, а во-вторых не имеют в наличии нужного нам функционала.

Ежели нет желания лишний раз "топтать клаву", можно ограничиться "чем Бог послал":
Handbrake - б/м нормальный конвертор видео
MacTheRipper - A DVD extractor for Mac OS X
MPlayer for Mac OS X - готовая сборка MPlayer-а
VLC - эт типа супер-пупер видеоплеер для быдломассы... Кому как, а у меня сие поделие вызывает только рвотные позывы. Качество кода - не побоюсь этого слова - говно, да и картинка так себе...
RealPlayer - в принципе - довольно интересное и вменяемое поделие, пусть и закрытое для широкой публики. Мне сей продукт по какой-то необъяснимой причине весьма симпатичен. Несмотря ни на что - must have.
Кроме того есть "дефолтный" QuickTime, пинать который уже просто скучно, но стоит признать, что Pro версия таки прокатит под пивко... Есть DivX Player, поезд которого давно ушёл и непонятно вообще, что держит его на плаву. Может есть что-то ещё, дико проприетарное и требующее "утром деньги - вечером стулья" - в анус. Поскольку я не претендую на "истину в последней инстанции", то даже упоминание о подобных "продуктах" без предварительной 100%-ной предоплаты считаю преступным.

А наша дорога ведёт к MacPorts Project - MUST HAVE для всех любознательных Маководов (иначе получается, что купили TRUE Unix, а Unix софт и не пользуем... О том, что Xcode необходим для сих благородных забав не забыли?). Хотя надо признать и факт наличия обширной коллекции свободного софта для Мака, существующего вне рамок MacPorts (что не может не радовать). Но именно MacPorts поможет нам установить в систему все необходимые компоненты для правильной сборки MPlayer-а и ffmpeg-а. Что значит правильная? Только то, что все прочие мультимедиа приложения после этого можно смело выкинуть найух и не испытывать при сём ни малейшего дискомфорта.

Единственное, что требует "ручного" труда - библиотеки amr*.


> cat get_amr

#!/bin/sh
wget http://ftp.penguin.cz/pub/users/utx/amr/amrnb-7.0.0.0.tar.bz2
wget http://ftp.penguin.cz/pub/users/utx/amr/amrwb-7.0.0.2.tar.bz2


Версии amrnb-7.0.0.0 и amrwb-7.0.0.2 являются наиболее актуальными на сегодня. Качаем, компилим, ставим. Посетив ftp сервер можно не мудрствуя лукаво хапнуть в будущем зело более актуальный релиз. Напомню, что для легального использования этих кодеков в некоммерческих целях и сугубо для себя любимого я связался с юридическим отделом 3gpp консорциума (3GPPLegal@etsi.org) и получил официальное разрешение на компиляцию бинарников и поддержки 3gp в сторонних продуктах (MPlayer + mencoder + ffmpeg). Эта инициатива также способствовала появлению amr* библиотек и поддержке amr* в ffmpeg для репозитория packman (SuSE рулит!).

Для нарезки превьюшек накорябал убогий скриптец, работающий с ffmpeg и mencoder-ом:
movie_splitter
о его опциях в кратце можно пофтыкать в сём трэде:
MPlayer + MEncoder

Переходим к "водным процедурам". Перво-наперво - смотрим, что именно нам предстоит тащить из svn репозитория:

> cat get_mplayer

#!/bin/sh
svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer
svn checkout svn://svn.mplayerhq.hu/mplayerosx/trunk/ mplayerosx
ln -sf ./mplayer ./main
ln -sf ./mplayer ./main_noaltivec


На кой буй нам вторая строка спрашиваете - так не ограничивать же себя только консолью! Коли собираем нормальный плеер - так уж прикрутить Cocoa интерфейс и сделать всё как "у взрослых" сам Бог велел. Отдельного упоминания стоит slave режим MPlayer-а. Это значит, что он может работать как back-end для любого гуя. Imho - это гораздо правильнее, чем использовать библиотеки типа Xine, поскольку для поьзователя возможности по настройке/конфигурации режима воспроизведения MPlayer-а в slave режиме зело более привлекательны, чем тупое обращение к вызовам библиотек (того же Xine).

Создание же симлинков main и main_noaltivec необходимо для формирования должной структуры каталогов по сборке гуя для Mac OS X. По-хорошему тут должны быть не симлинки, а копии исходников с собранными бинарями mplayer-а (с поддержкой altivec инструкций и без оной), но, поскольку собирем для себя, то сии тонкости и куртуазности нам не указ.

Шаг нумеро разЪ:

> sudo port install Xft2 XviD a52dec aalib autoconf automake cdparanoia faac faad2 fontconfig freetype fribidi gettext giflib glib2 gtk2 id3lib id3tool id3v2 jpeg lame libcddb libcdio libdv libdvdcss libdvdplay libdvdread libid3tag libmad libmpcdec libogg libpng libsdl libsdl-framework libtheora libtool libungif libvorbis live555 lzo2 pkgconfig pango smpeg x264 zlib


Надеюсь, что не пропустил чего-то важного. Даже если и упустил - Вы сами сможете восполнить пробелы. Установка glib2 и gtk2 на случай если вдруг появится желание собрать и традиционный gmplayer (--enable-gui). Теперь чешем в каталог с исходниками mplayer-а и рисуем ему конфигурационный файл:


: mplayer > cat ./config_build_01

#!/bin/sh
make distclean
export PKG_CONFIG_PATH="/opt/local/lib/pkgconfig:\
/usr/X11R6/lib/pkgconfig:\
/usr/lib/pkgconfig:/usr/local/lib/pkgconfig:\
/sw/lib/pkgconfig:$PKG_CONFIG_PATH"

./configure --with-extraincdir=/opt/local/include \
--with-extralibdir=/opt/local/lib \
--enable-largefiles --enable-menu \
--disable-3dnow --disable-3dnowext --disable-fastmemcpy \
--with-freetype-config=/opt/local/bin/freetype-config \
--enable-dvdread --enable-libdvdcss-internal \
--with-fribidi-config=/opt/local/bin/fribidi-config $1
read a1
make && \
sudo make install
#EOF


Наиболее пронырливые уже могут заметить отсутствие указания на /opt/local/lib/live в выражении --with-extraincdir= . Это означает, что потоковые трансляции нам с этой сборкой не смотреть. Обусловлено по большей части моей ленью. При включении в сборку live555 сбивается механизм автоконфигурации доступных компонентов. Это характерно только для Mac OS X, так что мне просто влом лезть и разбираться. Можно конечно же попробовать чуток более навороченный вариантец конфига:


: mplayer > cat ./config_build_not_working_yet


#!/bin/sh
make distclean
export PKG_CONFIG_PATH="/opt/local/lib/pkgconfig:\
/usr/X11R6/lib/pkgconfig:/sw/lib/pkgconfig\
/usr/lib/pkgconfig:/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH"

./configure --with-extraincdir=/opt/local/include:/opt/local/lib/live:\
/opt/local/lib:/usr/include:/usr/local/include \
--with-extralibdir=/opt/local/lib:/opt/local/lib/live:\
/usr/lib:/usr/local/lib \
--enable-largefiles --enable-menu \
--enable-x264 --enable-xvid --enable-libdv \
--enable-libamr_nb --enable-libamr_wb \
--with-freetype-config=/opt/local/bin/freetype-config \
--enable-dvdread --enable-libdvdcss-internal \
--disable-3dnow --disable-3dnowext --disable-fastmemcpy \
--with-fribidi-config=/opt/local/bin/fribidi-config $1
read a1
make
read a1
sudo make install
#EOF


Да только при таком подходе придётся ещё что-то рисовать для CFLAGS и LDFLAGS (хз что если честно), иначе велик шанс нарваться на расплату (что самое обидное - так это то, что сбой идёт именно на линковке самого бинаря mplayer-а! то бишь все компоненты собраны, а собрать воедино не получается...). Посему на поддержку live555 в mplayer-е для Mac OS X 10.4 пока забил болт. Трансляции смотрю RealPlayer-ом по причине дикой идиосинкразии к vlc.

Запускаем наш ./config_build_01 и смотрим коровьими глазами на результаты (перед компиляцией он покажет итоги конфига и будет ждать нажатия на Enter для продолжения работы):


Config files successfully generated by ./configure --with-extraincdir=/opt/local/include --with-extralibdir=/opt/local/lib --enable-largefiles --enable-menu --disable-3dnow --disable-3dnowext --disable-fastmemcpy --with-freetype-config=/opt/local/bin/freetype-config --enable-dvdread --enable-libdvdcss-internal --with-fribidi-config=/opt/local/bin/fribidi-config !

Install prefix: /usr/local
Data directory: /usr/local/share/mplayer
Config direct.: /usr/local/etc/mplayer

Byte order: little-endian
Optimizing for: k8

Languages:
Messages/GUI: en
Manual pages: en

Enabled optional drivers:
Input: ftp tv cddb cdda libdvdcss(internal) dvdread(external) vcd network
Codecs: x264 xvid libdv libamr_wb libamr_nb libavcodec qtx real xanim win32 faad2 faac musepack libmpeg2 liba52 mp3lib libtheora tremor(internal) libmad liblzo gif
Audio output: openal esd sdl mpegpes(file) macosx
Video output: sdl gif89a pnm jpeg png mpegpes(file) aa opengl xv x11 xover md5sum tga macosx quartz
Audio filters:

Disabled optional drivers:
Input: dvdnav vstream pvr radio tv-teletext tv-v4l2 tv-v4l1 tv-dshow live555 nemesi dvb smb
Codecs: libdca speex toolame twolame
Audio output: sun alsa jack pulse arts oss v4l2 ivtv dxr2 nas
Video output: zr zr2 v4l2 ivtv dxr3 dxr2 vesa fbdev svga caca ggi xmga mga xvidix winvidix cvidix 3dfx dga xvmc dfbmga directfb bl xvr100 tdfx_vid s3fb tdfxfb
Audio filters: ladspa


Основное внимание - на последнюю секцию Disabled optional drivers. Если Вы видите, что лакомый кусочек недоступен - установите требуемый компонент и повторите процедуру конфигурирования. Как видите я прекрасно обхожусь без поддержки меню DVD дисков (пусть сперва заплятят за просмотр рекламы), мне не нужна поддержка Самбы (smb) и скрепя сердце отказался от live555. Оставшиеся сиротливо за бортом кодеки интереса практически не представляют (хотя кому-то может и пригодится speex). Всё прочее (видео и аудиовывод плюс фильтры аудио) для Mac OS X несущественно, поскольку... это Mac OS X, а не хвост собачий.

Собрали, поставили в /usr/local (по-умолчанию). Самое время накидать костяк конфига для себя любимого:


> cat ~/.mplayer/config

# Write your default config options here!
ao="macosx"
vo="macosx"
double="yes"
framedrop="yes"
vf=kerndeint,pp,screenshot="yes"
autoq=100
idx="yes"


Эт значит, что мы будем использовать родной вывод macosx для аудио и видео, плюс двойной буфер для получения чёткой и стабильной картинки, плюс индексацию побитых авишек и динамический режим постобработки изображения. На первых порах этого достаточно, а дальше уж сами (man mplayer).

Проверяем как оно работает. Если всё путём - чешем в каталог mplayerosx, знакомимся с содержанием Makefile-а (я заремил в нём пару несущественных строк) и собираем настоящий Какао-гуй, шоб всё как у взрослых...


: mplayerosx > cat config_build

#!/bin/sh
make clean
export PKG_CONFIG_PATH="/opt/local/lib/pkgconfig:\
/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH"
make dist


Поскольку гхм... грешен... то автоматическая сборка гуя всегда заканчивается одинаково:

..............................................................................
hdiutil: create failed - internal error


Не беда. Чешем в

mplayerosx/dist/MPlayer OSX.app/Contents/Resources/\
External_Binaries/mplayer.app/Contents/MacOS

и в

mplayerosx/dist/MPlayer OSX.app/Contents/Resources/\
External_Binaries/mplayer_noaltivec.app/Contents/MacOS


Проверяем наличие бинаря 'mplayer', который мы собрали не так давно со всем тщанием и установили в /usr/local/bin. Как правило его там не будет. Копируем ручками (хоть из /usr/local/bin, хоть из каталога с исходниками, где мы его собирали). Всё. mplayerosx/dist/MPlayer OSX.app - и есть наше чудо-юдо-приложение. Смело засовываем его в /Applications вместо прежнего убожества.

Запускаем. Command+L - покажет лог MPlayer-а и параметры, передаваемые гуём. Для полного счастья рисуем в Preferences -> Miscellaneous -> Advanced settings: Additional parameters:

-double -framedrop -vf kerndeint,pp,screenshot -autoq 100 -idx


там же при желании можно сбросить все цепочки фильтров, передаваемых гуём на исполнение, и нарисовать свою собственную.




P.S. для ffmpeg-а схалявил:

> sudo port edit ffmpeg

рихтанул сам порт, добив всего, чего душа пожелала (типа x264, libamr* и т.п.), и засадил тупенько:

> sudo port install ffmpeg

полёт нормальный :)

вторник, 5 февраля 2008 г.

А говорящий попугай никому не нужен?

*
На ваше рассмотрение, уважаемая публика, синтетические тесты Geekbench2 в Linux и Mac OS X, проведённые на одной машине со скоромными комментариями! Господа и Дамы, спешите видеть! Фигня получилась редкостная...


Начнём с Linux (Archlinux current, ядро самосборное с оптимизацией под процессор, выбрасыванием SMP и всеми прочими "допилами" для десктопа). Как видим из теста софтине можно смело ставить два балла за распознавание параметров проца (L1 и L2). Рвать же свой пушистый зад на немецкий крест и орать, что мой старичок уделает корудуру2 во все щели, верх идиотизма. Так что, Господа, что имею, то и продаю.

~ > geekbench

Geekbench 2.0.10 : http://www.primatelabs.ca/geekbench/

System Information
Platform: Linux x86 (32-bit)
Compiler: GCC 4.1.2 20070925 (Red Hat 4.1.2-33)
Operating System: Linux 2.6.23-ARCH i686
Model: Linux PC (AMD Athlon(tm) 64 Processor 3700+)
Motherboard: Unknown Motherboard
Processor: AMD Athlon(tm) 64 Processor 3700+
Processor ID: AuthenticAMD Family 15 Model 39 Stepping 1
Logical Processors: 1
Physical Processors: 1
Processor Frequency: 2.20 GHz
L1 Instruction Cache: 0.00 B
L1 Data Cache: 0.00 B
L2 Cache: 0.00 B
L3 Cache: 0.00 B
Bus Frequency: 0.00 Hz
Memory: 1.48 GB
Memory Type: N/A
SIMD: 1

Integer
Blowfish
single-threaded scalar 1657 ||||||
multi-threaded scalar 1743 ||||||
Text Compress
single-threaded scalar 1297 |||||
multi-threaded scalar 1230 ||||
Text Decompress
single-threaded scalar 1237 ||||
multi-threaded scalar 1167 ||||
Image Compress
single-threaded scalar 945 |||
multi-threaded scalar 967 |||
Image Decompress
single-threaded scalar 855 |||
multi-threaded scalar 891 |||
Crafty Chess
single-threaded scalar 1676 ||||||
multi-threaded scalar 1686 ||||||
Lua
single-threaded scalar 1433 |||||
multi-threaded scalar 1515 ||||||

Floating Point
Mandelbrot
single-threaded scalar 1327 |||||
multi-threaded scalar 1443 |||||
Dot Product
single-threaded scalar 2230 ||||||||
multi-threaded scalar 2341 |||||||||
single-threaded vector 1074 ||||
multi-threaded vector 1200 ||||
LU Decomposition
single-threaded scalar 921 |||
multi-threaded scalar 928 |||
Primality Test
single-threaded scalar 1676 ||||||
multi-threaded scalar 1264 |||||
Sharpen Image
single-threaded scalar 4279 |||||||||||||||||
multi-threaded scalar 4214 ||||||||||||||||
Blur Image
single-threaded scalar 5098 ||||||||||||||||||||
multi-threaded scalar 5716 ||||||||||||||||||||||

Memory
Read Sequential
single-threaded scalar 1439 |||||
Write Sequential
single-threaded scalar 1029 ||||
Stdlib Allocate
single-threaded scalar 1803 |||||||
Stdlib Write
single-threaded scalar 365 |
Stdlib Copy
single-threaded scalar 636 ||

Stream
Stream Copy
single-threaded scalar 947 |||
single-threaded vector 1012 ||||
Stream Scale
single-threaded scalar 978 |||
single-threaded vector 959 |||
Stream Add
single-threaded scalar 994 |||
single-threaded vector 1078 ||||
Stream Triad
single-threaded scalar 1099 ||||
single-threaded vector 750 |||

Integer Score: 1307 |||||
Floating Point Score: 2407 |||||||||
Memory Score: 1054 ||||
Stream Score: 977 |||

Overall Geekbench Score: 1608 ||||||


imo - в целом неплохо для машины трёхлетней давности, не так ли? И менять её на что-то другое нет никакого желания. Старый надёжный проверенный боевой друг.

Теперь смотрим на результаты теста в Mac OS X 10.4.10. Итоги по крайней мере где-то одинаковы. Процессор распознался очень культурно, практически все остальные промежуточные итоги чуток выше, чем в Linux. Скорее всего это можно и нужно объяснять гораздо меньшим вниманием, уделённым Linux как платформе, при подготовке тестового пакета к релизу.

Geekbench Score 1651

Version Geekbench 2.0.10
Platform Mac OS X x86 (32-bit)
Operating System Mac OS X 10.4.10 (Build 8R2218)
Processor AMD Athlon(tm) 64 Processor 3700+
Model To Be Filled By O.E.M.
Memory 1.50 GB 400 MHz DDR
Integer Score 1341
Blowfish
single-threaded scalar 176677.6 MB/sec
Blowfish
multi-threaded scalar 185676.1 MB/sec
Text Compress
single-threaded scalar 13794.41 MB/sec
Text Compress
multi-threaded scalar 13054.28 MB/sec
Text Decompress
single-threaded scalar 13495.55 MB/sec
Text Decompress
multi-threaded scalar 13655.44 MB/sec
Image Compress
single-threaded scalar 11749.71 Mpixels/sec
Image Compress
multi-threaded scalar 11569.73 Mpixels/sec
Image Decompress
single-threaded scalar 84914.3 Mpixels/sec
Image Decompress
multi-threaded scalar 85514.0 Mpixels/sec
Crafty Chess
single-threaded scalar 1389702.3 Knodes/sec
Crafty Chess
multi-threaded scalar 1431694.6 Knodes/sec
Lua
single-threaded scalar 1470566.3 Knodes/sec
Lua
multi-threaded scalar 1443555.3 Knodes/sec
Floating Point Score 2299
Mandelbrot
single-threaded scalar 15041.00 Gflops
Mandelbrot
multi-threaded scalar 15291.00 Gflops
Dot Product
single-threaded scalar 2038985.1 Mflops
Dot Product
multi-threaded scalar 2024922.7 Mflops
Dot Product
single-threaded vector 10111.21 Gflops
Dot Product
multi-threaded vector 10501.09 Gflops
LU Decomposition
single-threaded scalar 499444.5 Mflops
LU Decomposition
multi-threaded scalar 503441.3 Mflops
Primality Test
single-threaded scalar 1727258.1 Mflops
Primality Test 1360
multi-threaded scalar 252.5 Mflops
Sharpen Image
single-threaded scalar 40309.40 Mpixels/sec
Sharpen Image
multi-threaded scalar 41039.45 Mpixels/sec
Blur Image
single-threaded scalar 54224.29 Mpixels/sec
Blur Image
multi-threaded scalar 53924.24 Mpixels/sec
Memory Score 1452
Read Sequential
single-threaded scalar 16081.97 GB/sec
Write Sequential
single-threaded scalar 1130791.5 MB/sec
Stdlib Allocate
single-threaded scalar 23198.65 Mallocs/sec
Stdlib Write
single-threaded scalar 10692.21 GB/sec
Stdlib Copy
single-threaded scalar 11381.17 GB/sec
Stream Score 867
Stream Copy
single-threaded scalar 8531.17 GB/sec
Stream Copy
single-threaded vector 9301.21 GB/sec
Stream Scale
single-threaded scalar 8111.05 GB/sec
Stream Scale
single-threaded vector 9281.25 GB/sec
Stream Add
single-threaded scalar 8021.21 GB/sec
Stream Add
single-threaded vector 10401.45 GB/sec
Stream Triad
single-threaded scalar 8831.22 GB/sec
Stream Triad
single-threaded vector 6951.30 GB/sec
System Information
Platform Mac OS X x86 (32-bit)
Compiler GCC 4.0.1 (Apple Inc. build 5465)
Operating System Mac OS X 10.4.10 (Build 8R2218)
Model To Be Filled By O.E.M.
Motherboard To Be Filled By O.E.M.
Processor AMD Athlon(tm) 64 Processor 3700+
Processor ID GenuineIntel Family 15 Model 7 Stepping 1
Logical Processors 1
Physical Processors 1
Processor Frequency 2.20 GHz
L1 Instruction Cache 64.0 KB
L1 Data Cache 64.0 KB
L2 Cache 1.00 MB
L3 Cache 0.00 B
Bus Frequency 800 MHz
Memory 1.50 GB
Memory Type 400 MHz DDR
SIMD 1


Делать на основе подобных тестов какие-то выводы (да и вообще придавать таким тестам какое-то значение) - грандиозная ошибка. Потому, что на моём "Маке" игрушка Halo (мак версия, родная) тормозила так, как будто отрисовка каждого фрейма перед появлением на мониторе проходила сквозь узкое анальное отверстие бабочки. А Half-Life2, запущенный в Linux под Wine, летал и требовал подать "ещё парочку" на десерт (чувствовалось, что есть некий "запас прочности").

Несмотря на то, что система 10.4.10, драйвера на видео в Маке установлены из комбоапдейта 10.4.11. И вот какую интересную картину имеем честь наблюдать:













А теперь посмотрим на выкладки nvidia-settings в Linux:





Получается, что в семействе 10.4.х невозможно в принципе без плясок с бубном заставить видеокарту NVIDIA 6800GT работать в штатном режиме и выдавать всё, на что она способна! Куча расширений/модулей попросту недоступна, но имеется в наличии для версии драйвера 1.5.16, которую скорее всего можно и нужно зубами выдирать из 10.5.х, хотя тоже не факт, что на "операционном столе" всё пройдёт гладко. Нет, не правильно. Хз вообще где эти 1.5.16 драйвера и как их искать. Так будет более корректно. Когда-то давно видел сравнение 6800Ultra на писюке и маке, где отставание мака было очень и очень большим. Вот и думайте, проверяйте и тестируйте перед покупкой Mac OS её способность нормально работать с оборудованием. Есть правда какая-то малая вероятность, что криво встал комбоапдейт с 10.4.8 до 10.4.10, но я так не думаю. Да и базовая 10.4.8 уже просто обязана была иметь приличные драйвера на борту. Версия шейдеров на Маке также гораздо более древняя. Моветон-с, что немного странно, ведь для винды-то дрова nVidia делает. Что же мешает склепать и для мака?

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

Удачи.

понедельник, 4 февраля 2008 г.

За что, милок, деньжищи-то уплочены, ась?

- За любовь, мамо... За любовь...

Ибо ничем иным на первый взгляд нельзя оправдать выбор Apple Mac* в качестве рабочей платформы. Давайте что ли конкретно прикинем, а то "звездунов" и без того с избытком...

Mac:
Z0ED, 109 290 руб. или $4124


PC:
Toshiba Qosmio G40-11D, 85 300 руб. или $3412.20
Спецификация

ну или вот такой вариантик:
Toshiba Qosmio G45-AV680, 85 000 руб.

Размениваться на мелочи не будем. Сравниваем "флагманские" продукты. Даже беглого взгляда достаточно, чтобы понять: "железная" начинка у Мака гораздо гораздо хуже. Уполовиненная видеопамять, 160 гигов винта против 200+200 на писюке, что вместе с вариантами raid/lvm предлагает маку тихонько покурить в сторонке, да и поддержка/наличие прочего оборудования у мака ни разу не радует. Будем ли мы всё это пользовать - вопрос третий, сейчас же мы "письками меряемся", тут понты дороже. Как бы кто ни разорялся насчёт дизайна и эргономики, но факторы сии - субъективны. А ещё один убойный довод в пользу PC - это 3 (три) года гарантии против одного года на Маке. Всё. Занавес. Дальше можно не продолжать. Тема качества сборки, железа и сервиса полностью раскрыта.

Смотрим на софт:
Mac OS X 10.4 Tiger (включает Spotlight, Dashboard, Mail, iChat AV, Safari, Address Book, QuickTime, iCal, DVD Player, Xcode Developer Tools);
iLife '06 (включает iTunes, iPhoto, iMovie HD, iDVD, iWeb, GarageBand),
Microsoft Office 2004 for Mac Test Drive,
iWork '06 (30-дневная пробная версия),
QuickBooks for Mac New User Edition,
Comic Life,
FileMaker Pro trial,
Omni Outliner;
Photo Booth;
Front Row

против

Служебные программы и драйверы Toshiba
ConfigFree™
Genuine Windows Vista® Ultimate Edition Recovery DVD-ROM
Программа помощника для камеры Chicony
Система распознавания речи Toshiba
Проигрыватель HD DVD компании Toshiba
Toshiba Assist
Toshiba Value Added Package
Ulead® DVD MovieWriter® для TOSHIBA
Norton Internet Security™ 2007 (включая бесплатные обновления через Интернет в течение 90 дней)
Руководство пользователя Toshiba
Toshiba Disc Creator
Connectivity Doctor
Стек Toshiba Bluetooth™
Toshiba Bluetooth™ Monitor

Вот он, момент истины... Положа лапу на сердце субъективно заявляю: писюк нервно курит в сторонке. Причём это сразу же с условием того, что все демо/тестовые программы из пакета Мака мы выкидываем (уходят: FileMaker Pro trial, Microsoft Office 2004 for Mac Test Drive и iWork '06).

Рекламная пауза (и не стесняйтесь стрелочки потыкать вправо/влево, оно того стоит, да...)

Ладно. Прекратим пинать труп M$ и изголяться над ним. Вряд ли у нас это получится лучше, чем у "Рекламной паузы". С огромным удовольствием посмотрел все ролики, класс.

А вот есть ли преимущества в использовании Mac OS вместо Linux? Таки есть. И основное - в обилии профессионального софта для этой платформы. А есть ли преимущества в использовании Linux вместо Mac OS? Таки тоже есть. Более того, ваш покорный слуга с удовольствием использует на десктопе OpenBSD. А некоторые мои знакомые не жалеют денег, уплаченных за MS Windows XP/Vista. Другими словами: если рассматривать десктоп, то можно утверждать, что пользователь Mac OS лишён всех проблем и неувязок, с которыми сталкивается пользователь Linux, вынужденный работать в сетевом окружении с машинами Microsoft и службой AD. И если у евангелистов (Full Time Employed Microsoft Evangelist) Майкрософта есть какие-то притянутые за уши аргументы (существующие благодаря закрытым спекам продуктов самого M$) в давно проигранной борьбе с Linux, то против Mac OS они попросту бессильны. Да и инженеры Apple сделали по-настоящему хороший продукт. Подключение Мака к AD, аутентификация NTLM/Kerberos, работа Mail с MS Exchange, пользование всеми ресурсами домена AD без дополнительных телодвижений после аутентификации - всё это проходит в лёт. Единственный дистрибутив Linux, который может похвастаться чем-то похожим и предложить тот же eDirectory - это SuSE (опять же есть такое слово: Novell). Плюс к этому - AppleTalk и прочие "фишки" Apple. Не будем в конце-концов забывать, что хороша любая система, способная выполнять работу именно так, как Вам хочется и как именно Вы считаете правильным.

Я благодарен компании Apple и OSX86 сообществу за возможность попробовать на своём железе Mac OS X. Собственно поэтому и купил дистрибутив, чтобы соблюсти какие-то рамки приличий. Не жалею. Ни секунды. Что же я получил за эти деньги, кроме морального удовлетворения и шикарнейшего пользовательского интерфейса? Почитайте-ка сперва обзоры:
МакОсь из первоисточников
Статьи на ixbt
FAQ с толковой статьёй по русификации терминала в 10.4.*
Коллекция свободного софта под Maк
Ссылки на полезные книжки по Маку (а их, книжек, на Руси пока не много)

Но это всё - мишура. Инструмент, который уравнивает возможности Mac OS с Linux-ом и *BSD системами называется MacPorts. 4500 портов именно того софта, который нужен, критичен и т.п. При компиляции можно спокойно смотреть видео, слушать музыку - не будет ни рывков, ни тормозов. Где-то с 2.6.23 ядер при Fair Scheduling-е и таймерах на 1000Gz Линукс ведёт себя не хуже (а то и лучше). Я так на Linux-е смотрю видею спокойно при la в районе 6-ти или 7-ми (параллельно запущено около 9-ти сборок разных проектов, плюс радиовещание с перекодированием на лету, плюс апач, плюс vsftpd). Эт к тому, что планировщик процессов на Mac OS X позволяет жить нормально и орать от избытка чувств, что Linux круче, чем Mac OS X, в пятьсоттыщраз - не получится.

Ранее писал про VirtueDesktops - для 10.4.х систем самое оно. За конфигурацию шейпинга трафика и фаервола отвечает ipfw (в Linux сие разруливается ip + iptables). И тут наверное самое время и место показать, за что стоит любить Мак. WaterRoof. Какие, говорите, есть аналоги в линуксе? Только SuSEfirewall2 (гуй в YAST-е для базовой конфигурации фаервола) имеет ИНТЕГРАЦИЮ с системой и позволяет быренько накидать каркас будущего фаервола. Понятно, что доводка фаера до идеального состояния палюбэ будет в консоли, что в Mac OS, что в Linux (если с руками и головой всё в порядке). Но где в Linux гуй на каркас трафик шейпера? Ещё один пример из той же серии - Little Snitch. Анализ трафика, применение блок-листов и "iptables -A OUTPUT -m owner --cmd-owner" помимо прочих мероприятий по обеспечению безопасности есть рутинная работа админа, но что, простите, мешает это сделать на линуксе "по образу и подобию"? И примеров таких - не один и не два.

Стоит отдать должное таким инструментам, как Automator и AppleScript. Прямых аналогов в линуксе нет. А что действительно кладёт линукс на лопатки в борьбе за десктоп пользователя - это именно целостность всей системы и великолепнейшая интеграция всех её компонентов. Например: выделяем текст в браузере, текстовом редакторе, почтовике - да где угодно -> чешем в меню -> Services и сразу видим, что мы с этим выделенным текстом можем сделать: проверить орфографию, переслать по почте, кинуть в Sticky Note, спросить у Гугля, чего мы тут навыделяли от большого ума, кинуть сей текст в новый файл/документ и т.д. И это работает со всеми доступными элементами (текст, видео, изображения и т.п.). Человеку, не работавшему за Маком, возможно будет не просто это переварить. Посмотрите тогда ещё раз "Рекламную паузу".

Для возюкавших мышой в винде Мак может стать откровением (что всё работает, не глючит, вирусов нет, тормозов тоже нет и т.д. и т.п.). В тысячный раз повторять, что MS Vista есть ублюдочная пародия на Mac OS X (или пример бездарнейшей попытки реализовать средствами Microsoft идеи, заложенные в Mac OS X) - скучно. Альтернатива ли это линуксу? Возможно. Скорее "старший брат", компаньон. Очевидно, что именно Linux и Mac OS заколотят последние гвозди в крышку гроба винды. Посмотрите на Мак как на Unix с изысканнейшим самобытным и оригинальным интерфейсом - он это заслужил. Не нравится? Запустите любимый Enlightenment. Не получается? Выпрямляйте руки и читайте документацию. Только пожалуйста, не позорьтесь, называя Mac OS X "системой для бландинок" или "очередным проприетарным быдлоподелием". Это - хороший проприетарный Unix (с версии 10.4, где наконец-то реализовали ACL помимо прочих улучшений). Извольте относиться с уважанием, Господа.

воскресенье, 3 февраля 2008 г.

"Наш путь извилистый. Перспективы светлые!" (Товарищ Мао)

Дайте в лапы мне боян,
Я его порву к буям!

Рискну чуток "пораскинуть мозгами" по поводу установки и работы честно купленной за $130 Mac OS X Leopard на довольно старенький комп с AMD процессором на борту. Читать никого силком не гоню, так что за резковатые выражения приношу свои извинения заранее. Материальчик ориентирован в первую очередь на людей, использующих в повседневной работе *nix системы (Unix, Linux, Solaris, *BSD) и имеющих желание попробовать что-то ещё, а также на всех, кто всерьёз подумывает о покупке настоящего Macintosh-а. Все программы, на кои буду ссылаться, либо freeware, либо OpenSource. Если программа shareware - об этом будет упомянуто с указанием накладываемых ограничений, ссылок на коммерческие пакеты не будет (no pay - no gay).

Что нужно знать и уметь AMD-шнику, желающему поставить себе Mac OS X (или "Курс молодого бойца"):

1. В течение 15-30 минут утром и вечером повторять вслух и с выражением мантру:
"AMD - нашефсио! Intel - ацтой!!!"
О том, как это делать правильно, можно научиться, посмотрев запись публичных выступлений г-на Геббельса, министра пропаганды Третьего Рейха.

2. Выучить наизусть приведённые ниже ссылки и прежде чем орать дурным голосом на форумах: "Памагите бландинке с галубыми глазами разобраться в конфиге Radius-a", - постарайтесь чуток покопаться самостоятельно:
Wiki
Новости 2-го Белорусского фронта
Буржуйский форум
Наши 5 копеек
Враг не пройдёт! За AMD! В атаку!
Откуда дровишки? Из лесу вестимо...
То самое место... Ага...
Этот линк для отморозков и настоящих джедаев... Удачи и творческих узбеков...

В принципе этого должно хватить на первых порах. Надеюсь, что вы также прочли предыдущую заметку и ссылки на macports и fink не будут в диковинку.

"Взялся за грудь,
Так скажи что-нибудь..."

На данный момент ситуация с установкой честно купленной Mac OS X Leopard на писюк с процом AMD описывается одним словом: "жопа". Да и с Tiger-ом не так уж чтобы очень... И связано это по сути тем, что в линейке своей продукции Apple не использует AMD. Мало того, многие программы имеют специальные ограничители, препятствующие их запуску и нормальной работе на AMD. В двух словах - программа спрашивает процессор: "Ты кто?", и ежели оный в ответ радостно орёт: "Ja, ja, ja!" - прога выкидывает crash report и делает харакири. О том, как правильно делать себе харакири можно почитать, пройдя по этой ссылке. Рекомендованными к установке на AMD можно считать релизы Jas-10.4.8 и TubGirl-10.4.10, условно рекомендованным - Zephyros_10.5.1 и будущий Zephyros_10.5.2. Всё прочее потребует дополнительных самостоятельных телодвижений в виде пересборки инсталляционного образа dvd. А оно нам надо?

Очередная порция "библейских заветов":

1) Работает - НЕ ТРОЖЬ! Отключи автоапдейты везде, где только возможно....
2) Security updates на первых порах (да и не на первых тоже) обходи стороной.
3) Любые эксперименты с системой делай на её клоне. Т.е. сперва клонируй систему целиком на другую партицию, а потом развлекайся. Если получилось нормально - молись и пробуй сделать то же самое на production.

Теперь поменяйте памперсы и приготовьтесь к "основному блюду"! Начнём с азов: "субъект... объект... метод... и место имения...". IDE диски постепенно покидают нас, производители "мамок" как всегда "зажимаютЪ копейку" и ставят контроллеры JMicron. Поубывав бы... В этом случае надо смотреть на наличие поддержки вашего sata контроллера в инсталляционном dvd дистрибутиве. Вероятность где-то процентов 70%, что особо нетерпеливым придётся добавлять драйвер самостоятельно, перепаковывая диск. Сложного здесь ничего нет: тянем нужный драйвер, делаем имидж dvd (man dd, man hdiutil), монтируем имидж на запись, подсовываем дрова в /System/Library/Extensions/ и формируем новый кэш дровишек /System/Library/Extensions/Extensions.mkext (man kextcache), записываем результат творчества на болванку и имеем длительный множественный оргазм, если удалось загрузиться и начать установку системы. Как правило найти нужный драйвер можно на честно купленном диске с дистрибутивом. Но гораздо чаще источником проблемы является отсутствие идентификатора вашего устройства в файле Info.plist, описывающем свойства того или иного драйвера или модуля (в просторечии именуемого "кекстом" по окончании имени каталога с драйвером). В этом случае добавляем идентификатор, любезно пропущенный компанией Apple, создаём для очистки совести новый кэш и записываем наш диск. Эх, если бы все наши беды решались подобным образом...

Полагаю что все уже сгоняли в гастроном за отдельным винтом для Mac OS X, перекинули в "Бивисе" опцию грузиться сперва с dvd, а при отсутствии загрузочного диска - с этого нового винтика и встаёт раком вопрос: как его разбивать и что вообще дальше делать? "Надо думать, Петька... надо думать..." говаривал Чапай и был таки прав! Mac OS X (в дальнейшем может использоваться уменьшительно-ласкательный термин "Макака") не поддерживает целый ряд характерного для писюков оборудования - начиная с флопиков и ... (посмотрите просто на спеки Макбуков - всё станет ясно), посему ОЧЕНЬ РЕКОМЕНДУЕТСЯ при возможности подобную "дребедень" выкинуть из писюка сразу же или, как минимум, выключить в бивисе, в противном случае это дело занимает irq, которые нам на вес золота и может являться причиной тормозов а то и краха системы.

Затем по-хорошему потребуется дистрибутив Linux-а с ядром 2.6.20 или выше и скомпиленным модулем hfsplus для записи на партиции Mac OS X с отключённым журналированием. Рекомендую не использовать уже имеющийся установленный дистрибутив Linux-а для этих целей, так как в нашем случае, после успешной установки Mac OS X, необходимо, как минимум, привести в соответствие группы и пользователей Линя и Мака (сделать в Linux одинаковый с Mac OS X набор групп, пользователей, gid и uid соответственно). Кроме того нам нужен GRUB, как воздух, особенно если наши гурманские пристрастия не ограничиваются "попсовой культурой" ("Я съем вашу печень и запью её кьянти..."/Доктор Лектор). И не помешает primary FAT раздел, желательно сделать его первым на диске и отдать где-то до гигабайта, поскольку основная задача будет нести в бутсекторе установленный GRUB, в каталоге /efi - EFI загрузчик (об этом подробно чуть позже) и выполнять прочие функции фатопомойки, так как до сих пор универсальной "мусорной" файловой системы никто не придумал, хотя критерии давным-давно известны. Всю разметку нового диска AMD-шникам стоит выполнить предварительно на стадии установки на него "Спасательного Линуха" (Rescue Linux). Ставить Мак на логический диск extended partitions не пробовал, посему ничего путного сказать не смогу, но, судя по BSD корням, это делается легко и непринуждённо. Основная идея, которую хочу донести по разметке диска такова: первый primary FAT partition <= 1Gb под EFI, GRUB и "прочее", последний раздел (фиолетово, буде он primary или extended logical) размером сколько не жалко под ext2/ext3/reiserfs3.6 и монтируемый как / - для установки Linux, с которой и начинаем работу с новым диском. Фишка тут в том, что загрузившись в Linux можно грохнуть любой primary раздел, забубенить на его место extended и нарезать в нём логических дисков до... много короче. То есть сделать primary раздел сразу после FAT-а для основной рабочей Макаки вроде как очевидное решение, но потом надо учесть возможность копирования/клонирования/восстановления работоспособной системы да и рабочие программы в Маке компактностью не отличаются. Так что дерзайте, Господа хорошие... В добрый путь...


Прикинули значит как у нас будет выглядеть диск, тупенько поставили первой системой Linux, проведя в процессе установки разметку/разбивку/распивку диска и засадив GRUB в MBR для начала, грузимся в него, родного, и первым делом устанавливаем GRUB в бутсектор первого primary диска. Например так:

grub-install /dev/sda1


Теперь у нас Грубиян продублирован. Мак в процессе установки (прям как винда) перетирает MBR, и для загрузки себя, яхонтового, может пользовать EFI или Darwin boot (корни и у того и у другого в бутлоадере BSD систем, впрочем там же зарыты корни и нового загрузчика Вистоньки). После старта на бутпромпте "грузило" Мака даст нам выбор: какой именно раздел стоит "пнуть", и вот тут уж наш GRUB покажет на что способен "инструмент в руках мастера", если выбрать тот раздел, на который мы его только что засунули.

Примечание: некоторые пользователи альтернативной операционной системы предпочитают экспроприировать в глубинах интернета лекарство для сторонних бут менеджеров, некоторые честно их покупают... аффтар не использует альтернативную ОСь и подтвердить либо опровергнуть подобные инсинуации не в состоянии.

После дублирования Грубияна в бутсектор первого primary диска тащим EFI-V8.0 или выше, создаём каталог efi в корне FAT раздела или на разделе с установленным Linux-ом, распаковываем туда архив, читаем readme и в /boot/grub/menu.lst вносим строку типа:

title Darwin
kernel (hd0,0)/efi/boot_v8


Или набираем тупенько каждый раз в командном режиме указание на загрузку нашего "кернела". Мы только что установили EFI загрузчик для нашей будущей Mac OS X. Наиболее бдительные товарищи спросят: "А на кой ляд оно нам надо? С нашими-то яйцами...", простите, с AMD процессорами конечно же. Отвечаем: "Для того, чтобы в тесте Geekbench" не писали чепуху, что у нас дескать Hackintosh, и для решения всех возможных вопросов с загрузкой Мака в будущем". По сути же нам оно - как собаке пятая нога. Но и лишним не будет, так как что-то наметилась тенденция ядра делать с привязкой к EFI. В хозявстве знать пригодится.

Диск размечен, EFI установлен. Песочница готова. Теперь можно воткнуть dvd с Маком в привод и, прихлёбывая коньячок-с, тупенько клацать мышой по кнопоськам в ожидании когда же это безобразие закончится...

ACHTUNG: после того, как вы проклацали куда и что именно ставить, пойдёт зело муторная операция "verify your installation disk" -> смело жамкайте на "Skip".

Ежели вы решили отдать свои симпатии Jas-10.4.8 или TubGirl-10.4.10, то вероятность внезапного воспаления геморроидальных узлов невелика. Всё, что вам предстоит ещё сделать - так это лишь добиться включения аппаратной акселерации видео (многие программы отказываются работать без неё), выучить шорткаты и пройтись Чудо-программой, которая MUST для всех AMD-шников по всему разделу с только что установленным Маком. Почитать о ней можно в сводках 2-го Белорусского фронта. Но тупо сразу натравливать её на "всё, что шевелится", не советую. Если что-то нормально работает - НЕ ТРОЖЬ! По поводу работы с железом, в частности с видеоадаптерами, есть дивная инструкция и не менее чудные шаблоны для самых маленьких. Похоже, что применение данной методы ограничивается только рамками вашей фантазии. Проверить ваши достижения на ниве аппаратной поддержки видео поможет OpenGL Extensions Viewer. Для счастливых обладателей карточек nVidia есть популярный "набор стероидов". Владельцы ATI нервно изучают HCL (Hardware Compatibility Lists), владельцы акселераторов Intel GMA вообще не парятся с подобной ерундой. У них как правило всё и так хорошо.

Последний шаг на пути победы коммунизма - загрузка обратно в Linux и приведение списка групп, пользователей, номеров uid, gid к точному соответствию с оными в Маке. Это позволит делать безпроблемные бэкапы/восстановление напрямую из Linux без "коллизий и оказий". Поверьте, это дорогого стоит.

Как только мы добились стабильной загрузки только что установленного Мака, двигаем обратно в Linux и под рутом выполняем похожий скриптик:


#!/bin/sh

mkdir -p $HOME/backup/bootsectors
cd $HOME/backup/bootsectors

for i in $( fdisk -l | grep \/dev \
| grep -v Disk | awk '{ print $1 }' \
| awk -F/ '{ print $3 }' )
do
dd if=/dev/$i of="$i"_bootsector bs=512 count=1
done

for i in "sda" "sdb" "sdc" "sdd"
do
dd if=/dev/$i of="$i"_bootsector bs=512 count=1
done



Это мы в экстренном порядке создали бэкапы бутсекторов и MBR всех дисков и разделов в системе. Можно конечно же всё это проделать и не выходя из Мака, но разделение диска на disk и rdisk, хоть оно и логично для некоторых, но мне как-то не нравится. Да и доступа к разделам Линукса из Мака без плясок с бубном нет. Поэтому самым разумным решением будет хранить подобные бэкапы на primary FAT разделе, о котором уже неоднократно говорилось.

Если же вам леопарды нравятся зело более, чем тигры, готовьтесь к безудержному веселью:

Любовь нечаянно нагрянет,
Когда её совсем не ждёшь.
И каждый вечер сразу станет
Удивительно хорош, и ты поёшь!
/В.Лебедев-Кумач/

Донесения фронтовых спецкоров не радуют. Плюс к этому - многочисленные доклады о нестабильной работе, постоянных проблемах с сетью, видео, кошмарами с перезагрузкой и появлением на мониторе кадров из фильмов Хичкока вместо режима sleep (вместо сна, если быть проще). Если вам повезло поставить "Зефирку", запустить и добиться стабильной работы - радуйтесь. Если нет - не велика беда. Вот, возьмите конфету, нет пока никакой нужды в запуске Лео на AMD. Может поэтому и "универсального лекарства" нет.

Ваш покорный слуга коптит небо в обнимку с Тигрой, чего и всем желает. Леопарды ноне  капризные, маленькие. Пусть чуток подрастут, тогда и подумаю насчёт апгрейда.

"Эй,Тренер!
А чего эт ты тут разорался, а!?"

Действительно, чего эт я так разошёлся... Вот что по этому поводу пишет нам товарищ iZoPuH на славном форуме ru-board:

История Mac OS X на PC

Когдато давно, в американьской деревеньке купЕртино жил один чувак звали его Джоб Стивс. И однажды он изобрел Макинтош (правда его изобрел Воз Стивняк, но Джоб повернул так, что все думают, что это он изобрел, а Воз вроде как сбоку тусовался) и приделал к нему Макось, и так оно всем понравилось, что все просто свихнулись.

А в соседнем селении редмундово, неспеша пропивал свой век другой чувак, звали его Гей Билц. И Гей Биллцу макинтош очень понравился, даже не столько сам макинтош, а его макось. Надо сказать на макось он просто запал, как и все кому удавалось её поставить.

И вот однажды Гей Биллц БРОСИЛ ПИТЬ! Побрился, одел на лицо положительный имидж, улыбнулся, пришел в таком виде к Джобу Стивсу, и говорит: Слыш чувак, давай мы твою макось будем распространять и на писюках применять. Джоб Стивс сначала и против небыл, но его что-то смущало. Не сказать, что он писюки не любил, а вот Гей Биллц ему не понравился. Он ваще геев не любил, хотя и сам таковым являлся, но только никому не говорил. Ну не будем отклоняться, просто скажем, что Джоб сразу понял, что Гей его обязательно кинет.

Вот совсем не понравился ему этот неискренний Гей Биллц, и отослал его наш Джоб Стивс к первоисточникам, другими словами нахеръ. И стал писюки громко на весь мир гнобить, мол глючные они у вас, и греются сильно, и ваще корпуса у них серые некрасивые.

А сам тем временем, скинулся с другими чуваками и купили видавший виды писюк. И долгими купертинскими ночами, сидя для конспирации в подвале, они пытались свою макось на писюк прикрутить. Потому, что на самом деле понимали, что писюк машина приличная, и глючит она в основном из-за софта. И так пробовали, и этак, ну нихера не выходит, хоть ты тресни, то не грузится, то повисает, то серый экран с какимто квадратиком с нерусскими словами.Трындец вопщем. А однажды парни в тырнете наткнулись на страничку Maxxussa, качнули нужные патчи, и все у них заработало. И все следующие релизы с его помощью были лучше и стабильнее, но когда сделали версию 10.4.4 максуса решили грохнуть, чтобы баблом не делиться. А номера версий они теперь просто так меняют, у нас это называется маркетинг, и кроме мерчендайзеров им никто у нас не занимается.

А Гей Биллц, хоть и расстроился тогда но не сильно. Чуваком он оказался деятельным, и малость покумекав с3,14здил исходники KDE, прикрутил их к досу, и назвал это окна№95, на чем сильно поднялся и стал вполне уважаемым человеком..... но это уже совсем другая история.
/iZoPuH/

Всё познаётся в сравнении. Не попробовав, не разобравшись, нельзя с чужих слов выработать СВОЁ мнение о чём-либо. Это будет всего-лишь Ваша оценка ЧУЖОЙ точки зрения. Качество самой системы Mac OS X и прикладного ПО для неё (равно как и качество средств разработки) заслуживает всяческих похвал. Если Вам понравится и сфера Вашей деятельности позволит безболезненно использовать Mac - то инвестиции в линейку Mac от Apple себя оправдают. Как минимум.

В следующей заметке черкну кратенько пару строк об используемом мной ПО.

Удачи.

среда, 23 января 2008 г.

UNIX с человеческим лицом

/*
Оговорюсь сразу же: Apple - это КОММЕРЧЕСКАЯ компания, продвигающая на рынок абсолютно закрытые комплексные решения (т.е. софт+железо), что не мешает ей в тихую поддерживать проект Хакинтош/Hackintosh project и выпускать по-настоящему классную продукцию. И вот эта "тихушная" поддержка и даёт нам возможность вполне легально пользовать Mac OS X, купленную за $129 плюс/минус накладные расходы/дисконт. Вполне легально - это в прямом смысле. Всё что нам потребуется - так это подменить родное ядро на то, которое способно работать с имеющимся под рукой железом (я тут конечно же утрирую, так как для запуска Mac OS X 10.5.* ещё крайне желательно иметь процессор с поддержкой SSSE3 - не путайте с простым SSE3 - и как минимум прямые руки и умение пользоваться Гуглем). В общем затея сия требует свободного времени, любознательности, "правильного" (с точки зрения компании Apple конечно же) оборудования и знания BSD/NeXT систем.

Понаписано на эту тему предостаточно, зобанено и вырезано цензурой ещё больше. Свой путь "ламера ушастого" начинал с этой ветки славного форума ru-board, потом полностью переключился на "оффсайт" (ссылка выше). Если кому-то эти строки пригодятся - уже хорошо. А на нет и суда нет.

Как и что себе ставить - выбирайте сами (гугль в помощь). Всё, что будет далее - некий "галопом по европам" полёт мысли по закромам памяти и фиксирование в заметке наиболее ценного из того, что на ум пришло. Если где-то мной были замечены "отклонения от нормы" - буду указывать, в противном случае считайте рекомендации полностью проверенными и протестироваными в рабочих условиях. Приветствуются любые дополнения, комментарии и т.п.


* Для комфортного "проживания" без дополнительных инвестиций (окромя как в $129 за базовую систему) нам в обязательном порядке надо ставить себе пакет X11 и пакет Xcode (доступен с сайта Apple после регистрации и получения AppleID). После чего с чистой совестью ставим себе Fink и MacPorts Project, рихтуем переменную $PATH в /etc/profile и мы практически "в шоколаде": более-менее на равных с пользователями Linux, *BSD и т.п. по набору софта. Добрасываем в /etc/bashrc пару-тройку любимых альясов:

alias l="ls -la -G"
alias ls="ls -G"
alias c="clear"
alias rm="rm -i"


Жизнь становится чуток приятнее. Fink-ом али macports ставим себе mc - всё, программа-минимум выполнена.


* В /etc/rc.common лучше руками (man sudo, man nano) забить постоянные правила роутинга, смену MAC адреса сетевой карты (если требуется по какой-то причине) и прочие "рутинные" операции


* Для записи на диск Mac OS X из-под Linux-а нужно отключить опцию журналирования выбранной партиции Мак-а. Для корневой (рутовой) это делается так:

sudo /usr/sbin/diskutil disableJournal /

соответственно обратно можно включить командой:

sudo /usr/sbin/diskutil enableJournal /

После чего смело монтируем hfs+ на запись при наличии kernel >= 2.6.20 с собранным модулем hfsplus. Бэкап конечно же не будет лишним ни в коем случае.


* Запись на ntfs из-под Mac OS X проходит при помощи известного ntfs-3g:

http://macntfs-3g.blogspot.com/

Товарищу ERIK-у троекратное "Ура!" за труды.


* Обязательная "таблетка" для всех хозяев AGP видеокарт:

AGPGart driver
к сожалению релиз стабильной версии 2.2 от Joblo похоже канул в лету, нонешняя требует модификации IOPCIFamily.kext - знать опять имеем лотерею...


* Поскольку Leopard (10.5.x) требует больших (с ударением на первом слоге) "мощностей" (только не подумайте плохо, до аппетитов Вистоньки ему ох как далеко) и плясок с EFI (что само по себе есть руль, но руки пока не дошли, извиняйте, не тестил, да и желания нет), то наиболее стабильным и "вылизанным" релизом до сих пор считается Jas-10.4.8. Официальное "хакнутое ядро" версии 8.10.1 (для 10.4.10) у мну не прижилось (ставил поверх 10.4.8 системы), ядро 8.9.1 вроде пахало нормуль, но особого выигрыша в производительности по сравнению с 8.8.1 не заметил. Издержки "хакинтоша" в частности заключаются в том, что нужно чуток думать, прежде чем соглашаться с установкой любого апдейта в систему. Например: предлагают вам проапдейтить iTunes и QTime (а вы прежние апдейты не сохранили/стёрли) и после их установки iTunes так миленько намекает, что не хочет работать в системе версии меньше чем 10.4.9 (Mac MS Office 2008 тоже кстати выделывается похожим образом). Выходов из ситуации два: либо найти где-нибудь старую версию iTunes (которую Apple предусмотрительно стёрла со своих download серверов) или спокойненько открыть Terminal и отрихтовать на своё усмотрение:

sudo nano /System/Library/CoreServices/SystemVersion.plist

что проще, ась?


* Pacifist - универсальное оружие лентяев при потрошении любого установочного пакета Mac OS X (этой программе можно простить наглое требование денег в первые 20 секунд после запуска). Менее ленивые пользуют mc, джедаям достаточно голой консоли. Так ваш покорный слуга легко и непринуждённо выдрал из комбоапдейта 10.4.11 отдельно Safari и всё, что оно просило для работы в 10.4.8. Пашет изумительно. Тут главное - не переусердствовать. Рецепт где-то выглядит так:
1) "дёргаем" "аппу"/приложение
2) запускаем и смотрим на что ругается
3) тащим оставшиеся требуемые компоненты
Чтобы не открывать любое новое приложение в терминале с дебагером для выяснения точной причины, "чаго милому не хватат", пользуем TinkerTool, где помимо прочего указываем на вкладке Applications, что желаем видеть "crash report" ежели чего не так.


* Пример грамотной русификации систем 10.4.х


* Если вы добились чего-то похожего для своей видеокарты:

NVIDIA GeForce 6800 GT:

Chipset Model: NVIDIA GeForce 6800 GT
Type: Display
Bus: PCI
VRAM (Total): 256 MB
Vendor: NVIDIA (0x10de)
Device ID: 0x0045
Revision ID: 0x00a1
Displays:
Acer MFM DVI:
Resolution: 1280 x 1024 @ 75 Hz
Depth: 32-bit Color
Core Image: Supported
Main Display: Yes
Mirror: Off
Online: Yes
Quartz Extreme: Supported
Rotation: Supported
Display:
Status: No display connected


то смело ставьте VirtueDesktops и получите в своё распоряжение инструмент, в чём-то превосходящий по возможностям и Compiz и Metisse вместе взятых. Rich Wareham - примите вагон респектов пожалуйста!


* UNO - лучшая косметика для вашего котёнка. imho - MUST HAVE!


* Неплохая подборка Open Source софта на все случаи жизни, правда незаслуженно обошли вниманием wget, да и не только его, но в целом подборка нормальная.


* Ещё один весёленький наборчик из мира Open Source. Самое забавное здесь именно то, что поставить Linux на свой родной Mac, есть довольно здравая идея, особенно если Mac не нов, а хочется всяческих "рюшечек и красявостей". Тут наблюдал рожу одного "маковода", поставившего себе новый Mac MS Office 2008, изумлённого тем, как Word после запуска (т.е. blank document template, ни буковки ещё никто не успел написать) кушает от 750 до 800 Мб оперативки, а Excel приближается к гигабайту (кто бы мне мою рожу в тот момент со стороны показал...). Вполне объяснимое желание стимулировать продажи любой ценой (или пример прекрасного взаимопонимания между корпорацией Microsoft и производителями железа).


* Jing - очень достойная софтина для скриншотов своего рабочего стола и изготовления видео роликов, чем-то напоминает recordmydesktop.


* AppleJack - шикарнейшее средство от перхоти при возможных сбоях и/или неудержимом желании загрузиться в single user mode без гуёв. Очередной MUST HAVE!


Пара советов: не храните важную информацию (бэкапы) на FAT дисках/партициях. Сделайте для этих целей отдельный "Format: Mac OS Extended" диск и проверьте его доступность при загрузке в single user mode. Как только вы получите в своё распоряжение работающую систему - выполните в терминале одну простую команду:

> sudo tar cvvjf /Sys_Lib_Backup.tar.bz2 /System /Library /mach_kernel /mach.sym

это очень помогает... потом... когда думать становится лень и появляется ощущение вседозволенности :).

Мультизагрузка (например M$ Vista + Linux + Mac OS X + ... + ) легко достигается установкой grub legacy в MBR и записями 'rootnoverify'+'makeactive'+'chainloader +1' в /boot/grub/menu.lst. Этот "рецепт" достаточно универсален и работает как для загрузки Висты, так и для Mac OS X, OpenBSD и прочих...

Удачи!

P.S. ACHTUNG! Если у вас всё заработало как и должно, то "Возвращаться" после Mac OS X в M$ или Linux может быть ой как тяжко...