Originally Posted by meynaf
Ok, but the more code you have, the more silly mistakes can creep in.
This is, of course, true, but more code doesn't necessarily mean bloat. There are legitimate reasons for a large code base, and many other reasons for bloat besides a large code base.
Also, the more developers you have.
Then let's just return to the point.
And mine is that memory protection is optional.
Ok. Mine is that memory protection is a very good idea and i see no legitimate reason to turn it off, ever.
Maybe there is a case for games to be able to gain complete control over the screen and the audio hardware. But we could discuss that. I see no reason to go over the operating system's head to do file operations or reserve memory.
Let's imagine a scenario.
Supposing someone were to download a popular multi-player game. They want to play the game because it is a really good game, and all their friends are playing it online. Of course, it has network access. But it turns out the game has a bug which is exploitable in some way that nobody imagined at the time of writing, but it allows someone to hack their own copy of the game in order to send malicious code to other players. You did not write this game, in asm or otherwise.
There is no memory protection. What can this malicious code do, and what can't it do, and why?