Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Возможен ли прямой доступ к портам?  (Прочитано 5852 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн sekenr

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Возможен ли прямой доступ к портам?
« : 11 Сентября 2009, 19:33:31 »
Здравствуйте, необходимо узнать возможен ли прямой доступ (типа ассемблерных директив in-out) к портам ввода вывода. Требуется получать прямой доступ к регистрам COM-порта.
Под DOS это реально, под Windows нет, а под Ubuntu?
Если можно скиньте ссылки на стоящую литературу по программированию для Ubuntu.
Заранее спс. :-[

Оффлайн zilog82

  • Активист
  • *
  • Сообщений: 420
  • Hello, World!!!
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #1 : 11 Сентября 2009, 19:43:14 »
а кто вам мешает просто открыть порт и работать с ним? (open,write,close)

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #2 : 13 Сентября 2009, 07:27:34 »
Встречный вопрос. Нафига?

Расскажи что тебе в итоге надо получить, а тебе скажут как этого лучше всего добиться.
Напиши модуль ядра для доступа к чему угодно и наслаждайся результатом. Только учти что такой модуль уже написан, называется драйвер последовательного порта.

Оффлайн svFits

  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #3 : 13 Сентября 2009, 10:28:56 »
тут пример обращения к порту lpt http://www.opennet.ru/docs/HOWTO-RU/mini/IO-Port-Programming.html.
можно переделать и к сом порту


Оффлайн zilog82

  • Активист
  • *
  • Сообщений: 420
  • Hello, World!!!
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #4 : 13 Сентября 2009, 14:43:53 »
Вот, пример программы. Здесь сначала конфигурируется COM1, после чего передается байт.
(Нажмите, чтобы показать/скрыть)

Оффлайн maximum2000

  • Активист
  • *
  • Сообщений: 403
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #5 : 15 Сентября 2009, 11:39:07 »
Возможен доступ, как уже было сказано, через драйвер последовательного порта

Оффлайн sekenr

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #6 : 15 Сентября 2009, 16:58:32 »
Встречный вопрос. Нафига?

Расскажи что тебе в итоге надо получить, а тебе скажут как этого лучше всего добиться.
Напиши модуль ядра для доступа к чему угодно и наслаждайся результатом. Только учти что такой модуль уже написан, называется драйвер последовательного порта.

В итоге нужно выяснить возможно ли работать в Ubuntu с портами ввода-вывода в обход самой ОС.
Просто желательно использовать ассемблерные вставки в сишных программах (или чистый ассемблер) для ввода вывода через ком порт.
Например:
(Нажмите, чтобы показать/скрыть)
 
-вот как этот код (вернее фрагмент кода) будет работать в Ubuntu?

Нафига? Да ради учебного процесса  :coolsmiley:

И ещё: буду рад хорошим ссылкам на литературу, где толково описана архитектура Ubuntu в частности и Linux вообще (вроде "Внутреннее устройство Windows XP" Руссиновича для винды).
« Последнее редактирование: 15 Сентября 2009, 17:21:20 от sekenr »

Оффлайн zilog82

  • Активист
  • *
  • Сообщений: 420
  • Hello, World!!!
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #7 : 15 Сентября 2009, 17:06:34 »
 :o чего?
В итоге нужно выяснить возможно ли работать в Ubuntu с портами ввода-вывода в обход самой ОС.
Просто желательно использовать ассемблерные вставки в сишных программах (или чистый ассемблер) для ввода вывода через ком порт.
в обход ОС? это где же так учат-то? (скажите, чтобы случайно не пошел туда учится)

Оффлайн sekenr

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #8 : 15 Сентября 2009, 17:16:19 »
:o чего?
В итоге нужно выяснить возможно ли работать в Ubuntu с портами ввода-вывода в обход самой ОС.
Просто желательно использовать ассемблерные вставки в сишных программах (или чистый ассемблер) для ввода вывода через ком порт.
в обход ОС? это где же так учат-то? (скажите, чтобы случайно не пошел туда учится)

В Челябинском вагоностоительном  ;)

Если говорить конкретнее, то действовать надо не в обход ОС, а в обход высокоуровневых API. Вспомни старый добрый ДОС.

P.S. уважаемый zilog82, по моему все довольно конкретно было сказано в 1 посте темы. Флуд не по теме прошу не разводить.
« Последнее редактирование: 15 Сентября 2009, 17:19:43 от sekenr »

Оффлайн svFits

  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #9 : 15 Сентября 2009, 17:40:50 »
мне так кажется вполне достаточно ioperm, inb, outb, все получается через API (если я не ошибаюсь). А зачем лесть напрямик, если за тебя это может сама ОС?!

Оффлайн Alexander8

  • Новичок
  • *
  • Сообщений: 22
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #10 : 15 Сентября 2009, 17:55:34 »
А что ты не проверишь? Так то мне тоже интересно.

Оффлайн zilog82

  • Активист
  • *
  • Сообщений: 420
  • Hello, World!!!
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #11 : 15 Сентября 2009, 17:59:32 »
никакого флуда.
а асм-вставки с исходным текстом другого языка компилит разве не ОС?
книга вот http://www.books.ru/shop/books/503720
Здравствуйте, необходимо узнать возможен ли прямой доступ (типа ассемблерных директив in-out) к портам ввода вывода. Требуется получать прямой доступ к регистрам COM-порта.
Под DOS это реально, под Windows нет
под Windows 9х  можно asm вставки делать.

Оффлайн svFits

  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #12 : 15 Сентября 2009, 18:04:34 »
под windows на прямую не даст доступа, но можно обойти через драйвер, а потом обычное чтение и запись как в файл

Оффлайн zilog82

  • Активист
  • *
  • Сообщений: 420
  • Hello, World!!!
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #13 : 15 Сентября 2009, 18:19:03 »
под windows на прямую не даст доступа, но можно обойти через драйвер, а потом обычное чтение и запись как в файл
дейcтвительно, это в 2k и младше. а в более ранних версиях Windows разрешала прямой доступ к портам.

Lifewalker

  • Гость
Re: Возможен ли прямой доступ к портам?
« Ответ #14 : 15 Сентября 2009, 18:45:20 »
Если говорить конкретнее, то действовать надо не в обход ОС, а в обход высокоуровневых API. Вспомни старый добрый ДОС.
Конечно, я не программист, а так, мимо пробегал...
Высокоуровневые API в многозадачных и многопользовательских ОС, каковой является и Linux, предназначены именно для того, чтобы состояние устройства в процессе работы с ним было предсказуемо и стабильно. Зачем лезть поперёк паровоза? Во всяком случае, мне так думается. Я не прав?

 

Страница сгенерирована за 0.018 секунд. Запросов: 21.