[time-nuts] GPS Outage
Wojciech Owczarek
wojciech at owczarek.co.uk
Mon Feb 29 06:41:20 EST 2016
Funny how apparently Trimble were involved in the wk860 problem, I thought they famously used their leap second based rollover protection: http://www.google.co.uk/patents/US5923618 :) Maybe that algorithm isn't that smart after all.
Thanks,
Wojciech
Original Message
From:martin.burnicki at burnicki.net
Sent:29 February 2016 11:02 am
To:time-nuts at febo.com
Reply to:time-nuts at febo.com
Cc:hmurray at megapathdsl.net
Subject:Re: [time-nuts] GPS Outage
Hal,
Hal Murray wrote:
>
> martin.burnicki at burnicki.net said:
>>> Strange that at least 3 independant firmware trees/development teams should
>>> chose the same magic wk860.
>
>> I don't find it strange. If the next firmware version is based on the
>> previous version and none of the developers has stumbled across this
>> potential problem earlier ...
>
> That sounds like poor software engineering. Or poor engineering management.
>
> The wk860 is supposed to represent the build time of the software ...
Do you *know* this, or are you just *assuming* this? ;-)
> so it will
> work for 20 years from when it was built rather than 20 years from when the
> 10 bit week counter last rolled over or 20 years from when the constant was
> last updated.
There are also approaches where the proper extension of a week number
doesn't just work within a single 1024 week cycle with some hardcoded
limit, like this simple example:
if ( wn < 860 )
wn += 1024;
There may always be pieces of code which generate a faulty result under
certain conditions, and no stumbles across this even in reviews until it
really happens.
I'm not aware of *any* project where each single line of code is checked
once again whenever a new release is rolled out.
Martin
_______________________________________________
time-nuts mailing list -- time-nuts at febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.
More information about the time-nuts
mailing list