Как делаются дети – Pixar

Смотрим как делаются дети – плохие и хорошие :) Pixar как всегда на высоте!

Стрижка В Поддержку Linux :)

На прошлой неделе я сделал стрижку показывающую мою поддержку Linux, а в частности Gentoo. Несём образование в массы :)

Haircut showing Linux support

Прическа в поддержку Linux - сторона А

Haircut showing Linux support - side B

Прическа в поддержку Linux - сторона Б

Плазмоид Для Отображения Загрузки Процессора (KDE4)

Поправочка: В KDE 4.3.x  появилась более продвинутая версия этого плазмоида, показывающая загрузку процессоров ядром и пользовательскими прогами разными цветами, показывающая используемый своп и память и т.д.

Я начал использовать плазмоид Coremoid с тех давних пор когда KDE 4 был доступен только из SVN. Плазмоид сидит в панели задач и показывает нагрузку на процессор по всем ядрам (если у Вас современный процессор) плюс текущий governor (алгоритм изменения частоты процессора в зависимости от нагрузки). Мне большего и не нужно. Часто бывает полезным чтобы вовремя заметить что какой-то процесс отжирает проц. Да и вообще как-то спокойней с ним – знаешь что происходит :)

The look & feel of Coremoid plasmoid

Так выглядит Coremoid в панели задач

К сожалению исходники которые можно скачать с kde-look.org уже давно не компилируются с последними версиями KDE, включая стабильный KDE 4.2.x. Я сделал необходимые изменения в коде чтобы он компилировался с последними стабильными кедами и выкладываю исходники здесь.

Скачать coremoid-0.3.1-andrew.tar.bz2

Оптимизация Aptana Studio

Недавно я решил выбрать приличный IDE для программирования на PHP и Python. Из бесплатных естественно :) Будучи наслышанным об Aptana Studio решил взвести её и посмотреть собственно за что её хвалят. Года 2 назад у меня уже был опыт работы в клипсе (Eclipse) + PHPEclipse – неплохая среда но всё таки слишком медленная, за что и была уничтожена и заменена на Vim.

Aptana построена на базе Eclipse и конечно же по производительности ничем не выделяется. Но на этот раз я уже решил соптимизировать Java машину чтобы посмотреть как она будет вести себя на современном железе. Итак, мы будем редактировать файл AptanaStudio.ini находящийся у меня в папке «C:\Users\<ИМЯ ПОЛЬЗОВАТЕЛЯ>\AppData\Local\Aptana Studio 1.2″ . Именно туда он устанавливается по умолчанию на Висте.

Содержание моего файла приведено ниже.Я объясню значение каждого параметра который я добавил или изменил. Все добавленные или измененные аргументы идут после аргумента -vmargs.

-name
Aptana
Studio
-vmargs
-Xmx384M
-Xms128M
-Xverify:none
-XX:+UseParallelGC
-XX:+AggressiveOpts
-XX:+UseFastAccessorMethods
-XX:CompileThreshold=100
-Djava.awt.headless=true
-Djava.awt.nativeDoubleBuffering=true

  • Xmx384M – максимальный размер кучи (памяти) Aptana может съесть (384Mb). Это значение обычно вычисляется инсталлятором автоматически на основе объема памяти установленной на Вашем компьютере. Увеличьте это значение чтобы дать Java машине больше памяти для кеширования скомпилированного кода
  • Xms128M – начальный размер кучи. Минимальный объем памяти используемый Aptana. Увеличение этого значение немного ускорит начальную загрузку
  • Xverify:none – пропустить стадию проверки классов при их загрузке. Даёт выигрыш во времени загруки  в 10-15%
  • XX:+UseParallelGC – использовать параллельный сборщик мусора. То что надо для современных мультиядерных или мультипроцессорных систем. Дает прирост в производительности за счет выполнения нескольких стадий сборки мусора параллельно
  • XX:+AggressiveOpts – включает агрессивную оптимизацию кода. В будущих релизах Java машины этот параметр будет всегда включен
  • XX:+UseFastAccessorMethods – без лишних слов увеличивает производительность
  • XX:CompileThreshold=100 – этот параметр увеличит начальное время загрузки, поскольку Java машина будет компилировать в инструкции процессора больше методов и быстрее чем это было бы сделано по умолчанию. В результате Aptana будет более «отзывчивой» после загрузки посколько больше кода будет скомпилировано чем транслировано. Это значение обозначает количество раз которое должен быть вызван метод перед тем как код будет скомпилирован в инструкции процессора.
  • Djava.awt.headless=true – эта строчка находится в .ini файле по-умолчанию
  • Djava.awt.nativeDoubleBuffering=true – использовать «железный» двойной буфер. Не уверен что это работает из-за присутствия опции указанной выше которая говорит AWT что станция не имеет дисплея и клавиатуры.

Результатом изменения .ini файла является более шустрая Aptana, хотя конкретный прирост в производительности зависит от многих факторов. Я также использую цветовую схему Port of Ruby Blue – выглядит довольно неплохо!

Aptana Studio with color theme port of ruby

Aptana Studio с цветовой схемой "Port of Ruby Blue"

«Нет» – genkdesvn!

Как известно недавно команда KDE выпустила стабильную версию 4.2. Я регулярно компилил KDE из горящего trunk уже на протяжении полгода, но в последнее время всё больше стал замечать что процесс вылавливания багов и запуска кед (с N-ой попытки) приносят всё меньше удовольствия. Поскольку 4.2 это стабильная версия с большинством фич ветки 3.5 я решил мигрировать на неё :)
«До свиданья» genkdesvn! Да здравствует KDE 4.2 :)

Ньюансы Восстановления Корневого Раздела Linux Из TAR Архива

Недавно мне нужно было создать новый раздел на моем ноутбучном диске. Захотелось OS X панимаешь ли, руки чешутся :)    Но так как свободного (неразбитого) места на диске не было то надо было подвинуть любимый Gentoo. Тут начались трудности – оказалось JFS (супер файловая система) в которую был отформатировань корень не позволяет делать shrink разделу. Тоесть для того  чтобы уменьшить раздел нужно забэкапить все данные, удалить его, создать новый меньшего размера и наконец восстановить данные. Вроде бы всё достаточно просто, делаем следующее:

  1. 1. Создаем бэкап корневого раздела: tar -cvpjf --sparse --one-file-system backup_of_root.tar.bz2 /
    Примечание
    : ничего кроме файлов из корневого раздела в архиве не будет так как указана опция –one-file-system (не будет /dev, /proc, смонтированных разделов и т.д.) ВНИМАНИЕ! Если ваша файловая система монтируется с поддержкой расширенных атрибутов или вы используете SELinux – используйте pax или star вместо tar
  2. Загружаемся с live CD и удалить раздел а также создать новый меньшего размера (или 2 раздела) с помощью fdisk
  3. Форматируем новый корень: jfs_mkfs /dev/sdaN (N это номер раздела с Gentoo)
  4. Восстановливаем файлы из бэкапа: tar -xvpjf  backup_of_root.tar.bz2
  5. Перегружаемся, делаем глубокий вдох и… получаем kernel panic :)   В моем случае это было «Kernel panic – not syncing: Attempted to kill init!» Сообщение не говорящее ни о чем кроме того что init облажался.

После недельной отладки ядра с помощью printk а также отладки linuxrc в образе initrd оказалось что скрипту init для жизни не хватает двух файлов в /dev, а именно /dev/console и /dev/null. Причем об этом он Вам не скажет ни за что в жизни (поскольку отсутствует /dev/console) :)

Так что всё что Вам нужно сделать чтобы перестать рвать на себе волосы это:
mknod /dev/null c 3 1
mknod /dev/console c 5 1

Удачи!

Страшное Падение Даниэля Альбрехта (Скоростной Спуск)

Вчера Даниэль Альбрехт очень неудачно приземлился буквально в сотне метров от финишных ворот на тренировке при подготовке к скоростному спуску в Kitzbühel, Австрия. Такое впечатление что он просто не ожидал настолько затяжного прыжка и слишком рано начал выпрямлять ноги.. Падение наверняка будет стоить несколько месяцев восстановления. Очень надеюсь что с ним не случилось ничего серьезного. Меня как поклонника слалома гиганта и скоростного спуска эта тема очень волнует.

Видео показывает чего может стоить ошибка совершенная на скорости 138 километров в час..

JFS – Мой Выбор Как ФС Для Корневого Раздела Gentoo

