GPS satellites continuously broadcast satellite position and timing data via radio signals on two frequencies (L1 and L2). The radio signals travel at the speed of light (186,000 miles per second) and take approximately 6/100ths of a second to reach the earth.
The satellite signals require a direct line to GPS receivers and cannot penetrate water, soil, walls or other obstacles. For example, heavy forest canopy causes interference, making it difficult, if not impossible, to compute positions. In canyons (and "urban canyons" in cities) GPS signals are blocked by mountain ranges or buildings. If you place your hand over a GPS receiver antenna, it will stop computing positions.
Two kinds of code are broadcast on the L1 frequency (C/A code and P code). C/A (Coarse Acquisition) code is available to civilian GPS users and provides Standard Positioning Service (SPS). Using the Standard Positioning Service one can achieve 15 meter horizontal accuracy 95% of the time. This means that 95% of the time, the coordinates you read from your GPS receiver display will be within 15 meters of your true position on the earth. P (Precise) code is broadcast on both the L1 and L2 frequencies. P code, used for the Precise Positioning Service (PPS) is available only to the military. Using P code on both frequencies, a military receiver can achieve better accuracy than civilian receivers. Additional techniques can increase the accuracy of both C/A code and P code GPS receivers.