gpsd is a service daemon that mediates access to a GPS sensor connected to the host computer by serial or USB interface, making its data on the location/course/velocity of the sensor available to be queried on TCP port 2947 of the host computer. With gpsd, multiple GPS client applications (such as navigational and wardriving software) can share access to a GPS without contention or loss of data. Also, gpsd responds to queries with a format that is substantially easier to parse than NMEA 0183. A client library is provided for applications.
After installing the software, gpsd will automatically connect to USB GPSes when they are plugged in and requires no configuration. For serial GPSes, you will need to start gpsd by hand. Once connected, the daemon automatically discovers the correct baudrate, stop bits, and protocol. The daemon will be quiescent when there are no clients asking for location information, and copes gracefully when the GPS is unplugged and replugged.