Я хочу поделиться своим опытом в выборе файловой системы для корневого раздела Gentoo. После долгих поисков в инете на тему хорошей файловой системы общего назначения я пришёл к выводу что в основном люди выбирают между ext3, ReiserFS и XFS. Что ж – у меня есть комментарии к каждой из них :)

Ext3 это старая добрая ext2, существующая еще с бородатого 1993 года, с прикрученной к ней журналом. То что файловая система изначально не разрабатывалась как отказоустойчивая (журналируемая) это уже минус. Хотя некоторые находят в этом и плюс – удалите журнал с ext3 и получите ext2 :) Хотя после такого трюка я бы использовать файловую систему не стал – слишком велика вероятность запороть систему при выключении питания, зависании дров и т.д. Как по мне то ext2 можно использовать разве что для boot раздела который отмонтируется как только система загрузится. И всё таки ext3 с журналом достаточно надежна – её по умолчанию предлагает большинство дистрибутивов Linux. Из недостатков стоит отметить жуткие тормоза при увеличении количества файлов в папке (при кол-ве файлов в 20000 комманда ‘ls’ занимает несколько секунд) а так же время которое занимает fsck. Упаси Вас Господь запустить fsck на разделе размером 1TB или больше (а такие разделы уже давно не редкость) – можете считать что день (или ночь) у Вас свободен :) А ведь в некоторых дистрибутивах fsck запускается автоматически через 30 mount’ов. Поверьте, я знаю что это такое :)

ReiserFS – интересная файловая система :) Интересная в первую очередь тем что её отец и создатель – Hans Reiser, признан виновным в убийстве первой степени (убил свою жену). Естественно об активном развитии ReiserFS пока, к сожалению, не может быть и речи. Что касается технических показателей – ReiserFS показывает очень хорошую производительность при большом количестве мелких файлов. Однако нагрузка на процессор у ReiserFS при этом существенная – намного больше чем у ext3, XFS и тем более JFS. Кроме того система не очень стабильна при отключении питания и сбоях в железе – многие будут с этим спорить однако случаев потери данных с ReiserFS достаточно много. 3-я версия файловой системы включена в ядро и достаточно стабильна, в то время как 4-я версия всё еще в разработке и повидимому разработка её так и не завершится. Лично я использовал бы ReiserFS как файловую систему для раздела хранящего кэш прокси сервера. Для этой цели она подходит идеально.

XFS – достойный выбор. Очень хорошо показывает себя при работе с большими файлами (а значит больше всего подходит для разделов хранящих видео:)). Однако стабильность в случае отключения питания или сбоев в железе далеко не на высоте. Если погуглить на эту тему то можно найти достаточно подтверждений этому. Нагрузка на проц так же не высока. Общая производительность чуть лучше чем у ext3. По набору всевозможных фич – одна из первых. Однако и недостатков тоже хватает – кроме вышеупомянутой нестабильности при сбоях так же нет комманды undelete, файловая система не может быть уменьшена, создание директорий занимает намного большее время чем в других ФС.

JFS – файловая система разработанная IBM еще в древние времена для OS/2, а в последствии для AIX

  • полностью 64-битная (в отличии от ext3)
  • размер места под i-nod’ы (дескрипторы файлов) является динамическим – тоесть нет ограничения на кол-во файлов (опять же в отличии от ext3)
  • внутреннее представление файлов в директории позволяет эффективно управлять как директориями с небольшим кол-вом файлов так и директориями с огромным кол-вом файлов
  • поддержка как внутреннего (находящегося на том же разделе что и сама ФС) так и внешнего (находящегося на другом устройстве) журнала
  • разработана для больших систем – гарантируется одинаковая производительность как на мелких файлах так и файлах размером до 4-х петабайт
  • fsck работает с космической скоростью – намного быстрее ext3 и ReiserFS
  • Расчитана на работу на многопроцессорном железе – код оптимизирован для работы на системах с 4-мя ядрами и более
  • Нагрузка на процессор при файловых операциях минимальна – меньше чем у ext3 и намного меньше чем у ReiserFS

Есть конечно же и недостатки – невозможность уменьшить раздел (необходимо создавать новый) и относительно малое количество пользователей Linux которые её себе установили. А вот увеличить раздел – просто секундное дело. Весь код уже в ядре – всё что нужно это перемонтировать систему с флагом resize!

#mount -o remount,resize /home

Производительность JFS выше чем у ext3 и xfs, особенно с Deadline шедулером (вместо CFQ включенного в ядро по-умолчанию).

