Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Динамическая загрузка драйверов

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Unix
Предыдущая тема :: Следующая тема  
Автор Сообщение
alexxxxxxxxxxx
Гость





СообщениеДобавлено: Чт Авг 01 2002 13:00    Заголовок сообщения: Динамическая загрузка драйверов Ответить с цитатой

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

Суть проблемы следующая. Есть стандартное ядро для достаточно древнего freeBSD. Это ядро поддерживает устройства PCI, но создает по умолчанию глухой код (который только обнаруживает устройство и регистрирует его). Я пишу драйвер для конкретного PCI устройства и пытаюсь сделать его в виде динамически подгружаемого модуля. Технология создания таких модулей в этой версии freeBSD стандартная, но технологии получения доступа к PCI устройству из такого модуля нет, поэтому приходится извращаться. А изврат такой - я нашел в коде ядра переменную (типа структура), через которую я могу найти нужное мне устройство и делать с ним что надо. И если я создаю новое ядро со своим драйвером, в котором я обращаюсь к этой переменной (через extern), то все работает. Но драйвер нужно сделать динамически подгружаемым в стандартное ядро. Так вот, если я скомпилирую драйвер с поддержкой той переменной (объявлю ее у себя как extern), то , после загрузки драйвера в систему, будет ли код драйвера иметь корректный доступ к нужной переменной из стандартного ядра (там эта переменная тоже есть).
Хотелось бы увидеть мнения на этот счет, а пока буду все проверять эксперементально (лень жутко)
Вернуться к началу
anthony



Зарегистрирован: 21.05.2002
Сообщения: 845
Откуда: Petrozavodsk

СообщениеДобавлено: Чт Авг 01 2002 20:34    Заголовок сообщения: Скорее всего нет, так как extern юзается для статической компиляции и линковки. Попробуй нарыть доки по загружаемым модулям, ал Ответить с цитатой

-
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
alexxxxxxxxxxx
Гость





СообщениеДобавлено: Пт Авг 02 2002 10:46    Заголовок сообщения: Yahooo!!!! Ответить с цитатой

Работает мля и еще как работает (проверил не поленился).
А вообще PCI устройство для создания динамического драйвера, как выяснелось позже все тем же эксперементальным путем, можно приаттачить и руками (по аналогии как это делает само ядро - просто нужно найти фрагмент нужного кода и всавить его в нужное место).

Большое спасибо за все высказанные мнения.
Вернуться к началу
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Unix Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...