473,394 Members | 1,703 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,394 software developers and data experts.

Help on moving to Win64 bit system?

I'm thinking to move from WinXP 32bit to Windows 2003 Server 64 bit.
But first I have some unclear issues that would like to clarify in here
using your kind help:
(1) Can I take a driver (like the Coerce Frame Grabber Driver) that is used
for Windows XP 32 bit and use it on the 64 bit system?
(2) Assuming the answer to (1) is true - Can I use the 32 bit driver from
within a 64 bit application?
Do I need to write mixed code in my application, I mean; does my application
should be build from mixed components (DLL's), some of them 32bit, and some
of them 64 bit?
How will the mixed 32/64 components will interface with each other?
(3) On a 64bit system; How a 32bit executable should communicate with a
64bit executable? Does the C#/.NET remoting and TCP will work to communicate
between the two?
(4) What is the maximum continuous memory chunk limit per process in a Win64
bit system (with and without the linkage switch and Boot.ini switch)?
(5) What is different between WinXP 64bit and Windows 2003 Server 64 bit?
-------------
Thanks a lot
Sharon
Jan 22 '06 #1
15 2123
Sharon,
1) All drivers for Windows 2003 Server 64bit must be 64 bit drivers. I use
x64 version, and so far the only driver I haven't been able to find is the
bluetooth USB, but I suspect I could hack the one from the Windows XP 64 bit
x64 version.

2) No, you cannot use a 32 bit driver. A 32 bit application, yes.

3) Not sure how a 32 bit app might communicate with a 64 bit app.

4) for memory architecture, go here:

http://support.microsoft.com/default...;EN-US;q294418

5) difference between XP and Server 64 bit versions is virtually identical
to the differences between the associated 32 bit versions.

Peter
--
Co-founder, Eggheadcafe.com developer portal:
http://www.eggheadcafe.com
UnBlog:
http://petesbloggerama.blogspot.com


