Загрузка библиотек

Internal structure and you change requests/suggestions
  • Sorcerer,
    если я не ошибаюсь, то kerpacker сам записывает процедуру распаковки в ядро.
    Serge,
    я имею в виду не удалить вовсе, а перенести код в библиотеку. Так можно будет добавлять поддержку и других алгоритмов/форматов сжатия/кодирования без переписывания ядра.
  • kerpack/loader_lzma.inc - там лежит процедура LZMA-распаковки и её он записывает в файл запакованного ядра. Таким образом в компресснутом ядре целых две процедуры распаковки (ха-ха) - одна сжатая, другая нет )))
  • Таким образом ядро должно сначала загрузить библиотеку, что не всегда хорошо. Сейчас ядро самодостаточно и не нуждается в обязательной упаковке или внешних библиотеках.
  • Эти 2 процедуры используются в разных целях.
  • хм, здравый смысл мне почем-уто подсказывает, что эти две процедуры вполне можно объединить...
  • Готов лично воплотить здравый смысл в код или как?
  • Я предлагаю только вынести unpacker.inc в DLL и сделать так, чтобы ядро загружало библиотеки-декомпрессоры по мере надобности. Но этим смогу заняться только тогда, когда хорошенько изучу систему изнутри ;). Реализовывать распаковщики других алгоритмов я пока не планирую, т.к. если кому-то это понадобится, тот сам сможет сделать (т.к. это будет не сложнее. чем написать плагин к kfar).
  • Ну, вот полезно иметь кусты в запасе...
  • <квазифлуд>ИМХО, форум - для высказывания своих идей и для их обсуждения, а svn - для их реализации. поэтому я использую первое</квазифлуд>
  • Joaquin wrote:это будет не сложнее. чем написать плагин к kfar
    А можно поподробнее, как ты оценил сложность написания плагина для kfar? Берём документацию к kfar, tutorial по написанию плагинов - и вперёд?

    Или так:
    1. Хотим разобраться на примере наиболее простого плагина, берём zip.inc (который видим впервые), скачиваем спецификацию на zip (с которой мы не знакомы), чтобы понять о чём речь; замечаем, что код умеет говорить kfar'у о необходимости вывода окошек для ввода пароля архива и проч (лезем в kfar), обращается к функциям libarchiver (в которую тоже неплохо бы залезть за разъяснениями), использует структуры типа БДВК (с которыми не каждый знаком); читаем комментарии к коду (коих немного).
    2. ...
    3. Плагин готов! (звук микроволновки)
  • Э? Зачем лезть в код kfar, если все экспортируемые функции документированы? Зачем разбираться, как именно устроен формат zip, если интересует только формат выдачи, который тоже документирован? Какое отношение функции libarchiver, которая по совместительству и есть этот плагин, имеют к kfar как таковому?
    Сделаем мир лучше!
  • Если писать плагин с поддержкой какого-либо формата архива, то нужно либо использовать функции декодирования LZMA, ppmd (есть), либо писать которых ещё нет. Было бы нерационально не использовать готовое из libarchiver и писать заново для своего плагина.

    В остальном согласен.
  • Joaquin
    В проекте ценны те люди, которые кроме подсчета бонусов еще и умеют эти бонусы сами добывать. Много было уже тех кто умеет считать бонусы и только считать. Надеюсь тебе 3 года хватит. На этом флуд заканчиваю. Успехов!
  • Ну так это получается не написание плагина к kfar, а изменение конкретного плагина kfar_arc, это существенно другое действие. Разве во многих форматах архивов используется LZMA и PPMD, чтобы их нужно было брать из существующей реализации?
    Сделаем мир лучше!
  • Who is online

    Users browsing this forum: No registered users and 13 guests