Итак, обчитавшись журналов «Хакер» и принципов работы упаковщиков файлов я решил провести небольшой эксперимент.

Я долго смотрел на супермаленькое ядро браузера Opera. Особенно это мне нравилось раньше. Мол, меньше места и все такое. Но взяв в руки пакер исполнительных файлов UPX я понял что минимализм ядра – обманчив.

Подопытные: Opera 9.51 билд 10081, Mozilla Firefox 3.0, Ultimate Packer for eXecutables 3.00w.

Скопировав opera.dll в папку с UPX и набрав в консоли upx -d opera.dll я увидел, что файл opera.dll сжат на 45,57 %. В итоге из 3 мегабайт данных он раздулся аж в целых 7,6. А вот распаковка xul.dll – ядра Mozilla мне не дала результатов, поэтому можно предположить, что ядро Mozilla и так не сжато. А по размеру разница между ними составляет порядка 1,5 мегабайт.

В итоге получилось вот что:

UPX: Opera vs. Mozilla

Дальше я решил отследить количество памяти, используемое браузером. До распаковки было так:

Opera перед распаковкой

После – так:

Opera после распаковки

Первый столбец – процесс, второй – пользователь, третий – ЦП, четвертый – время ЦП, пятый – память, шестой – вирт. память. Остальные два – объекты GDI и число записей. Может,  разбежности и не слишком большие, но все-таки они существуют, и не совсем понятно: зачем они паковали файл, ведь это занимает лишнюю память + ресурс процессора (во время распаковки файла в память).

Тем не менее: если сравнить стандартные навоторы Opera и Firefox, то Firefox просто ОГРОМЕН. Он ведь не содержит дополнительно в поставке IRC и email клиенты, полный пакет локализации и еще некоторые  мелкие фичи, доступные в Opera. К тому же в процессе работы занимает больше памяти чем Опера. И это, фактически, за счет ядра. Эксперты из Mozilla поясняют такую раздутость Gecko его коммерческим прошлым и обещают со временем добиться солидной оптимизации программы.

Ну что ж. А нам остается только ждать. Firefox имеет очень большое сообщество, способное прийти на помощь разработчикам. Куда лучше и оптимизированнее работает Safari на движке WebKit. Он проходит все ACID-тесты (третий в найтли-сборках) и, возможно, движок можно признать лучшим решением для всех и для каждого  с его 5-мегебайтовым несжатым (!) размером и быстрым рендером. Но, у WebKit слишком маленькое сообщество, это новый игрок рынка, пришедший к нам из Linux, доведенный до ума Apple. К тому же, нету пока что нормального свободного браузера на его основе для всех, каким является тот же Firefox. Выход последней версии QT 4.4 с поддержкой WebKit и признание движка компанией Nokia/Trolltech, включение этого движка в мобильные телефоны и пратформу Qtopia дает серьезный шанс выбиться ему в лидеры и затмить коммерческих конкурентов. Но это уже другая истроия и как будет дальше – покажет время.

1 звезда -фе2 звезды - бе3 звезды - ч0тк0 так4 звезды - хороший коньяк5 звездочек - отличный, божественный коньяк (Еще не оценили)
Загрузка ... Загрузка ...

Один ответ в “Что скрывает за собой маленький размер Opera?”
  1. inst inst UKRAINE Ubuntu Linux Mozilla 1.9.1.3pre :

    На самом деле от этого сообщества Firefox никакого толку я не вижу. Под моей Ubuntu он как в первой версии появился, так дизайн и не менял (в отличии от Windows-клона), как во второй версии тормозил, так и сейчас продолжает (версия-то уже 3.5!). Да и вообще для текущей версии Ubuntu последней поддерживаемой считается 3.0 ветка, так что 3.5 у меня с изменённым значком и названием (копирастические ограничения) да ещё и на английском (хотя для меня это в общем-то и не страшная проблема).
    Другое дело, что пользоваться-то больше и нечем, так как Opera – KDE, а Firefox – больше для GNOME (родная среда для Ubuntu).

  2.  
Оставить комментарий


Compatible with UTF-8 [Valid RSS]Valid XHTML 1.0 TransitionalValidated by HTML Validator
Copyright © 2008 Onix N.