In the words of AMD senior product marketing manager Marc Diana in an interview with The Verge in June, "We're struggling to find a name for what used to be called porting, because there's not really a problem with that anymore." (In fact, several developers showed demos of their Xbox One and PS4 games on the PC at E3 rather than on the devices themselves.) It's so easy, in fact, that some of the next generation titles may actually come to the PC first as a result, and so this happy arrangement begs the question: why get a console at all?
if this is the case whats to stop someone "cracking" a ps4 and xbox one game to get it to work on a pc?
The porting thing never really existed anyway. The only time something is really ported is when a game is developed specifically for a console, and then the game engine itself is "ported" to work in a PC environment. The games themselves aren't ported, they are just compiled for different platforms and shipped with differing assets.
Which brings me on to the next part, what's stopping people from "cracking" a PS4 or Xbox One game is that they will have been compiled to work in the PS4 and Xbox One environments.
Despite them both being x86-64, it doesn't directly mean that the software is directly compatible. You just have to look at Linux/OSX to see the comparison there. For the most part you can't get native OSX/Windows applications working on the other platform without access to the source code so that you can compile a version that is for the specific platform.