Модульные программы, подключение модулей в виде SO библиотеки. (share lib example module)
Ключевые слова: share, lib, example, module, (найти похожие документы)
Date: Wed, 24 Apr 2002 16:07:05 +0000 (UTC)
From: Valentin Nechayev <netch@segfault.kiev.ua>
Newsgroups: fido7.ru.unix.prog
Subject: Модульные программы, подключение модулей в виде SO библиотеки.
> Вот вижу сейчас многие пишут программы с поддержкой модулей
> - например oops. Вот у меня и возник вопрос: как вообще такое
> делается :)? Если можно на примере - желательно простом.
Модуль чаще всего делается как shared object (.so) или аналогичное средство
других систем (DLL в винде, etc.), с набором входных точек с заранее
определенными именами или иными индексами. Загружать его надо через
dlopen() или аналогично для других систем, затем спрашивать (dlsym)
адреса функций и явно их вызывать. (RTLD_GLOBAL не ставить!
разве что модуль одного типа у тебя всегда только один)
Когда вызывать, какие отношения между модулями - определяется
приложением; никаких общих рецептов дать заранее нельзя. Некоторые продукты
позволяют строить цепочки и стеки из действий, выполняемых модулями...
это опять же все внутренние особенности.