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


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

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

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

Оффлайн zilog82

  • Активист
  • *
  • Сообщений: 420
  • Hello, World!!!
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #15 : 15 Сентября 2009, 19:06:25 »
Конечно, я не программист, а так, мимо пробегал...
Высокоуровневые API в многозадачных и многопользовательских ОС, каковой является и Linux, предназначены именно для того, чтобы состояние устройства в процессе работы с ним было предсказуемо и стабильно. Зачем лезть поперёк паровоза? Во всяком случае, мне так думается. Я не прав?
Абсолютно прав, причем в состав ядра специально предусмотрен модуль для работы с последовательными портами. ИМХО, кроме как через него, другого способа работы просто нет.

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #16 : 15 Сентября 2009, 19:59:22 »
zilog82, Не смешите. ядро открыто. ни чего невозможного нету
пусть пишет свой драйвер и наслаждается результатом.
из userspace ессно процессор пошлет на 3 буквы любой доступ к портам ввода вывода (это тоже не вся правда, можно задать карты ввода/вывода и наслаждаться результатом)

sekenr, буквально приведенный синтаксис не всякий ассемблер примет, но вобщем nasm поможет тебе. вообще открой исходники ядра и посмотри там нискоуровневый ввод вывод сделан на препроцессоре и разворачивается примерно в такие вот инструкции =) так что когда пишешь outb(i,port) получаешь ассемблерную вставку. синтакси там AT&T

Кстати почитай про защиту процессора. почитай почему требуются привелегии ядра для доступа к портам и почему обычные приложения этих привелегий не имеют. Еще почитай про дырявость 9х и однозадачность DOS именно поэтому там все работает =)

Оффлайн zilog82

  • Активист
  • *
  • Сообщений: 420
  • Hello, World!!!
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #17 : 15 Сентября 2009, 20:26:20 »
zilog82, Не смешите. ядро открыто. ни чего невозможного нету
пусть пишет свой драйвер и наслаждается результатом.
из userspace ессно процессор пошлет на 3 буквы любой доступ к портам ввода вывода (это тоже не вся правда, можно задать карты ввода/вывода и наслаждаться результатом)
вопрос стоит не о написании своего драйвера или модуля, а о возможности прямого доступа. я указал, что НАПРЯМУЮ этого сделать нельзя. либо через существующие модули, либо через самописные.  ;)

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #18 : 16 Сентября 2009, 05:54:45 »
ok ;)

sekenr, еще можешь почитать Таненбаума про архитектуру ОС

Оффлайн zilog82

  • Активист
  • *
  • Сообщений: 420
  • Hello, World!!!
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #19 : 16 Сентября 2009, 07:33:20 »
и для полной ясности - Лав. Разработка ядра Linuix; Бовет. Ядро Linux

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #20 : 16 Сентября 2009, 08:53:12 »
Прямой доступ к портам - это вредная затея и  путь в пещеру. :coolsmiley:
Надо привыкать, что все является файлами (и в масдае тоже) и  научиться с ними работать. Тогда будет без разницы, сеть, порты, файлы или что-то еще (науке не известное). Везде будете в своей тарелке.

Оффлайн maximum2000

  • Активист
  • *
  • Сообщений: 403
    • Просмотр профиля
Re: Возможен ли прямой доступ к портам?
« Ответ #21 : 16 Сентября 2009, 11:44:45 »
Прямой доступ к портам - это вредная затея и  путь в пещеру. :coolsmiley:
Надо привыкать, что все является файлами (и в масдае тоже) и  научиться с ними работать. Тогда будет без разницы, сеть, порты, файлы или что-то еще (науке не известное). Везде будете в своей тарелке.

+1 :)

 

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