Почему хром-браузер 63 намного больше, чем 62?

Я заметил, что apt оценивает обновление, чтобы занять 48,1 МБ больше места при обновлении с 62.0.3202.94-0ubuntu0.16.04.1317 до 63.0.3239.84-0ubuntu0.16.04.1. Я пролистал apt changelog chromium-browser и не вижу ничего, что описано как занимающее намного больше места. Есть ли быстрый способ узнать, какие файлы изменились с apt или кто-нибудь, кто знает или найдет причину?

$ apt list --upgradable
chromium-browser/xenial-updates,xenial-security 63.0.3239.84-0ubuntu0.16.04.1 amd64 [upgradable from: 62.0.3202.94-0ubuntu0.16.04.1317]
chromium-codecs-ffmpeg-extra/xenial-updates,xenial-security 63.0.3239.84-0ubuntu0.16.04.1 amd64 [upgradable from: 62.0.3202.94-0ubuntu0.16.04.1317]
$ sudo apt dist-upgrade
The following packages will be upgraded:
chromium-browser chromium-codecs-ffmpeg-extra
2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 74.4 MB of archives.
After this operation, 48.1 MB of additional disk space will be used.
6
задан 14 December 2017 в 00:19

1 ответ

Разница в размере, похоже, из нового двоичного файла v8_context_snapshot_generator. Я извлек содержимое дэбов и сравнил их:

$ ls -sSh 6*/usr/lib/chromium-browser
61/usr/lib/chromium-browser:
total 222M
132M chromium-browser      5.0M libGLESv2.so                1.5M libVkLayer_unique_objects.so        1.1M chrome_200_percent.pak    220K natives_blob.bin       4.0K WidevineCdm            4.0K v8_build_config.json
 14M resources.pak     3.0M gn                  1.5M libVkLayer_swapchain.so         784K libVkLayer_threading.so   152K mus_app_resources_200.pak  4.0K angledata             0 libs
 13M ui.service        2.9M test_ime_driver.service         1.4M keyboard_resources.pak          772K chrome_100_percent.pak    128K views_mus_resources.pak    4.0K locales
9.8M icudtl.dat        2.6M libVkLayer_core_validation.so       1.2M brotli                  576K libwidevinecdmadapter.so   92K mus_app_resources_100.pak  4.0K plugins
9.0M headless_lib.pak      1.9M libVkLayer_parameter_validation.so  1.2M flatc                   508K libEGL.so          40K xdg-mime           4.0K swiftshader
6.7M font_service.service  1.6M libVkLayer_object_tracker.so        1.2M proto_zero_plugin           508K libwidevinecdm.so      36K xdg-settings           4.0K mus_app_resources_strings.pak
6.6M toolchain.ninja       1.5M snapshot_blob.bin           1.1M transport_security_state_generator  472K character_data_generator   16K chrome-sandbox         4.0K args.gn

63/usr/lib/chromium-browser:
total 270M
134M chromium-browser           3.0M test_ime_driver.service         1.2M snapshot_blob.bin           504K libEGL.so               44K chrome_100_percent.pak.info         4.0K WidevineCdm
 44M v8_context_snapshot_generator  2.7M libVkLayer_core_validation.so       1.2M brotli                  492K libwidevinecdm.so           44K chrome_200_percent.pak.info         4.0K angledata
 14M resources.pak          2.6M gn                  1.2M proto_zero_plugin           472K character_data_generator    40K xdg-mime                4.0K locales
 13M ui.service             1.9M libVkLayer_parameter_validation.so  1.2M flatc                   212K natives_blob.bin        36K views_mus_resources.pak.info        4.0K plugins
9.8M icudtl.dat             1.6M v8_context_snapshot.bin         1.1M transport_security_state_generator  188K headless_lib.pak.info       36K xdg-settings                4.0K swiftshader
9.1M headless_lib.pak           1.6M libVkLayer_object_tracker.so        1.1M chrome_200_percent.pak          156K resources.pak.info          16K chrome-sandbox              4.0K mus_app_resources_strings.pak
7.3M toolchain.ninja            1.5M libVkLayer_unique_objects.so        792K chrome_100_percent.pak          128K mus_app_resources_200.pak   12K mus_app_resources_strings.pak.info  4.0K args.gn
6.5M font_service.service       1.5M libVkLayer_swapchain.so         776K libVkLayer_threading.so         112K views_mus_resources.pak     12K mus_app_resources_100.pak.info      4.0K v8_build_config.json
5.3M libGLESv2.so           1.4M keyboard_resources.pak          576K libwidevinecdmadapter.so         72K mus_app_resources_100.pak   12K mus_app_resources_200.pak.info         0 libs

$ file 63/usr/lib/chromium-browser/v8_*
63/usr/lib/chromium-browser/v8_build_config.json:          ASCII text, with no line terminators
63/usr/lib/chromium-browser/v8_context_snapshot.bin:       data
63/usr/lib/chromium-browser/v8_context_snapshot_generator: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=99a63c90180ec5a32ea8861d44f405942ccbbdab, stripped

Это новый инструмент, предназначенный для ускорения создания контекстов V8. V8 - это движок JavaScript, используемый Chromium, и создание новых контекстов V8 занимает значительную часть времени, необходимого для загрузки веб-страницы. Проектный документ предполагает, что создание контекстов из моментальных снимков контекста V8 должно привести к ускорению в 3 раза, и в первую очередь это должно быть вспомогательной программой для создания моментальных снимков.

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

Как создать снимок?

Снимок создается во время сборки. Это означает, что снимок не зависит от пользователя.
Мы делаем исполняемый файл, который запускается на платформе хоста, чтобы сделать снимок. Он имитирует поведение LocalWindowProxy :: Initialize () для создания v8 :: Context и в результате выводит файл BLOB-объекта.

И:

Проблемы

  • Эта функция увеличивает размер APK на Android до 1,6 МБ. Это может быть достаточно большим, чтобы отменить победу.
    • Android не имеет расширений
    • Эта функция может увеличить объем дискового ввода-вывода и использование памяти.

Подразумевается, что v8_context_snapshot_generator должен выполняться во время сборки пакета, а не в отдельных пользовательских системах. И относительно небольшой прогнозируемый рост для Android предполагает, что он не включает в себя инструмент 44 МБ.

2
ответ дан 14 December 2017 в 00:19

Другие вопросы по тегам:

Похожие вопросы: