Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » WinRAR (часть 5)

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180

Открыть новую тему     Написать ответ в эту тему

Maz



Дед Мазай
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
По вопросам лечения (кряки, патчи и т.д.), а также разблокировки архивов обращаемся в «Варезник».
Отдельная тема по сборкам WinRAR
Предыдущие части темы: 0 | 1 | 2 | 3 | 4



 
Официальный русский сайт: win-rar.com
Официальный e-mail разработчика WinRAR (писать по-русски): dev@rarlab.com
 
Стабильная английская версия: 7.13
Стабильная русская версия: 7.13


Последняя 32-разрядная версия (7.01): английская | русская


 
Список изменений на английском языке
(на родном – смотрите файл WhatsNew.txt в дистрибутиве на вашем языке)
Скачать RAR для macOS, FreeBSD, Linux, Android можно здесь.

Скачать ранее вышедшие версии можно с официального FTP
Список версий совместимых с различными ОС

Версия 3.62 (ru) с подарочным ключом (респект камраду elmorte)

Коллекция всех ранее выходивших 16- и 32-бит версий WinRAR 1.54b - 7.01 (1995-2024): скачать (342 МБ) [обновлено 12.05.2024]

вместо F.A.Q. || альтернативные архиваторы

Почему при русском разработчике задерживается русская версия, хотя на языке XXX она уже появилась? Не захламляйте тему подобными вопросами.

Кому не нравится новая тема оформления - скачайте с официального сайта rarlab.com (из раздела Themes) и установите себе WinRAR Classic theme by Francesco Indrio
Стандартная (48x36). Маленькие кнопки (24x24)

В теме активно отвечает на вопросы автор архиватора Евгений Рошал! Ситуация уникальная, прошу пользоваться. :)
 
Таблицы для наглядности с соотношением размера словаря к потребляемой ОЗУ:
с ключом mcx | без ключа mcx

Всего записей: 39601 | Зарегистр. 26-02-2002 | Отправлено: 08:31 31-07-2023 | Исправлено: Komandor, 10:46 02-08-2025
EugeneRoshal

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
los
Одна ОС такие пути поддерживает, другая - нет.
 
В конечном счете тут важны потребности пользователей. Если людям в реальных задачах под Unix потребуются такие симлинки, буду думать на тему их создания. До сих пор про такие задачи мне не писали.

Всего записей: 2607 | Зарегистр. 29-04-2013 | Отправлено: 15:05 25-12-2024
Benchmark



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
los

Цитата:
почему поведение rar зависит от того под какой ОС создан архив

Хардлинки, симлинки и т.д. являются не архивными данными, а метаданными конкретной файловой системы. И валидными они остаются только в её пределах.  
 
Тут даже к *NIX или MacOS X ходить не надо. Чем будут являться симлинки NTFS при распаковке на раздел FAT32 или exFAT ? Да ничем.

Всего записей: 7000 | Зарегистр. 01-10-2002 | Отправлено: 19:17 25-12-2024
los

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Benchmark, прежде чем написать проверили на практике? Применительно к rar конечно. Потому как в моем случае архив созданный на APFS и содержащий симлинк, распаковывается на FAT32 без проблем, с вполне нормальным симлинком.

Всего записей: 7940 | Зарегистр. 08-09-2001 | Отправлено: 21:16 25-12-2024
Benchmark



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
распаковывается на FAT32 без проблем

Я писал не про "распаковывается", а про то, чем будет симлинк на разделе FAT32. Ничем. Просто мусорный файл.

Всего записей: 7000 | Зарегистр. 01-10-2002 | Отправлено: 21:42 25-12-2024
los

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Benchmark

Цитата:
Я писал не про "распаковывается", а про то, чем будет симлинк на разделе FAT32. Ничем. Просто мусорный файл.

выше же написал, что в моем случае симлинк остается симлинком и на FAT32.
 
Впрочем остаюсь при своем мнении - архиватор должен извлекать файлы содержащиеся в архиве, а не решать за пользователя нужны эти файлы пользователю или нет.
 
P.S.
EugeneRoshal
Упаковку FIFO rar не поддерживает?

Всего записей: 7940 | Зарегистр. 08-09-2001 | Отправлено: 10:39 26-12-2024
EugeneRoshal

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
los
Мне кажется, распаковка таких ссылок в Unix это больше гипотетическая ситуация. Впрочем, если вам в macOS реально так удобнее, я это переделаю. Сейчас я выложил обновление beta 2, которое распаковывает такие symlinks и под Unix.  
 
Вроде как проблем с безопасностью там быть не должно, проверка на безопасность target выполняется после удаления Windows префикса \??\ для абсолютных симлинков. А путь вида d:\что-то под Unix не является абсолютным.
 
Но если будут нарекания от других пользователей, возможно, придется откатить это изменение обратно.

Цитата:
Упаковку FIFO rar не поддерживает?

Не поддерживает.

Всего записей: 2607 | Зарегистр. 29-04-2013 | Отправлено: 13:12 26-12-2024
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EugeneRoshal
 
