Hardware DEP and basic ASLR were both available prior to Windows 7, that's true. However, both were pretty ineffective. ForceASLR debuted with Windows 8 and was later released in an update to Windows 7. It allows better control over how non-ASLR-compatible DLL's are loaded into memory, which under the new model, are forced to randomize by default, even if they're not compatible. DEP support in Windows 8 was also greatly improved on the software side making it harder to exploit. XP, Vista and Windows 7 had relatively weak implementations of DEP with many flaws.