библиотека для построения модульно-плугинных систем (зависимость х86)

Тема в разделе "WASM.PROJECTS", создана пользователем zxcv, 13 мар 2012.

  1. zxcv

    zxcv New Member

    Публикаций:
    0
    Регистрация:
    30 дек 2011
    Сообщения:
    257
    решил вот выложить пару старых неком проектов. этот будет 1

    когдато для одного дела мне понадобилась система загрузки и связывания символов модулей более гибкая чем длл. потом, она была изменена и использована, например, тут для встраивания компиляторя асма прямо в скриптер lua для возможности юзанья фасм компилятов почти как обычных луа-объектов и связывания символов между компилятами и луа. там в туторах есть тутор по этому делу

    что дает
    - модуля могут делаться из разных объектников/либ (омф, кофф, елф), в том числе и в смеси. все фичи wlink поддерживаются.
    - относительно переносимы внутри х86. даже если использовались системные апи, достаточно добавить модуль-переходник под них
    - при встраивании в скриптоланг позволяет автоматически выводить экспорт модулей на апи скриптоланга (а примерах пример для луа. в туторах по ссыли выше можно попробовать как это работает)
    - позволяет связывать, развязывать, перегружать, встраивать модуля без перезапуска
    - есть возможность связывать жит компилированные модуля (а примерах - слегка измененный для поддержки фасм)
    - связь идет по указанным при создании именам функций и переменных. все они типизированы и при связывании учитываются типы. так, что возможна перегрузка
    - есть возможность задания пути для древовидного упорядочения во внутреннем пространстве имен
    - есть специальные входы для инициализации, деинициализации, чегото еще, не помню уже
    - есть возможность встраивания кратких хэлпов как для модуля, так и для каждой точки экспорта
    - возможность навигации по модулям, их экспорту, получение справочной информации по ним (включая встроенные доки)
    - возможность добавления собственных, пусть даже и взаимоисключающих тегов в любом (насколько помню) количестве

    недоделки
    линкер неправильно обрабатывает BSS. мне было не надо, а когда заметил уже не было времени. сейчас можно бсс перекидывать на дату
    не выложены исходники линкера. найду - выложу

    ссылка на гуглекод. исходники в меркуриале
     
  2. Rockphorr

    Rockphorr Well-Known Member

    Публикаций:
    0
    Регистрация:
    9 июн 2004
    Сообщения:
    2.556
    Адрес:
    Russia
    =offtop
    Код (Text):
    1. basmp_
    2. qwee
    3. zxcv
    4.  
    5.  
    6. зачем же ники менять если так палиццо
     
  3. zxcv

    zxcv New Member

    Публикаций:
    0
    Регистрация:
    30 дек 2011
    Сообщения:
    257
    Rockphorr
    без понятия. это внутренние проблемы. те, бегу я не от вас, а вроде как от себя. не могу объяснить понятнее.