From: Paolo M. <pao...@gm...> - 2010-06-25 06:53:18
|
Hi Henry, I have tried to use your devel-64bit packages on my 32bit linux system. All compiling process is OK. To understand 64bit internal (IDT and memory management) I'd like to test a linux native 64bit on a qemu-64bit. But I need gcc 64bit. My gcc produce 32bit code. Is there some option ? I have see that your 64bit package compile linux kernel. But it uses gcc. And my gcc is 32bit. Thanks, Paolo On Wed, Jun 23, 2010 at 9:52 PM, Henry Nestler <hen...@ar...> wrote: > Hello Paolo, > > the Windows driver for 64 bit works. I have it. I wrote a simple drive > example for 64 bit. So, the tools are complete. Yes, ReactOS have the basic > headers. It was a little puzzle, and I have bug-fixed some small source > there. > > Interestings you can read on my home page: > http://www.henrynestler.com/colinux/tools/mingw-w64/ > > If you would use Qemu, you can emulate a 64 bit CPU. If curse boot Windows > 2008 64 bit would need round about 10 minutes. But, it works. Qemu was my > first experimence with 64 bit, on my old Pentium 800 MHz. There I have build > the TAP 64 bit driver for openVPN. > > Hard programming all the 64 bit stuff would be one option. An other would be > to use hardware virtualisation VT-x/AMD-V. VirtualBox use it. The goddy > would be, that the OS-switch would be very fast. The badly is, I can not > test it under VirtualBox. So I would need Qemu again for testing coLinux in > a saver environment. > > All what everybody with and without 64 bit CPU can do, is to fix the tons or > warnings, where "pointers" are casted to "long" and sometimes such "long" is > casted back to "pointer". This is a warning for compiler, but in many cases > it is a bug for 64 bit systems. (pointer is 64 bit and long is 32 bit under > Windows!) One of the typically problems are the macros for queue handling > (co_queue_get_tail, co_queue_get_prev, ...) > > Other problems are not supported functions in DDK for 64 bit. For example > RtlDosPathNameToNtPathName_U. An alternate function or a code snip to > replace this function would be helpfully. It's in coLinux the function > "co_canonize_cobd_path" that needs to adjust. This you can also do under 32 > bit. - This and the queue macros are good parts for you. ;-) > > I know the task is complex. If everybody does a small part, it is doable. > The very big step was to have a basic driver working, and good working set > of tools. Currently, I have not checked about 64 bit memory management. I > will do it as next step. So, of curse I will give my try on the harddest > part. For this I need some time to locate all the missing informations and > bring it into my little brain. > > -- > Henry > > > On 23.06.2010 12:25, Paolo Minazzi wrote: >> >> Henry, >> The task is complex. >> >> Surely you already know it .... there is a good book about linux kernel >> ia64. >> It explain a little about low level programing ia64. >> I have already thought to buy it. >> >> About win64 driver with mingw64 ... I have read that ReactOs people >> can generate them. I don't know if you are already able to do it. >> >> For now I have no 64bit computer. >> I have never used linux64bit native. >> >> Bye, >> Paolo >> >> >> >> On Tue, Jun 22, 2010 at 9:41 PM, Henry Nestler<hen...@ar...> wrote: >>> >>> On 21.06.2010 08:51, Paolo Minazzi wrote: >>>> >>>> ....about 64bit porting.... >>> >>> Yes, and I hope somebody would help now. >>> >>> I totally have no idea for the passage page. My plan is to switch from 64 >>> bit mode into 32 bit mode and use the old passsage code. In this case we >>> can >>> use the current Linux kernel code. In the next step we can create a >>> passage >>> page for 64 bit to 64 bit later. >>> >>> -- >>> Henry N. >>> >>> > |