3 ms·
That is 2^29 milliseconds. I dread to imagine the reasons leading to 28-bit millisecond time in an airplane.
by hoseja 7y ago
That is 2^29 milliseconds. I dread to imagine the reasons leading to 28-bit millisecond time in an airplane.
- srcmap 7y agoI first encountered such bug way back in 1996 time frame. When I tested embedded system nonestop for ~25 days and system has issue. It is counter wrap around time for 2^31 if counting once every millisecond. From that point on, I make sure test cover counter wrap around in 2^31, 2^32 etc. Until one day, someone told me the system I worked on, deploy in Comcast data center has issue after ~250 days...... I used hearing news about Newton, Win98, 777 etc has issue after 25 days, 49 days, etc. It is very easy to guess what the potential issues were.
- pcl 7y agoPresumably someone is using the high four bits for some other purpose. It wouldn't surprise me if parts of an A350's avionics software is old enough that those sorts of space optimizations made sense.
- datenwolf 7y agoIt could also be a tagged value. These are quite common in code created by "high reliability" languages (Ada, OCaml). The high bits are used to carry some metadata. E.g. you might want to set a certain bit if the value went outside the defined input range of a function (think for example far from the accepted numerical window of a Taylor series expansion). Instead of dealing error conditions at each and every step (thereby making the timing properties of the code unpredictable) you just collect all error conditions and at the end decide if you discard the value, or just use it partially (e.g. it might still be "good enough" to be used as a parametizing input of an adaptive filter, where it averages out with the rest).
- K2L8M11N2 7y agoMaybe it’s counting in microseconds?
- hoseja 7y agoThen it would be ~153 hours to be near a bit overflow.