TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Ian Moote
from: Jonathan de Boyne Pollard
date: 1999-12-04 10:11:25
subject: Basic Pds Y2k Ok

 IM> I don't know about you, but I intend to be sending E-Mail to my great-
 IM> great-great grandkids over the Galactinet with my super-conducting 
 IM> berylium parallel processing clone from my summer home on Mars. [:)

Another adherent to the Vila school of philosophy.

 GW>> According to tests run by some of the other echo users the 2079
 GW>> thing is *NOT* a problem with OS/2 itself (by that I mean the base OS
 GW>> resident in memory) but with the support utilities provided with it.

 IM> Well, that distinction may mean something to somebody but like I said,
 IM> I  set my RTC to 2080 and OS/2 came up thinking that it was 1980. To
 IM> my way  of thinking, if there were nothing wrong with the base
 IM> operating system  then there would be no need for date windowing in
 IM> the first place. It  seems pretty obvious to me that while OS/2 won't
 IM> have a problem in the  year 2000, this is only due to a kludge and
 IM> OS/2 has a date problem.

OS/2 doesn't have a date problem, though.  Even in 16-bit OS/2 the year value
in the global infoseg is a 16-bit value that can hold values up until 65535. 
What OS/2 has is a design that is limited of necessity by the underlying PC
hardware.  You are basing your reasoning on the assumption that the RTC
hardware is "good until the year 9999".  It isn't.  It's good for exactly 100
years from any given base year.  In the case of the IBM PC/AT, that base year
is 1980, meaning that it is good until the year 2079.

This is because the majority of RTCs do not have proper century registers (due 
to the somewhat ironic fact that because of windowing fixes in operating
systems and BIOSes, hardware manufacturers have not felt compelled to produce
such chips).  An operating system that wants to work on a wide range of PC/AT
or PS/2 compatiable machines can make *no* assumptions about the location of a 
century byte, nor even assumptions about its presence in the first place.

If there were a way of determining unambiguously that there were a century
byte and where it were stored in NVRAM by the BIOS (and there are at least 3
locations that it can be in), the clock driver in OS/2 would be able to obtain 
the century byte and would not need to include a windowing fix.  But there is
no such way for all of the hardware that OS/2 is targetted to run on.  The
ACPI specification provides a means for operating systems to obtain the
location of the century byte in NVRAM, true, but the ACPI specfication is
relatively new.  Older BIOSes simply won't support it.

 ¯ JdeBP ®

--- FleetStreet 1.22 NR
* Origin: JdeBP's point, using Squish (2:257/609.3)

SOURCE: echoes via The OS/2 BBS

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.