what I should using to work with linux on windows ... I don't know ! ... but I tried VirtualBox and VmWare what's the differents and which are the feutures
Im using a bit of both (VMWare at work, as it's the software that's used the most in the company I work for ; and VirtualBox at Home), and, to develop, I don't see much of a difference : both do what I need, which is provide a Virtual Machine, independant of the host system.
If you are going to use it for some production system, maybe VMWare might be a safest bet, at least for support -- and it's more widely used in the industry, I'd say.
If you want free software, VirtualBox OSE is the way to go.
Edit after comment, to clarify : by "free", I mean "libre" : both VMWare server/player and VirtualBox are free (as in "cost not money"), but only VirtualBox OSE is free as in "libre" -- see Open Source VirtualBox and other editions
One thing that was not so good with VirtualBox was that it didn't support VM with several CPU ; that's possible, now, with versions 3.x, if I remember correctly.
You might also be interested by a couple of questions / asnwers about that subject, like, for instance :
You also have several other possibilities, like QEMU, for instance -- but those are less known/used ; so maybe not that useful if you want to use a VM for work and share it with co-workers...
In my experience I have found VMWare to be a brilliant virtualization tool. I have used the workstation version and the server version, it's worked flawlessly for me, however; I do find that VMWare is not as simple to get going as VirtualBox is, if you want the free (server) edition you will be running a little excess overhead to manage the services component.
On the other hand I've now switched to VirtualBox on OSX and it's been everything I've ever needed. It works perfectly for a development environment and allows assigning USB ports exclusively to a machine or based on vendor codes (filters).
VirtualBox also contains a snapshot feature that is only part of the workstation (retail) version of VMWare.
In summary, if you want a dedicated machine to handle your virtualization, go with VMWare, but if it's for development purposes on your local machine, I'd definately go with VirtualBox.
I've used VMWare with great success for developing drivers where you need to run checked OS builds and debug & single-step kernel code. I think that is its major strength. I use VirtualBox for hosting assorted OSes holding software I don't want to install on my work PCs (like old versions of browsers and applications, etc).
VirtualBox also starts up much faster than VMWare in my experience...
I ran into some config issue with VirtualBox (shared folders weren't working anymore and I didn't know how to enable it again) so I tried VMWare as I assumed it was a professional piece of code and maybe I could get it going faster than tracing my issue in VirtualBox.
VMWare didn't solve it so I decided to go back to VirtualBox. In the process of uninstalling VMWare on WindowsXP I lost all the network connections and my tech support gave up fixing it so I ended up re-formatting the drive and installing everything again, thanks to VMWare.
Thanks to VMWare I installed a fresh copy of Virtualbox and it's running smoothly. That's how I feel about the two.
You might consider to use both at first! Install a Linux VM in both VMWare and VirtualBox. Use both for two months or more. After a while, you'll notice that you're using one of them more than the other. The one you use most is the best one for you, providing you the most features that you're using.
If you still can't decide after two months, just use them even longer...