Не рискну описывать всё своими словами. Материал большой, и ошибиться в изложении очень легко, особенно говоря с человеком из другой области.
Разговаривая с коллегой, можно говорить очень приблизительно и кратко.
Даже с учетом того, что это не моя специализация, и некоторые вещи интуитивно ощущаю, но для пересказа вот тут, на Веломании, надо сначала самому внимательно читать первоисточники.
Буду ориентироваться на этот текст:
http://www.proffit2000.ru/downloads/docs/gps-basics.pdf
Хотя и тут всё сильно конспективно.
Что касается индикации на смартфоне, то буду ориентироваться на экран программы Статус GPS, хотя мне привычнее говорить об индикации какой-нибудь GPS-Локер.
А теперь более-менее по пунктам.
Аппаратный Гармин мы не можем принудительно заставить сделать холодный старт (надо или уехать, или долго его не включать). Поэтому индикацию на экране спутников для этого случая не помню точно.
Для смартфона это будет пустая карта неба.
Если в смартфон залить данные A-GPS, то увидим расположение спутников на небе (очень грубо) и пустую строчку с номерами, ноь без столбиков. Локер покажет только номера бортов.
Аппаратный Гаромин, получивший данные альманаха (тут я забежал чуть вперёд), так же покажет строчку с номерами и пронумерованные точки на небе.
Гармин или смартфон, не получая посторонней подсказки, начинают первый этап поиска.
Каждый спутник передаёт весь альманах - приблизительные орбитальные данные для всех спутников.
Дальше в процессе старта появляется индикация незакрашенного столбика, но соотношение с/ш ужк указывается то, которое будет по окончании поиска коррелляционного приёмника (стр. 29).
А вот по завершении поиска столбик закрашивается полностью. Первоисточника нет - есть "твёрдое ощущение", что это так.
И, казалось бы, этого абсолютно достаточно для нормальной работы.
Но нет, смартфоны продолжают чудить.
Может быть так: после холодного старта нашлись штук 6 спутников, синхронизация есть, а альманаха нет! Бред бредовый, с точки зрения разработчиков аппаратных навигаторов. А с точки зрения смартфона - нормально предполагать, что везде есть Интернет, и незачем тратить, условно говоря, 5 миллиДжоулей на вычисления, лучше за 1 миллиДжоуль забрать готовый результат. Логично, спасибо. Тьфу на них!
У некоторых аппаратов от рождения точность какая-то ... странная: абсолютные ошибки не особо большие, но трек всё время пляшет. Такое ощущение, что вычисления где-то преждевременно округляются. Или время пляшет.
Я вот про эти фокусы и написал, что беда алгоритма. Однако посмотрел-погуглил, и вроде как выходит, что мои предположения об разделении алгоритма между устройствами направлены не туда: на самом деле я и сейчас не знаю точно, на чём заканчивается работа GPS-модуля. Но вроде как он проделывает максимально возможную работу - выдаёт не только задержки, но и вообще готовые координаты в принятой гео модели. И уже их передаёт процессору.
И всё же смартфон чем-то явно виноват, раз портит отработанные вроде бы правила. А виноват он, скорее всего, своими прерываниями и, боюсь, вообще своим тактовым генератором. Частота там, что ли, плывёт... Не работает из-за этого коррелятор GPS приёмника - всё время что-то срывается и - по новой.