Все просто. 1. Основная задача синтетического порта - отладить логику работы составных частей, в том числе путем эмуляции ситуаций, которых в жизни хрен дождешься.
2. Полусинтетические порты - низкий уровень драйвера, возможно, на другой платформе, реален, остальное виртуально - совмещают удобство виртуальной отладки с реалиями жизни
3. Для задач связи синтестический порт идеален - я могу поднять сеть устройств и отладить там что угодно
4. По итогам хорошего синтетического порта получается качественная диагностика, которую потом переносишь в реал, и быстро понимаешь - что пошло не так.
Мой личный опыт. Сеть связи, жесткая привязка к фронту синхросигнала GNSS приемника. Отладили в виде синтетического порта.
Выехали в поле - писец. За полдня программисты вычислили, что происходит систематический сдвиг синхроимпульса у части устройств. Ибо диагностика нарушения синхронизации была качественная. (там было еще много мелких багов, поэтому возились пол дня. Они маскировали эффект.)
Прямой эксперимент - несколько приемников, сброс по питанию - и осцем видим у одного отставание синхры на 200 мс. Еще сброс - у другого отставание.
Матерное письмо создателям GNSS приемника поздно вечером.
Мой звонок создателям утром с пояснением, как именно я сношал всех их родственников до 6 колена.
Через 2 дня исправленный релиз.
Один день - проверка на "дрочере" (выключение питания) кучи приемников, что синхра одинаковая (таймер Xmega использовался для захвата, попарно сравнивали приемники)
К концу недели все сдано Заказчику.