Требуется помощь от знатоков Linux

Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
Аватара пользователя
linux_rulezz
Вымогатель припоя
Сообщения: 656
Зарегистрирован: Пн сен 15, 2025 08:43:23
Откуда: Маленький СССР посреди шариатской республики
Контактная информация:

Re: Требуется помощь от знатоков Linux

Сообщение linux_rulezz »

ARV писал(а): Ср июн 03, 2026 10:07:34ответь на мой вопрос
Я уже ответил, несколько вариантов есть. Некоторые требуют прав рута, некоторые - нет.
Но: если у человека порт не отключен в биосе, то все очень просто. У /dev/ttySX и COMY связь элементарная: X=Y-1.
Еще можно stty натравить (тут уже вообще рут не нужен) на /dev/ttySx. Вот, запускаю у себя на компе:

Код: Выделить всё

stty -F /dev/ttyS0
speed 9600 baud; line = 0;
-brkint -imaxbel
ishtar> 03.06, 11:19 ~/Yandex.Disk/Projects/small_tel
stty -F /dev/ttyS1
stty: /dev/ttyS1: Input/output error
ishtar> 03.06, 11:19 ~/Yandex.Disk/Projects/small_tel
ls -l /dev/ttyS*
crw-rw---- 1 root dialout 4, 64 Jun  2 17:00 /dev/ttyS0
crw-rw---- 1 root dialout 4, 65 Jun  2 17:00 /dev/ttyS1
crw-rw---- 1 root dialout 4, 66 Jun  2 17:00 /dev/ttyS2
crw-rw---- 1 root dialout 4, 67 Jun  2 17:00 /dev/ttyS3
Т.е. если я пытаюсь "потенциальный" порт использовать, получаю ошибку. Аналогично в софте:

Код: Выделить всё

tty_term -n /dev/ttyS1
tty_term: Can't get old TTY settings: Input/output error

Can't open /dev/ttyS1
Т.е. когда ты выполняешь `ioctl(comfd, TCGETS2, &tty)` для несуществующего порта, получаешь ошибку.

Зато у аппаратных портов есть жирный плюс: в отличие от USB, они никуда не денутся. Разве что могут стать недоступными, если в биосе пользователь их отключил. И по надписям у портов отлично понятно, что под каким /dev/ttySx находится.
Windows must die!
Реклама
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18670
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Требуется помощь от знатоков Linux

Сообщение ARV »

твой ответ лишь частично соответствует моему вопросу. мне нужно понять, как все это сделать из моей программы, а не из консоли. запускать отдельные консольные скрытые процесы, чтобы потом парсить их текстовый выхлоп?! ужос
что такое stty я не в курсе, но догадываюсь, что она пытается что-то отправить в порт? ну и что это за метод? а если на том конце порта пресс, который примет мусор и отрубит кому-то голову? так недопустимо проверять.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Реклама
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18670
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Требуется помощь от знатоков Linux

Сообщение ARV »

и вообще проверка методом какого-либо доступа (в т.ч. просто на чтение настроек) мне представляется несколько кривой... если порт кем-то открыт, я получу ошибку, если его нет, тоже ошибку, если я не в группе тех, кому можно читать настройки - тоже ошибка... что-то тут как-то плохо всё...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
linux_rulezz
Вымогатель припоя
Сообщения: 656
Зарегистрирован: Пн сен 15, 2025 08:43:23
Откуда: Маленький СССР посреди шариатской республики
Контактная информация:

Re: Требуется помощь от знатоков Linux

Сообщение linux_rulezz »

ARV писал(а): Ср июн 03, 2026 11:28:06 как все это сделать из моей программы
Что именно сделать? Угадать, в какой порт пользователь воткнул железку? Ну, тогда придется все поочередно перебирать, слать запрос и ждать верного ответа (но если на другом порту есть еще что-то, что среагирует на этот запрос, может быть нехорошо).
Пусть пользователь сам и вызывает твою утилиту с путем, соответствующим порту, в который он воткнул.
ARV писал(а): Ср июн 03, 2026 11:28:06 запускать отдельные консольные скрытые процесы, чтобы потом парсить их текстовый выхлоп?
Это не нужно, т.к. все можно сделать средствами стандартных библиотек. Только вместо устаревшей termios советую использовать termios2, как у меня здесь. В этом случае можно задавать нестандартные скорости или даже разные скорости для чтения и записи.
А если нужно USB-устройство по VID-PID найти, но не хочется заморачиваться с правилами udev, можно udev и в своем софте использовать, например, так.
ARV писал(а): Ср июн 03, 2026 11:28:06 что такое stty я не в курсе
Команда man для этих случаев есть. Надо бы знать...
ARV писал(а): Ср июн 03, 2026 11:28:06 а если на том конце порта пресс, который примет мусор и отрубит кому-то голову?
Вот я выше и писал, что слать туда что-то нельзя. А stty или упоминаемый мною выше ioctl просто проверяет текущие настройки порта. И если его нет, то матюкнется.

