Бул жекшембиде GPSDдеги ката 19 жыл мурунку убакыттын өзгөрүшүнө которулат

GPS түзмөктөрүнөн так убакыт жана позиция маалыматтарын алуу үчүн колдонулган GPSD топтомунда олуттуу маселе аныкталды, ага байланыштуу убакыт 24-октябрда 1024 жумага артка жылат, б.а. убакыт 2002-жылдын мартына өзгөртүлөт. Маселе 3.20дан 3.22ге чейинки релиздерде пайда болот жана GPSD 3.23 менен чечилет. GPSD колдонгон системалардын бардык колдонуучулары жаңыртууларды дароо орнотуусу керек, же иштебей калышына даяр болушу керек.

Катанын таасири ар кандай системаларда, анын ичинде GPSDди түздөн-түз колдонбогон системаларда күтүлбөгөн каталарга алып келиши мүмкүн, анткени бул колдонмо убакытты синхрондоштуруу үчүн колдонулган кээ бир NTP серверлеринде так убакыт маалыматтарын алуу үчүн колдонулат. Тутумдарда убакыттын жылыштары болгондо, аутентификацияда (мисалы, бир жолку сырсөздөр, Kerberos жана жарактуулук мөөнөтү бүткөн башка кирүү текшерүү механизмдери иштебей калат), сертификатты текшерүүдө жана убакыт диапазондорун башкарган эсептөөлөр менен көйгөйлөр пайда болушу мүмкүн. мисалы, колдонуучунун сессиясынын убактысын эсептөө). GPSD ошондой эле ар кандай кыналган жана мобилдик түзмөктөрдө жеткиликтүү, алардын көбү мындан ары микропрограмма жаңыртууларын алышпайт.

GPS протоколу 5-жылдын 1980-январынан берки жумаларды эсептеген жумалык эсептегичти камтыйт. Көйгөй, берүү учурунда бул эсептегичке 10 бит гана бөлүнөт, демек, ал ар бир 1023 жумада (19.7 жыл) толуп турат. Биринчи толуп кетүү 1999-жылы болгон, экинчиси 2019-жылы, үчүнчүсү 2038-жылы болот. Бул окуялар өндүрүүчүлөр тарабынан көзөмөлдөнөт жана алар үчүн атайын иштетүүчүлөр каралган. Учурда параллелдүү түрдө жаңы GPS билдирүү форматы (CNAV) киргизилди, анда эсептегич үчүн 13 бит бөлүнгөн (б.а. толуп кетүү 2137-жылы гана күтүлөт).

GPSDде кошумча секунданын көрүнүшүн тууралоо логикасында (дүйнөнүн эталондук атомдук сааттарын Жердин астрономиялык убактысы менен синхрондоштуруу үчүн кошулган) ката кетирилген, анын кесепетинен 24-жылдын 2021-октябрында 1024 мөөнөтүнөн мурда алынып салынат. жумалык эсептегич. Кодекстин авторунун айтымында, нөөмөт 31-жылдын 2022-декабрында болушу керек болчу, бирок бул датаны жумалардын санына которуу туура эмес жүргүзүлгөн жана чындыгында чекте берилген жумалардын саны 2021-жылдын октябрына туура келген. (көрсөтүлгөн маани 2180 ордуна 2600). /* акыл-эсти текшерүү жумасынын саны, GPS доору, секунттарга каршы * Регрессиялар менен жакшы иштебейт, анткени секирик_сконддор * кабыл алгычтан же BUILD_LEAPSECONDSтен болушу мүмкүн. */ if (0 контекст->секирик_секунд && 19 > сессия->контекст->секирик_секунд && 2180 19 келечектеги жол , ага жол бербе */ жума -= 31; GPSD_LOG(LOG_WARN, &session->контекст->ката, "GPS жумасынын башаламандыгы. %u секирик үчүн оңдолгон жума %d\n", жума, сеанс->контекст->секунддуктар); }

Source: opennet.ru

Комментарий кошуу