We have to be very careful how we understand this time accuracy issue. Light travels about 1m in 3 nanoseconds. Hence if we want to accurately locate ourselves to around 1m, then we are going to require a receiver that can at least determine time to ~ 3 nanoseconds or better. Low cost GPS receivers are not that accurate however (typically ~30nsecs), but they take advantage of a trick. The GPS satellites are calibrated to send highly accurate time and location measurements....a LOT better than 30 nsecs and they are constantly monitored and corrected to maintain the accuracy. But even though the GPS receiver is measuring 4-9 different signals with poor accuracy, it is the SAME receiver measuring the signals from different satellites. Hence if there is a built in error, the measurements can be collected and adjusted so that it is essentially the same offset error on the receiver for each satellite (not quite that simple, but thats the idea) . Hence if the receiver can see enough satellites it can perform Time Difference of arrival measurements which can remove the large error. The system can then use metadata to estimate and correct for the single static offset. You may have noticed in your car, if you turn on the GPS system at a location that your nav system was not actively tracking, and you are for example in a parking garage, the system will take some time to acquire ANY signal, and then it will often show you at the wrong location on the map, and will take a few minutes to figure out where you are. The system will be constantly checking different solutions and ultimately comparing them with map and inertial navigation detectors in your vehicle until it eventually finds a solution that appears to fit the map and your vehicles motion.
My car has a GPS system. However, I once had the car taken by rail from DC to LA and it took almost 30 minutes for my GPS system to figure things out.