"Sharon" wrote:
I'm thinking to move from WinXP 32bit to Windows 2003 Server 64 bit.
But first I have some unclear issues that would like to clarify in here
using your kind help:
(1) Can I take a driver (like the Coerce Frame Grabber Driver) that is used
for Windows XP 32 bit and use it on the 64 bit system?
(2) Assuming the answer to (1) is true - Can I use the 32 bit driver from
within a 64 bit application?
Do I need to write mixed code in my application, I mean; does my application
should be build from mixed components (DLL's), some of them 32bit, and some
of them 64 bit?
How will the mixed 32/64 components will interface with each other?
(3) On a 64bit system; How a 32bit executable should communicate with a
64bit executable? Does the C#/.NET remoting and TCP will work to communicate
between the two?
(4) What is the maximum continuous memory chunk limit per process in a Win64
bit system (with and without the linkage switch and Boot.ini switch)?
(5) What is different between WinXP 64bit and Windows 2003 Server 64 bit?
-------------
Thanks a lot
Sharon

Jan 22 '06 #2
Thanks a lot for the info.

But I still couldn't find an answer to the thread question: What is the
maximum continuous memory chunk limit per process in a Win64
bit system (with and without the linkage switch and Boot.ini switch)?

The article you mentioned does not say what is the maximum continuous memory
chunk limit per process in a Win64 bit system.
--
Thanks
Sharon
Jan 23 '06 #3

"Sharon" <Sh*****@newsgroups.nospam> wrote in message
news:58**********************************@microsof t.com...
| Thanks a lot for the info.
|
| But I still couldn't find an answer to the thread question: What is the
| maximum continuous memory chunk limit per process in a Win64
| bit system (with and without the linkage switch and Boot.ini switch)?
|
| The article you mentioned does not say what is the maximum continuous
memory
| chunk limit per process in a Win64 bit system.
|
|
| --
| Thanks
| Sharon

There is no such thing as "maximum contiguous memory chunk" defined at the
process level, there is only a maximum user virtual address space (VAS) per
process.
The maximum user VAS for X86 Windows is 2GB or 3GB (/4GT tuning), and ~8TB
for X64.
The size of the largest chunk of contiguous memory available in the VAS is
subject to the amount of fragmentation. This is true for both X86 and X64,
of course finding a contiguous chunk of 10GB on X64 won't be an issue with
such a huge VAS.
Willy.

Jan 23 '06 #4
Hi Sharon,

If you're working on a managed app, there is no problem using the remoting
or TCP.

theoretically speaking, a 64-bit process can use as much as 8TB memory. So
the maximum memeory chunk is 8TB. However, some spaces will be taken by the
code segment. Also, if some block has been assigned in the middle of the
chunk, you will note get 8TB continuous chunk.

Kevin Yu
=======
"This posting is provided "AS IS" with no warranties, and confers no
rights."

Jan 23 '06 #5
Thank you all for your prompt info.

Kevin - When you say "there is no problem using the remoting or TCP.", are
you referring to my third question regarding the communication between 32bit
process and a 64bit process?

Furthermore; Can a win32 DLL can communicate with win64 DLL and vice versa?

--------
Thanks
Sharon
Jan 23 '06 #6

"Sharon" <Sh*****@newsgroups.nospam> wrote in message
news:52**********************************@microsof t.com...
| Thank you all for your prompt info.
|
| Kevin - When you say "there is no problem using the remoting or TCP.", are
| you referring to my third question regarding the communication between
32bit
| process and a 64bit process?
|
| Furthermore; Can a win32 DLL can communicate with win64 DLL and vice
versa?
|
|
|
| --------
| Thanks
| Sharon

64 bit applications can only load 64 bit DLL's, 32 bit applications can only
load 32 bit (non COM) DLL's.
For inter-process communication, you can use any IPC mechanism available in
windows. That means you can use COM+, DCOM, RPC, and the lower level IPC
protocols like named pipes and sockets as IPC mechanism between 64 bit and
32 bit applications. As Kevin said, managed applications can use remoting as
interop channel between 64bit and 32 bit managed applications.
Willy.

Jan 23 '06 #7
If I'm using a 32bit machine (hardware: CPU, drivers etc.) as my development
PC; Can I use this PC (with installed VS2005) to compile code for 64bit to be
executed on another 64bit PC?
Or must I also compile the code on a 64 bit machine?

---------
Thanks
Sharon
Jan 23 '06 #8
If I'm using a 32bit machine (hardware: CPU, drivers etc.) as my development
PC; Can I use this PC (with installed VS2005) to compile code for 64bit to be
executed on another 64bit PC?
Or must I also compile the code on a 64 bit machine?

---------
Thanks
Sharon
Jan 23 '06 #9

"Sharon" <Sh*****@newsgroups.nospam> wrote in message
news:B8**********************************@microsof t.com...
| If I'm using a 32bit machine (hardware: CPU, drivers etc.) as my
development
| PC; Can I use this PC (with installed VS2005) to compile code for 64bit to
be
| executed on another 64bit PC?
| Or must I also compile the code on a 64 bit machine?
|
| ---------
| Thanks
| Sharon

VS 2005 PRO can be used to compile native C++ as 64 bit, but you need a 64
bit OS to run or debug.
Managed code JIT compiles to 32 bit code on 32 bit platforms and to 64 bit
code on 64 bit platforms (OS and Framework).
Willy.
Jan 23 '06 #10
Hi Sharon,

Yes, I was referring to your 3rd question. Willy has listed the common ways
to communicate between a 32bit process and 64bit process.

Kevin Yu
=======
"This posting is provided "AS IS" with no warranties, and confers no
rights."

Jan 24 '06 #11
Just to make sure I understand you correctly.
To generate a 64bit managed assemblies (from managed C++, Managed VB, C#
etc.) I must compile the code on the 64bit machine with Win64 OS and 64bit
Framework.
But unmanaged code can be compiled both on a 32bit machine and 64bit machine
using the VS2005 to generate 64 bit unmanaged assemblies.

Is that correct?

-------
Thanks
Sharon
Jan 24 '06 #12

"Sharon" <Sh*****@newsgroups.nospam> wrote in message
news:1F**********************************@microsof t.com...
| Just to make sure I understand you correctly.
| To generate a 64bit managed assemblies (from managed C++, Managed VB, C#
| etc.) I must compile the code on the 64bit machine with Win64 OS and 64bit
| Framework.
| But unmanaged code can be compiled both on a 32bit machine and 64bit
machine
| using the VS2005 to generate 64 bit unmanaged assemblies.
|
| Is that correct?
|
| -------
| Thanks
| Sharon

No, managed code is compiled to "platform independant" IL by default[1], and
the IL is compiled to 32 bit or 64 bit code at run-time depending on the
platform is runs on.
That means that it will run as 32 bit code on X86 and as 64 bit code on X64.
If you want your code to run on a specific platform only, you can specify
the target by means of the /platform commandline swich (or a VS project
option).
For instance if you specify /platform:x86, your code bit run as 32 bit on
both 32bit and 64 bit windows.
If you specify /platform:x64, your code will only run on X64 (as 64 bit
code).
[1] The default /platform is anycpu.

Willy.

Jan 24 '06 #13
Hi again,

I sow this article http://support.microsoft.com/?kbid=283037 about how to
support a large memory in Windows Server 2003.

Maybe I can use this instead of moving to 64bit.

The info I'm missing is how much memory each process can have using this PAE?
-------
Thanks
Sharon
Jan 26 '06 #14

"Sharon" <Sh*****@newsgroups.nospam> wrote in message
news:73**********************************@microsof t.com...
| Hi again,
|
| I sow this article http://support.microsoft.com/?kbid=283037 about how to
| support a large memory in Windows Server 2003.
|
| Maybe I can use this instead of moving to 64bit.
|
| The info I'm missing is how much memory each process can have using this
PAE?
|
|
| -------
| Thanks
| Sharon

As I said before, the maximum memory a 32 bit process can access is 2GB (or
3GB using the /3GB boot.ini switch).
PAE is only meant to:
- let the CPU address RAM memory above the 4GB physical boundary.
- use AWE to dynamically map portions of physical memory to the process
working-set.
Note that the AWE API's are not exposed by the framework and this mapped
memory can only be used by unmanaged code (or unsafe constructs), the CLR
cannot take advantage of it at all, or otherwise stated - it's not an option
for managed applications.
Note also that you need at least the Enterprise edition of w2k3 for this and
a server that can accommodate more than 4GB of RAM.

Willy.
Jan 26 '06 #15
Ok. In that case, I understand that even if I use the PEA and AWI API with
unmanaged code I will have more then 2 or 3 GB per process, but still it will
not be possible to allocate single continuous memory chuck.
I'm I correct?

-------
Thanks
Sharon
Jan 26 '06 #16

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: abcd | last post by:
kutthaense Secretary Djetvedehald H. Rumsfeld legai predicted eventual vicmadhlary in Iraq mariyu Afghmadhlaistmadhla, kaani jetvedehly after "a ljetvedehg, hard slog," mariyu vede legai pressed...
2
by: Mauro Cicognini | last post by:
Hi to everybody, please forgive me if what I'm asking is obvious but I couldn't really find out any good pointers in a few hours of googling on the python site and related places. The question...
2
by: Francesc Guim Bernat | last post by:
Dear Collegues, I've developed an application with .NET framework using System.Xml utilities. But now I can verify that my applications works more slower than i expected. I think that it's...
0
by: Christian McArdle | last post by:
REQUEST FOR DISCUSSION (RFD) unmoderated group comp.os.ms-windows.programmer.win64 This is a formal Request For Discussion (RFD) to create comp.os.ms-windows.programmer.win64 as an unmoderated...
0
by: Christian McArdle | last post by:
REQUEST FOR DISCUSSION (RFD) unmoderated group comp.os.ms-windows.programmer.win64 This is a formal Request For Discussion (RFD) to create comp.os.ms-windows.programmer.win64 as an unmoderated...
0
by: Vijay Chegu | last post by:
Hi I am using vc++ .net 2003 ide with Feb 2003 platform sdk to build 64bit application. I want to use vc++ to debug the app on 64bit machine. As we do not have 64bit VC++, I would like to...
2
by: Olaf Baeyens | last post by:
Just a silly question: If I understand correctly pure C# compiled as Win32 will run as Win64 without need to recompile. But will pure managed C++ also be able to do that? I also heard that pure...
2
by: Egbert Nierop \(MVP for IIS\) | last post by:
Hello, I created a Win64 build environment by copying from a Win32 environment, and modifying the Win32 macro to the Win64 macro. After that, the properties window does not load anymore and...
4
by: Bob Homes | last post by:
In VB6, I used a system, which I loved, whereby I assigned a "helpId" to each menu item; that way, you could rest the cursor on the item (without actually running it) and then press F1 to get...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.