[ntp:questions] Failure modes on Windows Server 2008 R2 64-bit

Martin Burnicki martin.burnicki at meinberg.de
Tue Aug 13 14:29:52 UTC 2013


David Taylor wrote:
> On 13/08/2013 13:44, Martin Burnicki wrote:
> []
>> Take care if you have also installed some stuff from David Taylor. This
>> is perfectly fine but AFAIK David uses VS2010, so there may be
>> dependencies on the VS2010 runtime from David's binaries, and
>> dependencies on the VS2008 runtime from Meinberg's binaries.
>> Martin
> ===================================
> Martin, you raise a good point.  Yes, mune are compiled with VS2010, and
> I've never had to install extra runtime DLLs to get NTP working, but may
> of my PCs run other software as well which /may/ have installed them.  I
> seem to recall that on several out-of-the-box Windows-8 installs, your
> recent 4.2.6p5 "London" version installed without the need for any extra
> DLLs, and my locally-compiled 4.2.7p development versions could be
> written over the top of your install without issues (SSL dependency
> excepted).  Lots of others have used your install without issues, and
> many have used my updates as well.
> When I read your posting, I was concerned and did look at ntpd.exe and
> ntpq.exe from my versions with Depends On, and I could only find a
> reference to MSVCRT.dll, and that only through the referenced system
> DLLs.  Perhaps MSVCRT.dll gets updated with the different Visual Studio
> updates.
> On my XP system MSVCRT.dll is 343,040 bytes, modified 14-Apr-2008.
> On a Windows-7/64 PC, the MSVCRT.dll is a 64-bit DLL (even though
> ntpd.exe is a 32-bit program), 634,880 bytes, modified 16-Dec-2011.

I haven't looked at the details for quite some time now, but if I 
remember correctly then basically all Windows versions should install 
the runtime library versions of all compiler packages shipped until the 
particular windows version was rolled out.

For example:

- Win NT, 2k, and XP should include the runtime libraries for VC6, but 
not for VS2008.

- Vista and newer should include the runtime libraries for VC6 and VS2008.

- Win7 and server 2008 might include the runtime libraries for VC6 and 
VS2008, and VS2010.

etc. Maybe the statements above are not quite excat in telling which VC 
runtimes are shipped with which Windows versions, but the point is that 
current Windows versions should provide the runtimes for current and old 
compiler versions, while old Windows version can't provide runtime 
versions of compilers which have been recently released after the 
Windows version.

In case of 64 bit Windows OS versions you have to keep in mind that the 
system32 directory contains 64 bit versions of DLLs, whereas the 32 bit 
versions of DLLs can be found in the syswow64 directory.

Self-explaining, isn't it? ;-)

Since the NTP package is 32 bit only it also requires the 32 bit 
runtime, even on a 64 bit system.

Yet we had only a single case where the VS2008 runtime explicitely had 
to be installed on a Server 2008 64 bit Windows system. I'm not sure if 
this was 2008 or 2008R2.

The remaining question is if the non-presence of the 32 bit VS2008 
runtime on some Server 2008 x64 systems is a feature or a bug on a 
particular installation source, or if it is excluded if some OS features 
are deselected during installation. I havent installed Server 2008 for a 
long time so I don't know out of my head if there's an option to 
deselect something.

> Of course, maybe the other MS VC runtime DLLs are dynamically
> referenced.  If this is a genuine concern, I would certainly like to
> have it well-documented.

I agree, but this probably requires quite some investigation, or some 
statement from MS about the presence of different runtime libraries on 
default Windows installations.

Martin Burnicki

Meinberg Funkuhren
Bad Pyrmont

More information about the questions mailing list