Обновить
4

Пользователь

0,1
Рейтинг
Отправить сообщение

Столкнулся с проблемой связи. Часть устройств тупо переставала отправлять кадры в эфир. 10 минут с периодом 12 минут. Хотя счётчики кадров на всех уровнях считают. Думал, что программный косяк. Потом посмотрел эфир SDR приемником - рядом стояла глушилка, которая и работала с таким интервалом. И проблема не в том, что устройства не слышат друг друга. Они все были на стенде одном столе, и сниффер работающие устройства спокойно слушал, находясь немного дальше. ZigBee перед передачей ожидает освобождения канала, который никогда не наступал при помехах. Поднял порог на 20 попугаев и вроде стало получше. К слову, WiFi передаёт короткими кадрами, и не очень сильно мешает при небольшой нагрузке

Скрытый текст
Вот такие помехи - явно аналогового происхождения
Вот такие помехи - явно аналогового происхождения

Очевидно, что это офисный комплект для гос-структур, ибо остальным всё равно. А там чем стандартнее, тем лучше

Мало того, что должен передаваться ID, он должен иметь возможность проверяться. Сертификат внутри сертификата?...

Там обычно вместо батарейки был аккум впаян прямо в материнку. Это же 286й, какое шифрование, какой рут, какой менеджер паролей?)

Торрент на 486 будет качать от силы сотни кбайт/с, а дос обычно ограничен 2гб на диск. Даже как файл-сервер по смб скорость в единицы мбайт/с... Так что современные цели - вряд ли.

ISA удобно использовать для отладки нового железа. Купил по-дешману карточку, проверил. Не подошла - другую. Я впаял в 386-й ноут шлейф на тест-поинты (они по названиям 100% совпадали с номерами выводов ISA) и подключил к купленному на авито разъёму. Интересно, что всё работало крайне нестабильно, пока не повесил на всю шину данных ферритовое кольцо. Когда убедился, что всё интересующее меня работает, развёл платку с USB+звук+сеть. Не обошлось без косяков: у китайцев была неправильная распиновка мини-джеков, сеть никак не работала без EEPROM. А вот USB завелся с первого раза, там драйвера есть модифицированные, более быстрые.

Скрытый текст
Кишки ISA
Кишки ISA
Мульти-плата
Мульти-плата
Встала вместо модема. Панельку доводить до идеала было уже лень)
Встала вместо модема. Панельку доводить до идеала было уже лень)

Сервер не знает ни IMEI, ни любой другой достоверной информации об устройстве - для него все равны. Даже по IP/MAC будет проблемно привязаться.

Я правильно понимаю, что mTLS - это обычный TLS, сервер которого выдает стандартный запрос certificate request? А proxy - это отдельный сервер, принимающий внешние подключения, и пропускающий к серверу уже по менее защищенному каналу только тех, кто прошел проверку? И ddos ложится на его плечи, ибо фаза рукопожатия, даже до запроса сертификата сервером, самая ресурсоемкая?

Греть то можно окружающей средой, но нужно еще и конденсировать...

Хороший тайм-сервер должен постоянно подстраивать частоту своих часов под PPS или другой источник точного времени. Тут уже вопрос о доверии к принятому времени

Обычно берется блок выборок по количеству бинов, применяется оконная функция, вычисляется БПФ, берётся следующий блок итд. Не встречал, чтобы БПФ считали с каждой выборкой, это уже вэйвлеты какие-то будут.

Это каким образом БПФ обрабатывается после прихода сэмпла? Только блочно - там куча вычислений, для которых нужны как минимум 2 выборки. Вызывать обработчик для каждой выборки зачастую медленее, чем в цикле обработать блок. Особенно если уметь оптимизировать не в стиле "красивый код", а "эффективный код". Многие DSP-функции уже в микроконтроллеры внедряют, а то и в ядро процессора (ARM, например).

Это всё классно, но многие системы при проектировании не учитывали спуффинг, который сейчас активно используется. И если на цифровой подстанции время синхронизируется через ГЛОНАСС/GPS, то малейшее отклонение времени приведет к серьезным последствиям.

На типичном 486м обычно установлено 4-16Мб ОЗУ. Даже если ядру хватит, современный софт явно не умеет умещаться в таком объёме.

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

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

Чтобы DMA работал стабильнее - придумали всякие аппаратные bus matrix, burst и fifo...

Обрабатывать выборки блоками, очевидно...

Использование FIFO для передачи данных из прерывания основной программе излишне, имхо. Если всё пишется аппаратно через DMA, то проще передавать указатель на начало/середину буфера с половиной длины. А в вашем случае вообще можно разгрузить процессор, напрямую передавая с АЦП в буфер одним ДМА-потоком, а из этого же буфера в ЦАП - другим.И Circular mode - это точно не режим цирка)

Не уверен, что на типичной 486й машине полноценно запустился бы хоть какой-то из последних линуксов

Информация

В рейтинге
4 275-й
Зарегистрирован
Активность