А вообще, если уж пользователь сам в биосе отключил порт, а потом его пытается использовать, то ему в биореактор пора…
ARV писал(а): Ср июн 03, 2026 11:31:07 если порт кем-то открыт, я получу ошибку
Ошибка будет другой. Маны нужно курить внимательно.
ARV писал(а): Ср июн 03, 2026 11:31:07 если я не в группе тех, кому можно читать настройки - тоже ошибка...
Тут ошибка будет третьей. И да, если пользователь не в группе dialout, то ему и бесполезно пытаться что-то сделать. У него ни на чтение, ни на запись доступа не будет.
Windows must die!
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18670
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Требуется помощь от знатоков Linux

Сообщение ARV »

ну... как бы я примерно так и сделал... хоть и не совсем так, как ты сказал.

сканирую /dev по маске 'ttyS*' и 'ttyUSB*' (и еще некоторые), что нашел - открываю /sys/class/tty/<что нашел>/device/resource - если такого файла нет, пустой или в нем нулевые адреса портов (перебор строк), значит, найденный объект реально НЕ существует... ну и впридачу смотрю на ошибку - если связана с правами, информирую о том, что пользователю не положено использовать мою программу...

муторно все это, в винде в 100500 раз проще
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Реклама
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18670
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Требуется помощь от знатоков Linux

Сообщение ARV »

linux_rulezz писал(а): Ср июн 03, 2026 11:59:27 Ошибка будет другой.
дело не в том, что ошибка другая, а в том, что открытый порт или закрытый - на факт его существования не влияет, мне существование проверить надо. и, насколько я помню, нифига по ошибкам нельзя определить существоание физического девайса - одна и та же ошибка и для доступа к несуществующему, и для доступа к существующему, но занятому... или несуществующий наоборот, не выдает ошибки... я штук шесть способов перебрал, пока на вышеописанном не остановился, но не факт, что он будет работать в другой версии линуха...

например, Астра требует, чтобы файл был не resource, а resources...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Реклама
Аватара пользователя
Мурик
Друг Кота
Сообщения: 3384
Зарегистрирован: Пн окт 11, 2010 19:00:08

Re: Требуется помощь от знатоков Linux

Сообщение Мурик »

linux_rulezz писал(а): Ср июн 03, 2026 09:57:41Я разрабатываю под линукс более двадцати лет.
Это заметно.
100% линукс головного мозга! :facepalm: :)))
linux_rulezz писал(а): Ср июн 03, 2026 10:02:57Сначала - чтение документации, потом - ознакомление с железом/ОС. Не наоборот!
То есть нужно не меньше 20 лет потратить на изучение линукса и только потом что-то писать под него? Втопку такую ОС.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18670
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Требуется помощь от знатоков Linux

Сообщение ARV »

Я скажу крамольную (по личной традиции) вещь: за 30 лет винда прошла путь от системы, которая жрала ресурсы, падая от каждого движения мыша, до системы, которая может годами не выключаться, обновляясь на лету даже без перезагрузок (в некоторых случаях). Линукс за этот же этот срок по сути не изменилась вообще: как в ней не было толком работающего ПО, кроме системного CLI, так и нет, с гарантией 90% можно утверждать, все всё работающее стороннее ПО придется переустанавливать/пересобирать после ЛЮБОГО обновления системы из-за несовместимости библиотек.
За 30 лет линукс так и не стала ни на миллиметр ближе к "простому" пользователю.
Ставил я на виртуалке линукс, и по ошибке выделил не 2Т диска, а 2Г. Система прекрасно установилась, ни слова мне не сказала, никаких предупреждений не выдала, но GUI не запускала. молча. просто выбрасывала мигающий курсорчик в командной строке, и всё. Ну хотя бы что-то типа "no free space" - даже этого не было. Винда в таких условиях не только даже не начала бы установку, но и задоблала бы рассказами о том, что надо сделать и как... А ведь проблема лишь в том, что каждый линукс-программист при разработке программы думает ТОЛЬКО О СЕБЕ, и вообще не думает о том, кто будет его программой пользоваться.
В сущности, линукс за 30 не потеряла ни одного своего достоинства, но умудрилась не приобрести тоже ни одного...
Имхо.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
linux_rulezz
Вымогатель припоя
Сообщения: 656
Зарегистрирован: Пн сен 15, 2025 08:43:23
Откуда: Маленький СССР посреди шариатской республики
Контактная информация:

Re: Требуется помощь от знатоков Linux

Сообщение linux_rulezz »

Линукс работает НА пользователя. А с маздаем другая история: там пользователь работает на маздай.
Windows must die!
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18670
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Требуется помощь от знатоков Linux

Сообщение ARV »

linux_rulezz писал(а): Пт июн 05, 2026 09:41:33 Линукс работает НА пользователя. А с маздаем другая история: там пользователь работает на маздай.
на практике этот тезис не подтверждается, и как раз на практике всё наоборот.

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

Мой уютный бложик... заходите!
Zapolyarny
Нашел транзистор. Понюхал.
Сообщения: 154
Зарегистрирован: Чт май 07, 2026 00:30:38

Re: Требуется помощь от знатоков Linux

Сообщение Zapolyarny »

