Geoler, чересчур много "если". Маловероятно, что все эти труды выльются в что-то полезное. Да и сама цель "перехватить контактик у друга" выглядит блекло. Результата минимум, проблем и мороки много. Для саморазвития лучше создайте что-то полезное, чем можно будет как минимум похвастаться на собеседовании при поступлении на работу. Такими серыми вещами лучше не светить - к примеру, в ЛК не берут если упомянул про взлом чего-либо. Проходили.
Geoler, это уже как запрограммируете. Заранее предупреждаю, что подобная деятельность противозаконна (УК РФ, Статья 272. Неправомерный доступ к компьютерной информации )
Geoler, из интересных примеров можно привести прозрачный прокси на похожем домене с корректным сертификатом. Например, yandex.ru, у которого буква 'а' в имени - русская. Человек заходит по такой фишинговой ссылке, весь контент грузится с оригинального сайта, но ваш псевдо-яндекс при этом перехватывает данные.
А лучше сократить количество соединений, если возможно. Например, вместо открытия нового соединения на каждый запрос посылать несколько запросов по одному соединению. Если возможно.
WoOPHY, в том же telnet вы по нажатию клавиши Enter отправляете символ конца строки, сообщая серверу об окончании ввода. В вашем примере вы просто отправляете строку текста, как сервер должен понять, что команда закончена? Операция write только пересылает очередную пачку данных, в потоковом взаимодействии можно разбить передаваемые данные и отправлять их хоть побайтно. Я считаю, сервер ждет окончания команды и по таймауту отключается. В спецификации протокола есть информация о формате команды, а именно, о завершающем символе? В HTTP это \r\n\r\n
В протоколе POP3 действительно достаточно отправить имя и пароль через пробел, без всякого формата или хотя бы завершающего символа? У меня большие сомнения по этому поводу.
LAN кабель не предназначен для передачи высокочастотного сигнала LTE. "некое устройство с sma разъёмом" это и есть сам модем. Поставить на крышу роутер, воткнуть в него модем, подключить LAN и вот примерно то, что вы хотели.
jcmvbkbc, да я про сам подход. если прерываний куча, то полюбому будет сохранение старого состояния. а иначе можно обойтись счетчиком, как я приводил.
вашего примера на момент написания коммента не видел *я буду обновлять страницу*
Kalombyr, если вы абсолютно уверены, что случайно не включите прерывания, когда не надо - всё ок. Зависит от разработанной архитектуры. Большинство решений, с которыми я сталкивался, использовали ту или иную обёртку, чтобы учитывать предыдущее состояние прерываний.
Kalombyr, а это чуть другой подход к обёртке функций disable_irq и enable_irq, который также много где применяется. здесь функция ext_disable_irq возвращает предыдущее состояние прерываний (выключено или включено), а ext_enable_irq наоборот, принимает это значение и включает прерывания только если они ранее были включены. Применяется, если прерываний несколько и настройки выставляются битовыми флагами.
Kalombyr, обычно функциями отключения и включения прерываний выделяется лишь небольшой участок кода. Рассматривайте это как фигурные скобки, окаймляющие критическую секцию. Если у вас прерывания только выключаются - возможно стоит задуматься над рефакторингом.
beduin01, ну вот структура ETHREAD, которую создаёт ОС Windows для описания конкретного потока https://www.nirsoft.net/kernel_struct/vista/ETHREA...
эта структура добавляется в список потоков вашего процесса, планировщик затем разруливает переключение потоков, сохраняя и загружая последнее состояние регистров
beduin01, что значит поскипать? Исполнение переключится на другую задачу и вернется к вашей через указанное время. Абсолютно то же самое произойдет и при блокирующей операции
Да и при использовании цикла это будет происходить, системе и другим программам тоже нужен процессор