Виртуальный последовательный порт — это программное представление последовательного порта , которое либо не подключается к реальному последовательному порту, либо добавляет функциональность реальному последовательному порту посредством программного расширения.
Программный виртуальный последовательный порт представляет собой один или несколько идентификаторов виртуальных последовательных портов на ПК, которые другие приложения могут видеть и с которыми могут взаимодействовать, как если бы они были реальными аппаратными портами, но данные, отправляемые и получаемые этими виртуальными устройствами, обрабатываются программным обеспечением, которое манипулирует передаваемыми и получаемыми данными для предоставления большей функциональности.
Операционные системы обычно не предоставляют возможности виртуального последовательного порта. Сторонние приложения могут добавить эту возможность, например, open-source com0com, бесплатное ПО HW VSP3 или коммерческий Virtual Serial Port Driver.
Некоторые виртуальные последовательные порты эмулируют всю аппаратную функциональность последовательного порта, включая все состояния сигнальных выводов, и допускают большое количество виртуальных портов в любой желаемой конфигурации. Другие предоставляют ограниченный набор возможностей и не полностью эмулируют оборудование. [1]
Эту технологию можно использовать либо для расширения возможностей программного обеспечения, которое невозможно обновить для использования новых технологий связи, например, путем передачи последовательных данных по современным сетям, либо для обеспечения потоков данных, которые обычно невозможны из-за ограничений программного обеспечения, например, разделения вывода последовательного порта.
Последовательный порт обычно может контролироваться или передаваться только одним устройством за раз в соответствии с ограничениями большинства операционных систем, но программа виртуального последовательного порта может создать два виртуальных порта, позволяя двум отдельным приложениям контролировать одни и те же данные. Например, устройство GPS , которое выводит данные о местоположении на последовательный порт ПК, может представлять интерес для нескольких приложений одновременно. [ необходима цитата ]
Другой вариант — это взаимодействовать с другим последовательным устройством через Интернет или локальную сеть, как если бы они были локально подключены, используя последовательный порт через локальную сеть . Это позволяет программному обеспечению, предназначенному для взаимодействия с устройством через локальный физический последовательный порт, вместо этого взаимодействовать на большом расстоянии. [2]
Bluetooth реализует виртуальные последовательные порты через Serial Port Profile . Это стандартный способ получения данных от GPS-модулей, оснащенных Bluetooth, например.
Драйверы для программно-реализованного модема создают виртуальный последовательный порт для связи с операционной системой хоста, поскольку модем полностью реализован в драйвере устройства, и, следовательно, нет точки, в которой последовательные данные отправлялись бы на физическую карту.