2012-03-01 4 views
1

О mac, например:Почему современные приложения используют столько RSS даже с небольшим количеством данных?

Почему текстовые редакторы используют 30MB RSS только для текстовой панели, менее 1K символов, открывают/сохраняют, находят/заменяют и некоторые другие основные функции? Они использовали меньше, чем за несколько лет до этого, но их функциональность не изменилась.

Почему Firefox использует 500 ~ 1000 МБ rss при просмотре нескольких веб-страниц по несколько сотен КБ каждый? Почему он использует 300 ~ 500 МБ только для запуска, даже без аддона?

Почему Safari действует одинаково, даже если предполагается использовать библиотеки какао, которые должны использоваться совместно и в VSZ, а не RSS?

+2

RSS? Не могли бы вы прояснить, что, по-вашему, вы подразумеваете под этим, потому что это, по-видимому, не то же самое, что и я. – deceze

+1

@deceze - резидентный размер набора Я подозреваю – Flexo

+1

Да, размер резидентного жителя –

ответ

1

Есть много ответов на это, и я проволочки, так вот он идет :)

  • Для лучшего или хуже, требования к системе повышения программного обеспечения, потому что те его развития считают, что большее количество аппаратных ресурсов доступный типичному пользователю своего программного обеспечения. Это означает, что:
    • Меньше ресурсов для разработки можно потратить на тонкую настройку (например, используя высокоуровневые рамки программирования, затрачивая меньше времени на разработку для оптимизации использования ресурсов и внедрения новых функций и исправления ошибок в работе).
    • Новые функции могут быть добавлены к программному обеспечению (я не знаю о текстовых редакторах, но вы, вероятно, будете удивлены, если кто-то посчитает количество новых функций веб-платформы, которые поддерживали браузеры в течение последних нескольких лет.)
    • Различные компромиссные памяти/производительность может быть сделано (т.е. кэширование больше материала в памяти)
  • использование памяти простых приложений на Mac - см Why do Cocoa apps use so much memory?. В принципе, ваше понимание заданного размера резидентства довольно упрощено.
  • использование памяти
  • браузеров
    • Использование памяти в основном зависит от содержания браузеры должны отображать. Вы можете подумать, что у вас загружена страница «несколько сотен тысяч килобайт», когда на самом деле типичной веб-страницей является приложение с кодом для обработки или отслеживания ваших кликов, несколько суб-приложений (по одному для каждого типа «как» и «+1», или для рекламы), с другим приложением для встроенного на страницу флеш-апплета и т. д.
    • Программное обеспечение сложно, а браузеры очень сложны в частности (например, Firefox имеет more than 9M lines of code according to ohloh). Таким образом, простая оптимизация может стоить намного дороже, чем вы думаете.
      Недавний пример, который я видел (681201): когда вы перезагружаете Firefox и не загружаете страницы в вкладках, прежде чем переключаться на вкладку, каждая «пустая» вкладка по-прежнему использует несколько сотен КБ. Это связано с тем, что на каждой «пустой» вкладке есть пустой HTML-документ, загруженный в него, и настраиваемая полнофункциональная среда JavaScript, готовая к выполнению кода.
      Кажется, легко исправить (просто не создавайте пустой документ для пустых вкладок!), Но для изменения этого требуется аудит большей части кода браузера, который работает с вкладками, чтобы правильно обрабатывать случай «пустой вкладки» и, что еще хуже, требует изменений для надстроек, которые зависят от каждой вкладки, имеющей документ. Таким образом, хотя постепенно совершенствуются (до 160K за вкладку с более чем мегабайта), это не так просто, как кажется.