ARV писал(а): Пт июн 05, 2026 09:59:50 на практике этот тезис не подтверждается, и как раз на практике всё наоборот.
Каждый раз, когда кто-то спорит с фанатиком линукса, в Антарктиде помирает пингвин ;)

---------------------------------
КолибриОС - навсегда! :twisted:
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18670
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Требуется помощь от знатоков Linux

Сообщение ARV »

зато когда фанатик линукса возражает - рождается два!
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Zapolyarny
Нашел транзистор. Понюхал.
Сообщения: 154
Зарегистрирован: Чт май 07, 2026 00:30:38

Re: Требуется помощь от знатоков Linux

Сообщение Zapolyarny »

Точно! :)
yor
Говорящий с текстолитом
Сообщения: 1688
Зарегистрирован: Сб янв 19, 2008 23:57:27

Re: Требуется помощь от знатоков Linux

Сообщение yor »

Это когда фанатик винды лезет в линукс, он всех пингвинов заморит. В чужой монастырь со своим уставом. А вот хочу чтобы так! Так даже в винде не бывает.
Отлезь от линукса, а то форточки перебью! :)
Аватара пользователя
Phlanger
Сверлит текстолит когтями
Сообщения: 1244
Зарегистрирован: Сб мар 27, 2010 13:19:45
Откуда: Moskau

Re: Требуется помощь от знатоков Linux

Сообщение Phlanger »

ARV писал(а): Пт июн 05, 2026 08:45:11 Линукс за этот же этот срок по сути не изменилась вообще: как в ней не было толком работающего ПО, кроме системного CLI, так и нет
За 30 лет линукс так и не стала ни на миллиметр ближе к "простому" пользователю.
Двадцать семь лет читаю этих глупостей.
Первый Мандрейк, который "из коробки" поставился и поехал, включая софтовый диалапный момед, если вы понимаете, о чём я - был у меня в 2005 году.
Последний случай вот, дата там есть

Изображение

Телега, кстати, поставилась и поехала.

А вы можете и дальше жаловаться на то, что нишмагли толком освоить элементарные вещи.
Вложения
SDC15185.JPG
(162.72 КБ) 35 скачиваний
У кошки четыре ноги - вход, выход, земля и питание.
Zapolyarny
Нашел транзистор. Понюхал.
Сообщения: 154
Зарегистрирован: Чт май 07, 2026 00:30:38

Re: Требуется помощь от знатоков Linux

Сообщение Zapolyarny »

Не хочу "телегу", хочу Autocad.
А под элементарными вещами, полагаю, понимается вон та кучка буковок в терминале? Не самая длинная строчка, видел и пострашнее :) Конечно, это очень юзерфрэндли, никто не спорит.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18670
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Требуется помощь от знатоков Linux

Сообщение ARV »

Phlanger писал(а): Пт июн 05, 2026 16:31:07 А вы можете и дальше жаловаться на то, что нишмагли толком освоить элементарные вещи.
из вашего сообщения не следует никакого опровержения сказанного мною: 27 лет стабильного состояния на том же месте - разве я сказал что-то иное? что появилось новое в линуксе, чего не было в 27 лет назад? видеокарты как ставились только с бубнами и очень с ограниченной поддержкой, так и ставятся. любое НОВОЕ оборудование практически не подключается, даже с бубнами. но консоль - таки да, по всем каналам связи работает. и, если я имею право утверждать, джава-таки заработала почти так же, как в винде... что еще?
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18670
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Требуется помощь от знатоков Linux

Сообщение ARV »

но лично меня убивает даже не то, что система недружелюбна, а то, что её адепты недружелюбны - я на трех или четырёх линуксовых форумах пытался задавать вопросы, и на всех получал ответ, как под копирку "читай маны". на этом форуме тоже без этого не обошлось, но, видимо, тут "гибриды" линуксоидов с радиолюбителями, и радиолюбительская часть натуры делает человека попроще - мне отвечают более развернуто...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Zapolyarny
Нашел транзистор. Понюхал.
Сообщения: 154
Зарегистрирован: Чт май 07, 2026 00:30:38

Re: Требуется помощь от знатоков Linux

Сообщение Zapolyarny »

Потому что у фанатиков (у любых, не обязательно линукс) в области фанатизма отсутствует критичное мышление и мир делится на две категории. Вторая, разумеется, плохая, враждебная или презираемая.
Аватара пользователя
Phlanger
Сверлит текстолит когтями
Сообщения: 1244
Зарегистрирован: Сб мар 27, 2010 13:19:45
Откуда: Moskau

Re: Требуется помощь от знатоков Linux

Сообщение Phlanger »

ARV писал(а): Пт июн 05, 2026 16:46:18 но лично меня убивает даже не то, что система недружелюбна, а то, что её адепты недружелюбны - я на трех или четырёх линуксовых форумах пытался задавать вопросы.
Я даже догадываюсь, какие.
Зато хотя бы здесь наконец-то нашли, где рассказать о Себе, Нинаглядачьном
У кошки четыре ноги - вход, выход, земля и питание.
Ответить

Вернуться в «Интеграция с ПК»