Я установил JFS еще в прошлом году и прошло уже больше 6 месяцев – ни единой проблемы. Для меня JFS остается наиболее технологичной, производительной и надежной файловой системы – именно поэтому я доверил ей корневой раздел Gentoo :)

Пожевать перед сном? Спасибо, не надо :)

«Завтрак съешь сам, обед раздели с другом, а ужин – отдай врагу»

Всем прекрасно известна эта пословица. И думаю что как и все пословицы – возникла она не просто так. Как хочется чаю с пироженным или кусочком торта вечером, или пива с чипсами, или еще чего нибудь – а можно и всё вместе ;)

Увлеченный вот этой статьей решил попробывать что же это такое – не есть вечером. Поскольку мне уже давно не 25 то можно :) Ложусь я обычно часов в 12 ночи а это значит что переставать есть мне нужно в 12-4 = 8 часов вечера. После 8-ми – только кефир или чай.

Вчера был первый день – получилось! Посмотрим как будет дальше :)

Ужин – Ваш Главный Враг

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

Как считает сегодня часть ученых, рассказывает кандидат медицинских наук Зиновий Белкин, российский диетолог с мировым именем, на уровне организма у человека работают так называемые «большие биологические часы». Суть теории заключается в том, что физиологические процессы в организме управляются особым отделом мозга гипоталамусом. Он, свою очередь, руководит работой гипофиза, особой железой, где вырабатываются многие гормоны, влияющие на рост и старение организма.

Мы не можем сами изменить работу внутренних органов, что, в общем-то, хорошо – в противном случае человек мог бы взять и остановить, например, биение сердца, что привело бы к смерти. Но за защиту от произвольных решений приходиться платить наличием механизма старения.

С возрастом чувствительность гипоталамуса начинает снижаться. Обычно точкой отсчета для «времени старения» служит возраст в 20-25 лет. И вот тут начинается самое интересное.

Гипоталамус продолжает давать команды на выработку гормона стресса кортизола, половых гормонов и гормонов, отвечающих за аппетит. Получается, уровень этих гормонов в крови все время увеличивается. Собственно, в наличии гормона стресса нет ничего отрицательного. В определенных дозах он мобилизует организм. Уже и психологи согласились, что небольшие стрессы скорее полезны, чем вредны. Назначение половых гормонов и гормонов аппетита понятно без особых пояснений. Но со временем уровень всех трех групп гормонов в крови начинает зашкаливать, и тогда они провоцируют процессы старения. А вот гормоны роста (соматотропные гормоны), способствующие росту мышечной ткани и двигательной активности, наоборот, с годами начинают угнетаться жирами.

Что происходит, если человек не ест на ночь? Вечерний голод растормаживает выработку гормонов роста. Когда мы перестаем есть, организм начинает экономить глюкозу и перерабатывать собственный жир. Это доказано хотя бы на экспериментах со спортсменами, которых погружали в короткий электросон на голодный желудок днем, после чего у них наблюдался повышенный рост мышц. Среди гормонов роста есть и мелатонин, от действия которого мы буквально проваливаемся в сон. Но после обильного приема пищи на ночь организм настолько «бодрится», что мелатонин не вырабатывается, и мы не можем уснуть.

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

Конечно, для каждого человека схема правильного питания своя, но некоторые общие рекомендации по диете от известного специалиста, способствующей сохранению молодости, можно обозначить. Сразу отметим, что детям и молодежи лет до 25 придерживаться голодной диеты на ночь не стоит. И чем младше ребенок, тем ближе ко сну он должен принять пищу. Голодание, хоть и вечернее, во время роста организма чревато недоразвитием малыша. Противопоказаниями для вечернего голода являются язвы желудка и двенадцатиперстной кишки.

Людям старше среднего возраста не стоит принимать пищу уже за 4-5 часов до сна. Вечером лучше есть белковую пищу (для занимающихся спортом это вообще единственно правильный выбор), легкие овощи и запивать это все нежирным кефиром или зеленым чаем. Углеводы оставляем на обед, так как энергию из них человек потребляет днем. Жиры также правильней употреблять в обед, хоть и расходуются они ночью.

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

Переходить к такой схеме питания специалисты советуют постепенно. И если соблюдать ее потом постоянно, тогда ваши «большие биологические часы» станут работать на вас.

Взято на Utro.ru