Serial port a lack of available physical serial ports or they do not meet the current requirements. For instance, virtual serial ports can share data between several applications from one GPS device connected to a serial port. Another option is to communicate with any other serial devices via internet or LAN as if they are locally connected to computer (serial over LAN/serial-over-Ethernet technology). Two computers or applications can communicate through an emulated serial port link. Virtual serial port emulators are available for many operating systems including MacOS, Linux, NetBSD and other Unix-like operating systems, and various mobile and desktop versions of Microsoft
Parallel port later than Windows 95/98 prevent user programs from directly writing to or reading from the LPT without additional software (kernel extensions). Current CNC Milling Machines also often make use of the parallel port to directly control the machine's motors and attachments. Traditionally IBM PC systems have allocated their first three parallel ports according to the configuration in the table below (if all three printer ports exist). If there is an unused slot, the port addresses of the others are moved up. (For example, if a port at 0x3BC does not exist, the port at 0x378 will then become the first