You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by sh...@e-z.net on 2012/04/12 00:51:40 UTC

Clock and Calendar References

Samuel,


Clock and Calendar References

http://en.wikipedia.org/wiki/Gregorian_calendar

http://wikipedia.org/wiki/Time_formatting_and_storage_bugs

http://www.ismosys.com/downloads/general/Dates%20potentially%20causing%20computer%20problems.pdf

CLOCK ROLLOVER DATE ISSUES:

Network Time Protocol -- Rollover every 136 years
  Unsigned 32-bit integer in seconds since epoc: Jan 1, 1900
  Rollover Date: Feb 6, 2036
  Rollover Date: Feb 5, 2036 -- if 1900/02/29 is taken into account

Unix Date Structure (time_t) -- Rollover every 68 years
  Signed 32-bit integer in seconds since epoc: Jan 1, 1970
  Rollover Date: Jan 19, 2038

IBM 370/zSeries Mainframe Clocks -- Rollover every 142 years
  Signed 64-bit integer in microseconds since Jan 1, 1900
  Rollover Date: Sep 17, 2042 at 23:53:47.370496

GREGORIAN CALENDAR NOTES:

The Gregorian Calendar accommodates the leap-year 4/100/400 algorithm.
This calendar was introduced by Pope Gregory XIII and signed by
Roman Catholic decree on Feb 24, 1582 -- known then as the
reformed calendar.

The Gregorian new year is based on an adjustment of the
Julian Calendar that was implemented in year 40 B.C.
The Julian Calendar implemented the basic 4-year leap year
algorithm.

SOFTWARE IMPLEMENTATION NOTES:

Some of the operating system date-time functions are not
thread-safe.  For these functions, you will need some type of
mutex (mutual exclusion) in a multi-threaded environment.
Some operating systems have thread-safe date-time functions,
but their names are not standardized across platforms.

System calls suchas mktime() that will convert a struct tm{}
structure to be canonical and handle date-range updates,
will not work outside the UNIX epoc (1970-1937).

-----

Enjoy your research!

Steven J. Hathaway
Xalan Documentation Project
<sh...@apache.org>



---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-dev-help@xml.apache.org