Войти

Показать полную графическую версию : Перепаковка пакетов драйверов


Страниц : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 [25] 26 27 28

BadPointer
19-10-2010, 12:55
И почему метод упаковки используется LZMA, а не LZMA2? »
Я читал что LZMA2 рассчитан на более эффективное использование нескольких ядер с целью ускорить упаковку и я предполагал что использование этого метода негативно сказывается на размере архива(многопоточность действительно ухудшает компрессию).

Я сейчас провел несколько измерений и оказывается LZMA2 может работать с отключенной поддержкой многоядерности(для лучшей компрессии). По сравнению с LZMA, при использовании LZMA2 степень сжатия улучшается на 0,4% одинаково для крупных и мелких архивов.
Это означает, что нет никаких оснований не делать так в будущем, хотя и разница довольно небольшая. Для этого упаковывать нужно именно с помощью 7z.exe, а не 7za.exe и заменить в команде LZMA на LZMA2.

YikxX
19-10-2010, 13:48
BadPointer, а я читал, что LZMA2 еще и распаковывается намного быстрее, поэтому и задал вопрос. :)

ya158, тест на nVidia 8800 GS прошел на отлично. Правда я упаковал nView.cab с распакованным даже проверять не стал.

BadPointer
19-10-2010, 16:16
BadPointer, а я читал, что LZMA2 еще и распаковывается намного быстрее, поэтому и задал вопрос. »
Провел несколько измерений и действительно архивы, упакованные LZMA2, распаковываются почти в 2 раза быстрее чем LZMA(проц Intel P4 3.0 GHz). Так что и это еще одно основание использовать именно этот метод при упаковки всех драйверпаков.

Для тех кто не следил за веткой, напоминаю, я некоторое время назад предложил перепаковывать архивы с помощью скрипта, который оптимизировал степень сжатия и при этом ускорял распаковку архивов в 10 раз на системах с малым количеством оперативной памяти. А также ускорял индексацию драйверпаков за счет помещения inf файлов в начало архива. Этот скрипт с тех пор использовался для упаковки драйверпаков командой башрата, SamLab, QuarQ, а также был интегрирован в скрипт в этой ветке.

BadPointer
20-10-2010, 16:10
Ни DPS ни DIA не умеют распаковывать архивы упакованные методом LZMA2.
Чтобы исправить это, надо скачать более новую версию 7za.exe (http://sourceforge.net/projects/sevenzip/files/7-Zip/9.17/7za917.zip/download) и записать ее поверх той что входит в DPS и DIA.

ya158
20-10-2010, 23:00
Ни DPS ни DIA не умеют распаковывать архивы упакованные методом LZMA2. »
А GUI от Boasoft и родная утилита Башрата. А остальные распаковщики? Задача перепаковки драйверпаков в уменьшении размера. Время, конечно, тоже важно, но не в ущерб универсальности. Поэтому пока переходить на LZMA2 не буду. Могу сделать выбор метода упаковки (LZMA или LZMA2).

Остальные ошибки (панели Матрокса и 32 словарь) поправил. Тестируйте.

YikxX
21-10-2010, 01:58
BadPointer, у меня - умеют и уже давно. :) Все DP (кроме MSST) у меня пожаты LZMA2 - никто еще не жаловался...

панели Матрокса » Ээээээ, мая не хатеть все снова пересобирать... :) Что там за изменения с панелями?

ya158
21-10-2010, 02:32
Ээээээ, мая не хатеть все снова пересобирать... Что там за изменения с панелями? »
Там почему-то два msi-файла. Админточка делалась только для одного из них. Теперь делается и для другого. Проверить правильность работы не могу - нет Макстора.

Amigos
16-02-2011, 15:05
перепаковывать архивы с помощью скрипта, который оптимизировал степень сжатия и при этом ускорял распаковку архивов в 10 раз на системах с малым количеством оперативной памяти. А также ускорял индексацию драйверпаков за счет помещения inf файлов в начало архива. Этот скрипт с тех пор использовался » А можно поподробнее про этот скрипт?

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

22 килобайтный CMD из шапки запускать страшновато, не понятно что он там такое делает.

есть ли более простой путь, только "правильная упаковка в 7z" без пересборки?

ya158
16-02-2011, 19:56
22 килобайтный CMD из шапки запускать страшновато, не понятно что он там такое делает. »
Там ничего страшного - основная часть скрипта приходиться на перечисление языковых файлов. Причём скрипт почти ничего не удаляет - только заменяет языковые файлы на файл с тем же именем и нулевым размеромю Помимо этого делается распаковка учу-шников и админточка для msi. Потом из этих распакованных архивов и админточек удаляются языковые файлы. Ещё предлагается удалить некоторые старые драйвера и панели для драйверов. Скрипт очень простой, только перечисляется много имён файлов.
Для простого удаления папки и запаковки драйверпака обратно можно воспользоваться этим:

