The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"block device -> socket"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"block device -> socket"
Сообщение от dmitry Искать по авторуВ закладки on 19-Фев-03, 17:32  (MSK)
Имеем Linux. Нужно обмануть программу, которая работает с serial port:
она предполагает, что работает с неким девайсом на порту, а на самом деле
все байты от девайса и для девайса перенаправляются через TPC/IP на другую машину в сети.

Я предполагаю сделать модуль ядра, связанный с байт-ориентированным устройством
в /dev/. Ну, к примеру, /dev/ttyS150 Модуль экспортирует функции чтения/записи для
этого устройства. Ну, допустим, программу обманул. /dev/ttyS150 есть, модуль есть,
а как заставить модуль перекидывать/принимать байтики через сокет на другую машину?
на уровне модулей ядра ведь нет никаких сокетов..

Какие мысли?

Спасибо.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "RE: block device -> socket"
Сообщение от Bob emailИскать по авторуВ закладки on 20-Фев-03, 18:40  (MSK)
Предлагаю следующее решение (на уровне идеи).
Понадобятся модуль ядра и демон.
Демон создает сокет для ТСР-соединения и передает дескриптор сокета модулю.
Модуль перехватывает системный вызов open и ждет момента открытия устройства, например /dev/ttyS0. Если программа попытается его открыть, модуль вернет ей дескриптор сокета, и дальнейшая запись данных из программы будет осуществляться в сокет.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "RE: block device -> socket"
Сообщение от Z0termaNN Искать по авторуВ закладки on 21-Фев-03, 22:20  (MSK)
в большинстве случаев не нужно писать никаких драйверов, достаточно
2 программ - клиент и демон (типа mserver), а программу достаточно
заставить читать с  pty,  конечно, если не тербуется считывать состояние
сигналов.
  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру