Just fine. We've found very, very few programs that don't run on Win 7, and usually it's a matter of whether you are using 32 or 64 bit (most XP installations were 32 bit.) Win 7 also has a very good compatibility mode which allows it to run Xp programs in an XP like environment that is transparent to you. If there's a problem, it can be corrected. Not sure about Win 8, but I believe all of that carried over. We even have DOS apps that run well in Windows 7.
Xp apps run fine on 7. If you have the Ultimate version of 7, your xp apps are run with an included xp vm instead of using the compatibility settings in the apps config menu.
It really depends on the application. I will not say that "most" run "just fine". Office XP for instance, will not run at all. Many that will run have to be specifically opened in compatibility mode... so understanding that... most run just fine. You also cannot upgrade directly from XP to 7. You will have to do a "custom" install, which will put your XP stuff in a folder called old.windows and you will have to reinstall pretty much everything from the source medium... though all of your data will be available to you.
No Problem on Win 7 Enterprise with some older revs of CorelDRAW, Photoshop and Illustrator, from the circa XP time.
I have Windows 8.. If you've ever owned/used a Microsoft Surface Tablet or a Nokia Lumia Windows phone, it's setup just like that. It does, however, have a desktop feature. To your question, I haven't tried running XP apps on Windows 8. To be honest, I've never had a need to because Windows 7 (Before I went to Windows 8,) was a vast improvement from Windows Vista and it contained all of the great functionality in Windows XP (I know some people will boo at me for saying that...be gentle). As such, I scrapped most of the stuff on Windows XP and went to newer stuff on Windows 7. Anything that I've ever needed works perfectly fine on Windows 7. However, if you need to have an application that is only useful on Windows XP or not compatible with the latest version of Windows, you can always setup some sort of VM (Virtual Machine) and run Windows XP through that. This way, you can just power on the VM and use the application as you see fit. Might be a bit overboard if it's something like Office, but if it's truly needed, there are definitely other routes you can take.
I might suggest using VirtualBox in rootless mode for any XP app that won't run right on 7 or 8. You would just set up a virtual machine to run XP, get it installed, install the guest additions and then set it to rootless mode in one of VirtualBox's menus. Then you would just have to install that app under XP and run it from the XP start menu or quick launch, depending on how you set that up. But really, do away with Wintard altogether and just use a good home desktop variety of Linux. I recommend OpenSUSE for any Intel-compatible PC, and I think they're even working on ARM support right now, so that even your ARM-based tablet or whatever will be able to run that awesome free, libre software.
I agree. And Wintard is a major limp dik. But I haven't had any issues with XP stuff under Win 7. And I love Virtual Box! It's also great if you're a pirate, cracker, or hacker. IMO Win 8 is unnecessarily clunky and a pain in the ass to tweak. Prolly juss me.
Windows 8's compatibility mode is impressively thorough. Every single program I have tried to run so far has worked. Even pirated stuff. I cannot say that about Windows 7. I hate the Metro UI with a passion, but everything else about Windows 8 is simply awesome. I have no complaints. Everything is faster, more stable, and more compatible. There really is no reason to buy Windows 7 at this point, unless you are married to the Aero UI.
The Metro interface manages to be worse than the Gnome Shell. I was horrified by it. Definitely not the thing for me..
95% of the problems with programs written for one recent version of Windows not working with another is generally because of sloppy coding by the programmer of the software you are trying to write. We saw a lot of this in the early days. Microsoft makes freely available resource kits for programmers, as well as suggestions on how to handle certain areas of code, like handling memory. In the early days (Win 3 - Win95), programmers sometimes tried to "shortcut" this, by addressing and handling memory themselves directly (often times finding a small 20-80k in an unused section marked as "reserved"). Now this would work fine in say Windows 3.1, but was completely FUBAR when the program tried to run in Win95 (because MS had set aside that area for future use, and it was now needed). This then caused a crash. And those of us that remember the days of upgrading from one major OS to another all to often know how this worked. A program tries to access sound directly instead of having the OS handle it. They get that to work fine in one version of the OS, but when the next changes how it handles sound, suddenly it does not work right. Generally, most programs by major companies either do not have this problem, or have released patches to solve them (when Windows Vista changed how sound was handled, most companies like Adobe released patches to solve it). I would suggest going to the website of whoever made your program and looking for patches, known issues or updates. That should answer all of your questions.