- None.
- Ditto.
- As much as possible... especially if you intend to publish your server. (make it available to the general internet)
- Most servers are Win32 OS only, minimum requirement is NT4, but the SQL server(s) *needed* work best around Windows 2000 / 2003 server. (2000 workstation or XP are also good choices, but not practical for large servers on the internet)
"Virtual Machine" is a technology to host software, including the OS, isolated from the bare hardware by an application running under another OS. It's not unlike "Emulation" (as may be used to run software and games from old 8 / 16 bit computers on modern ones) but does not simulate the core CPU... only the other devices attached, such as hard drive, display, sound and user input devices like keyboard and mouse.
You can run single applications in a "virtual machine" and Windows does this with every application you run on Vista / Seven, in order to prevent user applications conforming to older standards from changing system wide settings unless they are accepted as a setup program. This is enforced by UAC and "virtual folders" or "personal folders". It is also implemented automatically for any 32-bit application run on a 64-bit version of Windows, or any 16-bit DOS or Windows application run on 32-bit versions of Windows.
Using a more complete virtualisation, isolating the entire operating system, not just a single application, allows you to install OS components like SQL and web servers without affecting your host system, and to use a more appropriate host OS for the server than the one you would like to run your desktop on. So you can run Windows 2000 Server / Server 2003 x86 in the virtual machine and your PT server on that while you run Mac OS, Linux, Vista or Windows Seven x64 as your main / primary OS. Neither system can pollute the other (so the SQL your home or small business accounts SQL database and updates will never affect your PT servers SQL) and you can more easily backup and restore a virtual machine. You can effectively image the machines current state from your host desktop and make incremental / differential drive images at that... often instantly, and without shutting down. (depending on the Virtualisation software used)
VPS hosts use Virtual Machines to enable them to sell 5 equal Virtual Servers on 3 physical machines, none of which will go down if any of the physical devices fails, and each of which will have equal resources and access to the hardware. ^_^ (that's quite impressive isn't it?) They actually work on much larger scales, selling hundreds of servers on tens of machines, even if they are only a small host... but the reduced example illustrates that 5 into 3 cannot
ever exactly fit... until it's virtual.
Your summery? If you want a truly "private" server which is not open to the public and just for a couple of friends when in the same building, if you can install DBase or Foxpro, then you probably have the skills required already. You will already know that such services should be installed on a reasonably "clean" PC (not one chock full of personal user applications) and understand enough about networking to know how to open ports and define legal connections for your network.
If you want a public pServer (one hosted on the internet that the general public of the world can sign-up to play) then you will need to know much much more just to keep hackers out, keep it stable and available.
If you want a public server to be successful, then software development skills are probably a must, but no more than marketing and public relations. ^_^