100 Years of Macintosh
Zero seconds on the Mac OS system clock is January 1, 1904. The Mac OS epoch hits 100 years ... now. That's assuming you live in the Pacific time zone, anyway: the Mac OS epoch is unique in that it is time zone-specific. Of course, none of this applies unless you are running Mac OS, and all you Mac users are using Mac OS X, right? (Geek note: the Mac OS epoch is unsigned, which is why it can count over 100 years from 0 seconds, and 32-bit Unix can't, though it can count backward to 1901.)
The article confuses epoch and ticks. The epoch is a fixed point in time. Ticks is a number of seconds (or other time unit) since the epoch.
Fresnel lens has a small scratch, and vacuum tube port is broken, but otherwise mint. Best offer.
Since Apple models itself a hardware company, do they offer patches on a similar basis as Microsoft or to they rely more on the BSD patching system?
Closer to Microsoft than anything else. Apple's patches generally come in the form of installer applications that can be downloaded and installed automatically via the bundled "Software Update" application (GUI and command line) or can be downloaded and installed manually from the support section of their website.
Apple does not publish the source of any of their GUI applications or the GUI framework itself. It does however release the source to the rest of the OS under the name "Darwin". Patches and other updates to Mac OS X generally find their way into Darwin and can be browsed at http://developer.apple.com/darwin.
The typical artist/writer/mom-or-dad user can click a couple buttons and have OS X update itself (or even set it to always keep itself updated). More technical users can browse the Darwin website for more details. (This was recently done by several folks wanting to know more about how Panther, Mac OS X 10.3, does its automatic defragmentation and optimizing. They dug around in the Darwin souce until they found that particular part of the HFS+ architecture. Examined the code and made a few posts explaining the process to everyone else).
Ha! Us Windows users don't have this problem. Microsoft won't let us use a Windows OS that old! *SmUG*
"Derp de derp."
Actually it depends on the Mac - there are about 4 or 5 dates they can reset to:
1904, 1956, 1976 , 1984, 2001, depending on the machine.
This was a "Stump the Experts" Question at the 2003 world wide develoepr conference.
Some Macintosh models have clocks that reset to August 27, 1956 (and to a time other than midnight, I believe). This is the birthdate (and time) of Ray Montagne, the Apple engineer and programmer who designed the chip that controlled the PRAM on those models.
As for January 1, 1904, this date was selected because the original Mac's clock (which counts in seconds) can encompass a period of about 136 years. Selecting 1904 as the start date means that the 136-year period covered by the clock (1904-2040) includes the birthdate of nearly every Mac user, and extends well past the expected lifetime of the Mac OS. It also means that the simplest rule for leap-years can be used (every fourth year has an extra day), which simplifies day and date calculations. They didn't choose the year 1900 because it was not a leap year.
~Philly
I agree all those epochs are too random, including the birthday of Jesus Christ. IMHO the only meaningful and universal epoch is a time of the Big Bang. All time should be count from that.
Less is more !
The Macintosh traditionally measured time for most purposes in seconds since Midnight, January 1st, 1904. The call to get this value is GetDateTime() which takes a pointer to a unsigned long and returns the number of seconds by assigning the value to the argument.
Unlike what the article says, GetDateTime() is still available under the Carbon framework in MacOS X. However, there are now other ways of dealing with date/time in the MacOS. Ironically the preferred method, CFDate is also available under MacOS 9. So, I don't really get the point of the write up saying that this works only in MacOS 9.
Frankly this is of little interest to anyone who is not a Macintosh programmer - and only mild interest to those of us who are Macintosh programmers.
It is interesting to note that the Apple Newton also measures time from this reference point. However, it measures minutes since 1904 instead of seconds in dealing with its default date handling routines. On the Newton they had no real reason for picking that reference date other than that the Mac already used it.
On the original Mac, they did have a good reason for picking it. Apparently 1904 is the first leap year in the 20th century and it simplified the algorithm for factoring in leap years by starting at that point. Since they were trying shoe horn a graphical OS onto a 128Kb machine with no HD (but they did have some ROMs), you can't really fault them for taking a few shortcuts.
Avoid Missing Ball for High Score
Actually, in just three weeks there will be a real anniversary of the introduction of the Macintosh - January 24th, 1984.