1. What are Win2000 Diferance
- Posted by Tony Steward <lockmaster67 at aol.com> Sep 29, 2002
- 415 views
--part1_110.19259cd5.2ac80cb2_boundary Hi All, What do I need to be aware of for my progs to run on win2000 and I can only test on win98se. I have found that result variables need to be atoms as integers will cause crashes. What else? Thanks Tony --part1_110.19259cd5.2ac80cb2_boundary Content-Type: text/html; charset="US-ASCII" Content-Transfer-Encoding: 7bit <HTML><FONT FACE=arial,helvetica><FONT SIZE=2 FAMILY="SANSSERIF" FACE="Arial" LANG="0">Hi All,<BR> What do I need to be aware of for my progs to run on win2000 and I can only test on win98se.<BR> <BR> I have found that result variables need to be atoms as integers will cause crashes.<BR> <BR> What else?<BR> <BR> Thanks<BR> --part1_110.19259cd5.2ac80cb2_boundary--
2. Re: What are Win2000 Diferance
- Posted by David Cuny <dcuny at LANSET.COM> Oct 01, 2002
- 417 views
Ron Tarrant wrote: > Which results are you guys talking about? I've never run into this > (at least, if I did, I didn't recognize it). Under Win95, most pointers returned in Win32Lib tended to be low memory addresses. So if you wrote a code like: int myVar myVar = getSomeWin32Pointer() under Win95, it would tend to work, because the addresses returned were small enough that they would fit into an int. It happened to me quite often: I'd test a program under Win95 and it would run fine, but under WinNT, it would crash. The error under WinNT would be attempting to store a large address into an int. That's because WinNT (and WinMe, Win2000 and even Wine under Linux) would tend to hand back pointer addresses that were too large to store in an int. The proper way to code the example would have been to use an atom instead of an int: atom myVar So basically, it was *always* an error to use an int, but because Win95 tended to parcel out lower memory addresses, it was less likely to crash under Win95. -- David Cuny -- David Cuny
3. Re: What are Win2000 Diferance
- Posted by petelomax at blueyonder.co.uk Oct 02, 2002
- 398 views
{{{ On Mon, 30 Sep 2002 17:15:01 -0700, David Cuny <dcuny at LANSET.COM> wrote:
Under Win95, most pointers returned in Win32Lib tended to be low memory ...
under Win95, it would tend to work, because the addresses returned were small
, but under WinNT, it would
under Win95, it would tend to work, because the addresses returned were small
, but under WinNT, it would
Sounds to me more like a combination of facts: 1) You have 1GB or more of memory. 2) You are running an operating system which is able to use it (I believe win95 won't play with more than 256MB - it just ignores any extra memory the machine has).
Pete
4. Re: What are Win2000 Diferance
- Posted by Robert Craig <rds at RapidEuphoria.com> Oct 02, 2002
- 429 views
Pete Lomax writes: > David Cuny writes: > > under Win95, it would tend to work, > > because the addresses returned were small, > > but under WinNT, it would crash > > Sounds to me more like a combination of facts: > 1) You have 1GB or more of memory. 2) You are > running an operating system which is able to use > it (I believe win95 won't play with more than 256MB > - it just ignores any extra memory the machine has). Don't confuse "virtual" addresses with "physical" addresses. Programs have to deal with virtual addresses that are assigned by the operating system. They are not in any way restricted by the amount of memory on your machine, or by the version of Windows that you are using. For several months after Euphoria 1.0 was released, it would run in plain DOS only. It wouldn't run in a Windows *3.1* DOS window. I was somewhat perplexed, but assumed it was a problem with the DOS extender. In those days (but not now), Euphoria assumed that an address over 2Gb (unsigned) would never be returned from malloc(). I eventually stumbled across the fact that this was wrong. Even Windows 3.1, on a machine with 8 Mb of RAM, was often allocating memory to me above the 2Gb limit. When I redesigned things to allow for this, everything started working in a DOS window as well as plain DOS. So remember to use "atom" to declare anything that might hold an address - no matter what O/S you have, or how little memory you have. In some cases you might be lucky, and "integer" will work. But that's just luck. Regards, Rob Craig Rapid Deployment Software http://www.RapidEuphoria.com
5. Re: What are Win2000 Diferance
- Posted by petelomax at blueyonder.co.uk Oct 03, 2002
- 397 views
On Wed, 2 Oct 2002 08:58:56 -0400, Robert Craig <rds at RapidEuphoria.com> wrote: >Don't confuse "virtual" addresses with "physical" addresses. Yep, my bad. Sorry to all for the misinformation I just spouted. Pete