Работа с физической памятью как?
Работа с физической памятью как?
Мне необходимо из моей программы на С++ обратится к ячейки памяти с фиксированным адресом для чтения/записи если кто может подсказать как это сделать под Linux или где прочитать буду бесконечно признателен.
P.S. Если мой вопрос показался вам лаймерским просьба не пинать меня ногами сильно. Я только недавно начал пытаться программировать под Linux.
P.S. Если мой вопрос показался вам лаймерским просьба не пинать меня ногами сильно. Я только недавно начал пытаться программировать под Linux.
-
- Интересующийся
- Сообщения: 65
- Зарегистрирован: 19 авг 2003, 10:56
- Откуда: Anwerpen, Belgium / Belarus
- Контактная информация:
Программа пишется для взаимодействия с платой (плата не стандартная и драйверов к ней нет), плата пишет и читает данные в эту ячейку и таким образом осуществляется взаимодействие с программным обеспечение. Как я понимаю (поправьте меня пожалуйста если я не прав) что бы реализовать работу с платой в Linux надо написать драйвер/модуль который необходимо встроить в ядро ОС?
-
- Интересующийся
- Сообщения: 65
- Зарегистрирован: 19 авг 2003, 10:56
- Откуда: Anwerpen, Belgium / Belarus
- Контактная информация:
в любой современной ОС для непосредственного доступа к железу необходимо аботать в 0-ом кольце - а это драйвер обычно, ну уже потом можно взаимодействовать с этим драйвером через некоторый интерфейс из 3-его кольца, т.е. пользовательского режима... далее написание драйвера обычно зависит от того куда и как эта плата цепляется (имеется в виду через какой интерфейс PC) ... в принципе в сети, пожалуй, можно найти достаточно инфы... попробуй в поисковике - Linux Device Drivers , Alessandro Rubini правда на англ. яз. - мот поможет хотя бы получить представление о написании драйверов
-
- Интересующийся
- Сообщения: 65
- Зарегистрирован: 19 авг 2003, 10:56
- Откуда: Anwerpen, Belgium / Belarus
- Контактная информация:
скорее должен быть порт ввода-вывода, либо плата должна поддерживать некоторый интерфейс инициализации - когда ей будут сообщены адреса по которым она сможет работать ... далее мне кажется сомнительно что плата сама по себе может писать в оперативную память компа - чтоли некоторая DMA из платы в память - в любом случае для этого тем более необходим интерфейс инициализации
т.е.
либо - порты ввода -вывода (логично )
либо - наличие некоторого интерфейса апаратной инициализации для платы когда ей можно назначить некоторые адреса (например ядром )
т.е.
либо - порты ввода -вывода (логично )
либо - наличие некоторого интерфейса апаратной инициализации для платы когда ей можно назначить некоторые адреса (например ядром )