-
Notifications
You must be signed in to change notification settings - Fork 221
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Fix #429, OS_time_t with single tick counter #735
Fix #429, OS_time_t with single tick counter #735
Conversation
CCB:2021-01-13 APPROVED @ejtimmon please comment on App impact |
Use a single 64-bit tick counter as OS_time_t, rather than a split 32 bit seconds + 32 bit microseconds counter. This benefits in several ways: - increases the timing precision by 10x (0.1us ticks) - increases the representable range by 400x (+/-14000 yrs) - simplifies addition/subtraction (no carry over) - avoids "year 2038" bug w/32-bit timestamps
6a2ebed
to
7e34a2c
Compare
Rebased to current "main" and confirmed this builds OK against the current "main" branch of cfe/psp. (i.e. dependencies resolved, everything looks OK). Also added an explicit cast to This should be ready to go now. |
…nators Fix nasa#735, add comment if null terminated or not.
Describe the contribution
Use a single 64-bit tick counter to implement
OS_time_t
, rather than a split 32 bit seconds + 32 bit microseconds counter.This benefits in several ways:
Fixes #429
Testing performed
Build and run all unit tests, sanity check CFE
Expected behavior changes
None
System(s) tested on
Ubuntu 20.04 (native)
RTEMS 4.11 + pc686 (qemu)
Additional context
This is the final step listed in issue #429, and it depends on several dependencies being merged already:
It is submitted as a separate PR from #723 due to the dependencies, so it doesn't necessarily all have to be merged at once. However if CCB wants to accelerate the rollout this can be all done in a single merge cycle.
Contributor Info - All information REQUIRED for consideration of pull request
Joseph Hickey, Vantage Systems, Inc.