[M3devel] More on threading

Jay K jay.krell at cornell.edu
Sat Feb 19 11:03:54 CET 2011


1. That is the expected result. Please please look closer.
2. Yeah, the sample I derived from is a bit buggy but I think I fixed its bugs, I vaguely recall.


I'm sure there's no problem here, anyway. At least on Windows 2000 and newer.
Maybe on NT 3.x, NT 4.0, Win9x, maybe depending on the install of IE. But I doubt anyone cares.


Heck, for a very long time, this code didn't really work for MacOSX, FreeBSD, NetBSD, OpenBSD, Solaris,
only Windows, Linux, OSF/1, and nobody seemed to notice.. (it falls back to the local
IPv4 address, which isn't very unique typically).
I think it works everywhere now, through heavy #ifdef.
(Given the level of #ifdef, I wonder if we should either combine Windows and Posix into
one file, or split up Posix into multiple files, or just leave it alone..)


Thanks,
  - Jay

From: rcolebur at SCIRES.COM
To: m3devel at elegosoft.com
Date: Sat, 19 Feb 2011 04:34:38 -0500
Subject: Re: [M3devel] More on threading











Jay:
 
For Windows 2000 SP4, using Visual C++ 2005 Express Edition:
 
1.  I tried building the MachineID.c program in the first example link, but it runs into an unresolved symbol at link time.
 

cl MachineID.c

Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 14.00.50727.762 for 80x86
Copyright (C) Microsoft Corporation.  All rights reserved.
MachineID.c

Microsoft (R) Incremental Linker Version 8.00.50727.762

Copyright (C) Microsoft Corporation.  All rights reserved.
/out:MachineID.exe

MachineID.obj

LIBCMT.lib(crt0.obj) : error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup

MachineID.exe : fatal error LNK1120: 1 unresolved externals

 
2.  I was able to build the program in the 2nd link.  Here is the output from running this program:
 
        Num Entries: 2
        Index[0]:        16777219

        InterfaceName[0]:        osoft Visual Studio 8\Common7\Tools\

        Description[0]:  EL574ND4 Ethernet Adapter

        Type[0]:         Ethernet

        Mtu[0]:          1500

        Speed[0]:        100000000

        Physical Addr:   00-00-86-5E-DF-A0

        Admin Status[0]:         1

        Oper Status[0]:  Operational
        Index[1]:        1

        InterfaceName[1]:

        Description[1]:  MS TCP Loopback interface

        Type[1]:         Software Lookback

        Mtu[1]:          1500

        Speed[1]:        10000000

        Physical Addr:

        Admin Status[1]:         1

        Oper Status[1]:  Operational


Regards,
Randy
 


From: jayk123 at hotmail.com [jayk123 at hotmail.com] On Behalf Of Jay K [jay.krell at cornell.edu]

Sent: Tuesday, February 15, 2011 7:56 PM

To: Coleburn, Randy; m3devel

Subject: RE: [M3devel] More on threading





It should work.

 

 

http://dcvs.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-libs/libm3/src/uid/WIN32/MachineID.c?rev=1.14;content-type=text%2Fplain

 

 

Bing for "MSDN GetIfTable"

=> 
http://msdn.microsoft.com/en-us/library/aa365943(VS.85).aspx

 

 

Mika, what made you think cm3 doesn't work on Windows 2000??

I don't think anything has been remotely suggested.

 

 

 - Jay

 


From: rcolebur at SCIRES.COM

To: jay.krell at cornell.edu; m3devel at elegosoft.com

Date: Tue, 15 Feb 2011 17:05:37 -0500

Subject: Re: [M3devel] More on threading





Jay, since I have a Windows2000 system, I can test the MAC address discovery (or anything else you need).  Just let me know.
Regards,
Randy Coleburn
 


From: jayk123 at hotmail.com [mailto:jayk123 at hotmail.com]
On Behalf Of Jay K

Sent: Monday, February 14, 2011 8:12 PM

To: Coleburn, Randy; m3devel

Subject: Re: [M3devel] More on threading


 
Agreed -- I don't know of any reason Windows 2000 wouldn't work.

Or possibly even older. The main "upgrade driving" factor is what the C toolset/runtime supports.

And I've tested building with quite old C toolsets.

Hm. Maybe the new-ish MAC address discovery code doesn't work on older systems? That could be.

I could make that use GetProcAddress and fallback to the older code.

That is an area with the historical code seemed too non-ideal to stick with, and clearer

more direct code might depend on newer systems.

 

 

 - Jay



 

> From: rcolebur at SCIRES.COM

> To: m3devel at elegosoft.com

> Date: Mon, 14 Feb 2011 18:01:14 -0500

> Subject: Re: [M3devel] More on threading

> 

> Mika wrote...

> >But no I don't use Windows. I was asking on here how to get started with

> >Modula-3 on Windows once but my machine was/is a Windows 2000 system and

> >apparently CM3 no longer works on win2k..?

> 

> I use CM3 on Windows 2000/XP/7 and it works on all of these versions.

> --Randy Coleburn


 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20110219/0d790f48/attachment-0002.html>


More information about the M3devel mailing list