rem Задание имени нового драйверпака
set nameDP=DP_Sound_A_wnt5_x86-32_NEW
rem Задание размера словаря
set DICT=128
rem Распаковка драйверпака DP_Sound_A_wnt5_x86-32_*.7z (лежит в папке OLD)/ 7za - лежит рядом с папкой OLD
7za x OLD\DP_Sound_A_wnt5_x86-32_*.7z -aoa
rem Удаление папки с ненужным драйвером
RD /S /Q D\Папка_с_ненужным_драйвером
Rem "правильная упаковка в 7z"
7za a %nameDP%.7Z -ssw -mmt -m0=BCJ2 -m1=LZMA:d%DICT%m:fb273 -m2=LZMA:d19:fb273 -m3=LZMA:d19:fb273 -mb0:1 -mb0s1:2 -mb0s2:3 DriverPack_Sound_*.ini -ir!D\S\*.inf
7za a %nameDP%.7Z -ssw -mmt -m0=BCJ2 -m1=LZMA:d%DICT%m:fb273 -m2=LZMA:d19:fb273 -m3=LZMA:d19:fb273 -mb0:1 -mb0s1:2 -mb0s2:3 D\S\ -xr!*.inf

JohnnyD
18-08-2011, 23:22
А с последними A, B, C нормально скрипт работает?

ya158
20-08-2011, 18:57
А с последними A, B, C нормально скрипт работает? »
Я не проверял. Постараюсь в понедельник проверить.
Кстати, ты имеешь в виду релизы или найты?

JohnnyD
20-08-2011, 21:23
Постараюсь в понедельник проверить. » Спасибо.
релизы или найты? » Релизы от 07.11

ya158
22-08-2011, 19:22
Обновил. См. шапку.

JohnnyD
22-08-2011, 20:46
Спасибо, попробуем!

JohnnyD
22-08-2011, 22:34
Отчет по перепаковке: 1. В папке M1 файл Setup.exe после перепаковки превращается в файл нулевого размера. Это так нужно? Просто там нет других установщиков, в отличии от папки М, где еще есть PDESK(SE).msi
2. Скрипт видимо пытается найти файлы PDESK(SE).msi в папке М1, а их там нет, в итоге выдается "Не найден файл" - немного смущает. :)

ya158
23-08-2011, 00:24
JohnnyD,
1.Просто там нет других установщиков, в отличии от папки М, где еще есть PDESK(SE).msi »
Попробуй запустить Setup.exe - он попросит MtxSetup.ini. Видимо в этой папке должен быть инсталлятор панели, но его нет - только драйвер (кстати в DP_Graphics_B_wnt5_x86-32_1108b1.7z такая же фигня). Но в общем сделаю попозже замену Setup.exe на минимальный файл, который будет только запускать PDESK(SE).msi, чтобы не переделывать DriverPack_Graphics_B_wnt5_x86-32.ini.

2. Поправлю попозже

JohnnyD
23-08-2011, 04:07
То ли я тупой, то ли нвидиевцы так переделали драйвера... Ставится только панель, nView не ставится ни под каким соусом, PhysX тоже... При установке с нормального инсталлятора все это ставится.

ya158
23-08-2011, 08:29
То ли я тупой, то ли нвидиевцы так переделали драйвера... Ставится только панель, nView не ставится ни под каким соусом, PhysX тоже... При установке с нормального инсталлятора все это ставится. »
Мне, к сожалению, не на чем сейчас проверить. Ты имеешь в виду, если устанавливать драйверпаки, перепакованные моим скриптом, то панель нормально не устанавливается? А если перед запаковкой (когда выскакивает предложение добавить свои пакеты драйверов) в ручную заменить мой NvCPLSetupInt.exe на оригинальный, а папку NvCPLSetupInt удалить, тогда панель установиться нормально?

JohnnyD
23-08-2011, 09:22
ya158, да нет, панель то как раз нормально устанавливается, а вот такие компоненты как nView Desktop Manager и PhysX - ни в какую. Хотя все компоненты для этого в паке присутствуют. Вряд ли тут дело в перепаковке - видимо, теперь inf-файл не занимается установкой этих компонентов. :( Нафига тогда такие драйвера нужны... Посмотрел INI - вроде как теперь установка PhysX запускается оттуда, финишером. Но у меня не срабатывает. :(

ya158
23-08-2011, 20:41
панель то как раз нормально устанавливается, а вот такие компоненты как nView Desktop Manager и PhysX - ни в какую. Хотя все компоненты для этого в паке присутствуют. »
Насколько я знаю, PhysX в паке не присутствует - он сделан отдельным паком http://driverpacks.net/driverpacks/windows/xp/x86/graphics-physx/11.07, а nView Desktop Manager является частью панели и, если он не устанавливается, то это значит, что и панель устанавливается не правильно. Где-то была информация, что это происходит из-из кривого родного установщика.

Опиши поподробнее как пытался устанавливать.




© OSzone.net 2001-2012