UNIX их воспримет как относительные, хотя и может ругнуться на неверный слеш, (легко исправимо скриптами обработки ошибок), как абсолютные воспримут разве что DOS, Windows да OS/2, но вот работающий OS/2 я что-то давно нигде не видел, хотя возможно она где-то используется если техника исправна и существуют решаемые ей задачи.

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 35257 | Зарегистр. 31-07-2002 | Отправлено: 19:48 26-12-2024
insorg



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EugeneRoshal
Возвращаясь к архивам из кучки мелочи и больших образов в каждом.
Можно ли как-то доработать обработку параметра -se , чтобы на отдельных солид блоках не оставался избыточный словарь, который всё равно в них не используется, а был такой, который нужен каждому такому блоку отдельный?

Всего записей: 19760 | Зарегистр. 04-11-2010 | Отправлено: 22:30 26-12-2024
EugeneRoshal

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
insorg
Много мороки только ради сокращения расхода памяти при распаковке отдельного блока, но не всего архива целиком. При том что эти semi-solid архивы пользователями практически не применяются.

Всего записей: 2607 | Зарегистр. 29-04-2013 | Отправлено: 11:44 27-12-2024
Pasha_ZZZ



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
EugeneRoshal
Почему-то WinRAR не дает выставить ни в настройках, ни в тесте, кол-во потоков больше 36. Хотя их 72.
 

Всего записей: 13293 | Зарегистр. 11-03-2002 | Отправлено: 14:05 27-12-2024
insorg



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EugeneRoshal
А почему много? Архиватор же и так способен не делать лишние избыточные словари, если входящих данных на них не набирается.
Да и подобный полу-солид (если мы говорим не про сам rar, а вообще) как раз таки намного и намного чаще встречается, чем одним сплошным блоком. Те же установщики программ и игр, например. Просто в нынешнем rar их получить достаточно сложно. С теми же 7z, inno, freearc, nsis это проще. Вплоть до того, что даже разные куски (типа data1.bin, data2.bin ...) установщика внутри состоят из аналогично нескольких блоков.

Всего записей: 19760 | Зарегистр. 04-11-2010 | Отправлено: 17:15 27-12-2024
EugeneRoshal

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Pasha_ZZZ
Чтобы определить число доступных процессоров, WinRAR считает единицы в маске, возвращаемой GetProcessAffinityMask. Если количество процессоров превышает 64, предыдущие версии Windows делили их на processor groups, не более 64 в группе. Для работы с processor groups существует свое API, которым WinRAR не пользовался. Все равно 64 потока для RAR алгоритма это фактически предел, дальше рост производительности вряд ли будет сколько-нибудь заметным.
 
Кроме того, у меня просто нет соответствующего железа с более чем 64 потоками для отладки работы с processor groups.
 
Начиная с Windows 11 и Windows Server 2022, ситуация поменялась:
https://learn.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-getprocessaffinitymask
"Starting with Windows 11 and Windows Server 2022, on a system with more than 64 processors, process and thread affinities span all processors in the system, across all processor groups, by default."
 
Вроде как хорошо, приложению не надо заморачиваться с processor groups. Но возникает вопрос - как тогда узнать количество доступных процессоров. Пока что я сделал так - если доступна функция GetActiveProcessorCount(ALL_PROCESSOR_GROUPS) и она возвращает больше 64, используем ее значение. Правда, это будет без учета process affinity mask. Если она недоступна или возвращает меньше 64, считаем единицы в GetProcessAffinityMask. И в любом случае ограничиваем количество потоков 64, так как больше RAR сейчас использовать не умеет.
 
Я выложил новую сборку бета 2 с этим изменением.
 
Добавлено:
insorg

Цитата:
А почему много?

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

Цитата:
Просто в нынешнем rar их получить достаточно сложно.

Те же -se и -s<N> добавить к командной строке недолго, но реально я не видел, чтобы ими пользовались. Обычно есть или -s, или его отсутствие.

Всего записей: 2607 | Зарегистр. 29-04-2013 | Отправлено: 17:16 27-12-2024
Pasha_ZZZ



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
EugeneRoshal

Цитата:
Я выложил новую сборку бета 2 с этим изменением.

Ну да, новая бета сразу 64 выставила...

Всего записей: 13293 | Зарегистр. 11-03-2002 | Отправлено: 17:30 27-12-2024
insorg



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EugeneRoshal

Цитата:
размер словаря для каждого блока в отдельности ради не особо заметного выигрыша в расходе памяти

Когда в одном блоке мы имеем файлов на 10-50 МБайт, а во втором гигов на 4-5, разница будет существенна. Особенно на чтении таких архивов, когда нужно из них взять ту самую мелочь с документацией, а не большие файлы образов.
Да и вдогонку про разные словари. Ведь, после исправления в свежей бетке, у меня получился тогда архив с разными словарями на мелочь  и крупное, когда упаковывалось в два захода. По идее, много логики здесь менять не понадобится. Достаточно обрабатывать событие -se как несколько независимых упаковок, например.  

Цитата:
 Те же -se и -s<N> добавить к командной строке недолго, но реально я не видел, чтобы ими пользовались. Обычно есть или -s, или его отсутствие.

До недавнего времени я, например, вообще не знал что для rar такой вариант вообще возможен. Иначе бы и в нём тоже подобного плана архивы радостно делал, заодно попутно показывая что где можно улучшить. Но тут уж, когда заметил, тогда и разбираюсь.
Вообще по этому самому -se у меня есть ещё несколько мыслей, что стоило бы доработать, но я пока обдумываю как их правильно сформулировать.

Всего записей: 19760 | Зарегистр. 04-11-2010 | Отправлено: 17:43 27-12-2024
EugeneRoshal

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Pasha_ZZZ

Цитата:
Ну да, новая бета сразу 64 выставила...

Правда, если Windows старше чем Windows 11 и Windows Server 2022, реально будут использоваться процессоры только одной группы.

Всего записей: 2607 | Зарегистр. 29-04-2013 | Отправлено: 17:50 27-12-2024
Pasha_ZZZ



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
EugeneRoshal
У меня 10 22h2

Всего записей: 13293 | Зарегистр. 11-03-2002 | Отправлено: 17:51 27-12-2024
EugeneRoshal

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
insorg

Цитата:
Когда в одном блоке мы имеем файлов на 10-50 МБайт, а во втором гигов на 4-5, разница будет существенна.

Там, по-моему, реально физическая память выделяется только при обращении к ней. То есть формально UnRAR запросит для распаковки маленького файла с большим словарем весь объем словаря, а реально будет выделена только задействованная в распаковке память.

Всего записей: 2607 | Зарегистр. 29-04-2013 | Отправлено: 18:01 27-12-2024
Victor_VG



Tracker Mod
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EugeneRoshal
 
Проблему с UNIX симлинками в 7-Zip я зарепортил #2537 7-Zip for Windows can't test or extract archive have UNIX type simlink's и меня заинтересовал ответ:

Цитата:
Sam Tansy
 
    Also rar v2 archive ( rar v2 - v4, < v5) works correctly. It seems to affect v5 only.
     
    link.rar4.rar
    link.rar5.rar
 
    Igor Pavlov
 
        status: open --> open-later
        Group: -->

думаю, может получится интересно т.к. сейчас выходит так:
 
If solid archive RAR5 created Rar for UNIX, Linux, macOs and object's have UNIX like simlink Then unpack or test integrity simlink failure Else success End

----------
Жив курилка! (Р. Ролан, "Кола Брюньон")
Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti

Всего записей: 35257 | Зарегистр. 31-07-2002 | Отправлено: 19:25 27-12-2024 | Исправлено: Victor_VG, 20:12 27-12-2024
Pasha_ZZZ



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
EugeneRoshal

Цитата:
Я выложил новую сборку бета 2 с этим изменением.

Только вот беда: проверил, из-за того, что процов 2, система создала 2 группы по 36 логических процов. И WinRAR грузит только половину ядер, вторая группа отдыхает.
 
Добавлено:
Вот вроде описание изменений, как раз для 7ки:
https://plexuk.co.uk/?p=400

Всего записей: 13293 | Зарегистр. 11-03-2002 | Отправлено: 22:33 27-12-2024
EugeneRoshal

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Pasha_ZZZ

Цитата:
И WinRAR грузит только половину ядер, вторая группа отдыхает.

Я про это и писал выше. Насколько я понял документацию, потоки автоматически раскидываются по всем группам, начиная с Windows 11. В Windows 10 это надо делать вручную с помощью SetThreadGroupAffinity. Но у меня нет компьютера с более чем 64 потоками для отладки работы с processor groups.
 
Сейчас нашел:
https://learn.microsoft.com/en-us/windows-hardware/drivers/devtest/boot-parameters-to-test-drivers-for-multiple-processor-group-support
Вроде как можно задать несколько processor groups даже на CPU с меньше чем 64 потоками. Если получится, тогда можно будет поразбираться.

Цитата:
https://plexuk.co.uk/?p=400

Это, кажется, про драйверы.
 
Добавлено:

Цитата:
Если получится, тогда можно будет поразбираться.

Что-то пока ерунда получается. После:
 
bcdedit.exe /set groupsize 2
bcdedit.exe /set groupaware on
 
и перезагрузки Task Manager вроде как показывает созданные группы, но WinRAR без каких-либо изменений грузит все доступные 24 потока. Хотя по идее должен грузить только два.
 
Добавлено:
Причем это в Windows 10.

Всего записей: 2607 | Зарегистр. 29-04-2013 | Отправлено: 23:35 27-12-2024
Открыть новую тему     Написать ответ в эту тему

Страницы: 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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180

Компьютерный форум Ru.Board » Компьютеры » Программы » WinRAR (часть 5)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru