A GPS satellite transmits:
- status of the transmitting satellite
- clock / time data
- ephemeris data (describes the location of the transmitting satellite)
- almanac data (describes the orbits of all GPS satellites)
Two steps...
1) Obtaining time,
The distance (d) from a satellite may be found by multiplied time by constant speed of light c. Then simple geometry: d1..42=x1..42+y1..42+z1..42 Where x1 is x axis distance from satellite. This is 4 variables requiring 4 data sets from 4 satellites. Calculating distance and dividing by speed of light we will get the time to reach the satellite. If adding this time to time send from the satellite we will figure out precise time for GPS receiver.
2) Fixing position
Each of those 4 distances creating a sphere around a one satellite where receiver resides. Two spheres intersecting give a circle. Circle intersecting 3rd sphere gives two points. Which only one of them will be on the sphere from 4th satellite. That is the location of a receiver!
Satellites orbit at altitudes: GPS and GLONASS 20,000 km, Galileo 23,000 km.