HOW-TO: Virtual Serial ports in Linux
The below instructions are targeted toward CentOS but should work on other Linux Distributions.
This HOW-TO shows how to create 2 virtual serial ports that are linked together as if they were 2 physical serial ports linked together using a NULL-modem cable.
1. Install socat
yum install socat
2. Run socat in a screen instance
screen socat -d -d pty,raw,echo=0 pty,raw,echo=0
You will see something like this on your screen
2012/11/15 15:52:43 socat N PTY is /dev/pts/2
2012/11/15 15:52:43 socat N PTY is /dev/pts/3
2012/11/15 15:52:43 socat N starting data transfer loop with FDs [3,3] and [5,5]
Your first serial port is /dev/pts2 and your 2nd serial port is /dev/pts/3 (those port path can be different from this example). Those will remain linked as long as the socat program is running.
Press CTRL-A d in order to detach from this scree instance
3. Configure and run your first application using /dev/pts/2
4. Configure and run your second application using /dev/pts/3
Voila your 2 applications are communicating using the 2 virtual serial ports.
Note that this is just one application of the socat program. You can for instance link a serial port with a TCP socket and much more.
Here are some nice links regarding socat