LINUX.ORG.RU

Что за порт serial8250 (как /dev/ttyS0) есть у меня в системе?

 , ,


0

1

Что это вообще за порт serial8250? Для чего он вообще нужен и как им пользоваться? И ещё непонятно что это такое: /dev/ttyS1, UART: unknown, Port: 0x02f8, IRQ: 3

root@xopmoh-ubuntu:~# dmesg | grep tty
[    0.116135] printk: console [tty0] enabled
[    2.584096] serial8250: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
root@xopmoh-ubuntu:~# setserial -g /dev/ttyS*
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: unknown, Port: 0x02f8, IRQ: 3
/dev/ttyS10, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS11, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS12, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS13, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS14, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS15, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS16, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS17, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS18, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS19, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4
/dev/ttyS20, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS21, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS22, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS23, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS24, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS25, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS26, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS27, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS28, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS29, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3
/dev/ttyS30, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS31, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS4, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS5, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS6, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS7, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS8, UART: unknown, Port: 0x0000, IRQ: 0
/dev/ttyS9, UART: unknown, Port: 0x0000, IRQ: 0

Что это вообще за порт serial8250?

Это название микросхемы, исторически реализующей интерфейс RS-232 в компьютерах IBM PC

Для чего он вообще нужен

Чтоб передавать данные.

и как им пользоваться?

Подключить устройство и пользоваться

Harald ★★★★★ ()

первая строчка в яндексе по serial8250 дает описание в википедии 8250 uart

serial8250: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
драйвер serial8250 пишет что символический файл ttyS0 подключен к аппаратному устройству параллельного ввода/вывода с адресом 0x3f8 и прерыванием номер 3. тип устройства опознан как 16550А. битрейт выставлен подефлоту в 115200 т.е. он подключен на COM1.
для первых четырех ttyS* прописаны стандартные адреса и прерывания.
остальные файлики сделаны «чтоб було» и для какой-то там совместимости, вдруг кто захочет подключиться
но т.к. найдено только одно устройство ввода-вывода, все остальные висят в пустоте и потому показывается unknown.

pfg ★★★★★ ()
Последнее исправление: pfg (всего исправлений: 1)
Ответ на: комментарий от pfg

Спасибо огромное за такой информативный ответ. Но проблема в том, что у себя в ноутбуке я не находил COM-портов. Та и это устройство (порт) отображается только в ОС семейства Linux, в винде такого нет... Что это может быть? Есть ли способ как-то отладить это устройство, узнать больше информации?

XopmoH ()
Ответ на: комментарий от XopmoH

Есть ли способ как-то отладить это устройство

Посмотри для начала, что через этот порт идёт/неидёт:

pv /dev/ttyS0 > ttyS0.log

anonymous ()
Ответ на: комментарий от XopmoH

проблема в том, что у себя в ноутбуке я не находил COM-портов

т.е. физического разъёма нет?

винде такого нет

раньше можно было найти в диспетчере устройств устройства без драйвера или как-там оно обозначалось (уже забыл)

это устройство (порт) отображается только в ОС семейства Linux

оно есть только в /dev или и в dmesg упоминается. как вариант драйвер в ядре есть, а физического устройства нет.

anonymous ()
Ответ на: комментарий от Dark_SavanT

Чё там отлаживать через обычный компорт на обычном компе?

Просто в чипсете напихана куча всего на всякий случай, тк оно уже ничего не стоит при нынешней возможности за копейки напихивать миллионы транзисторов.

anonymous ()
Ответ на: комментарий от anonymous

Паники читать когда какое-то новое говно отлаживаешь. KGDB цеплять если уж на то пошло. Вариантов использования много.

Dark_SavanT ★★★★★ ()
Ответ на: комментарий от Dark_SavanT

Это уже просто обычное программное использование порта. В то время как например на самом процессоре есть отладочный JTAG порт для отладки самого процессора.

anonymous ()
Ответ на: комментарий от anonymous

оно есть только в /dev или и в dmesg упоминается. как вариант драйвер в ядре есть, а физического устройства нет.

root@dev-laptop:~# dmesg | grep tty
[    0.092950] printk: console [tty0] enabled
[    1.760962] serial8250: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
root@dev-laptop:~#
XopmoH ()
Ответ на: комментарий от Dark_SavanT

Свежие интелы вообще jtag через usb3 порт гоняют, там какой=то хитрый режим есть.

Вот тут прям в точку, нашёл в документации своего Intel Celeron N3060 инфу о jtag. Но по умолчанию он должен быть выключен, иначе это уже будет backdoor... Вот инфу об этом нашёл: https://resources.infosecinstitute.com/close-look-nsa-monitor-catalog-server-... (раздел «The GODSURGE») Как можно отключить этот JTAG без прошивки BIOS программатором? Хотя в принципе программатор у меня есть, но SPI-микросхема впаяна в плату (ноутбук), а шнура для прошивки микросхемы напрямую у меня нет. Ноутбук: Lenovo ideapad 110-15IBR

XopmoH ()
Ответ на: комментарий от XopmoH

Никак, его за тебя производитель отключил.

Либо не отключил, но об этом ты не узнаешь.

Dark_SavanT ★★★★★ ()
Ответ на: комментарий от XopmoH

Я вижу пока только драйвер и «линуксовое» устройство ttyS0. Тема «железного» устройства не раскрыта. У тебя есть реальная необходимость в использовании этого (такого) устройства? Или просто любопытство мешает «спокойно спать:)»?

anonymous ()
Ответ на: комментарий от anonymous

так я наоборот хочу его не использовать)) поэтому и хочу понять как его отключить чтобы оно не светилось как порт.

ну и да, любопытство мешает «спокойно спать:)»

XopmoH ()
Ответ на: комментарий от XopmoH

"В лоб" пробовал?

драйвер в блеклист, не?

anonymous ()
Ответ на: комментарий от XopmoH

Вот смотри , производят микросхемы , раньше называлось «южный мост», и как думаешь - на заказ каждому - (мне один ком-порт , 3 усб , а мне 2 ком-порта и 2 усб , а мне без ком-портов 4 усб и.т.д.) , или микросхема одинаковая для всех , ( в железе всё есть ) и каждый начинает отключать (как умеет , так и получается ) что хочет ?

Скорее всего в м/с ком порт есть (разной степени отключенности ), а на плате уже ничего не распаяно , и дорожек нет к выводам м/с .

Опять же программисты определив чип , знают по спекам на м/с что там должно быть , и не смотрят , что там кто наотключал и как , а чохом весь набор периферии этой вываливают в систему (разбирайтесь типа сами , «у меня всё работает»(с) )..

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.