This is also why we have attack vectors
There have been 0, none, nit, swabo, bukes malware attacks on mainframe computers in 40 years. None, because code does not run with privileges and there are no pre-built scripts for script kiddies to use. Write a piece of code that does a buffer overflow on a zSystem running on VM and guess what happens? The process SOC1s and dies, never having gotten a chance to do anything. Put this up on some Windows machine and the attacker 0wns your boxes and can do just about anything they want. Or put up a mainframe, a $70,000 entry-level zSystem will do the equivalent work of about 1,000 blade servers. That mainframe will cost about $90 a month in electricity based on a machine eating about 1KW of electricity, whereas the 1,000 blade servers will probably cost $300,000 and eat $6,000 a month in electricity based on 100W each.
But you'll hardly ever see some kid out of school or young guy even consider a mainframe solution for running a high-volume, high-reliability computing solution because most of them have never even had exposure to a mainframe. And you can't recommend what you've never even heard of.
I can't even run 16-bit MS DOS or Windows applications on a 64-bit machine and running 32-bit ones requires an emulation layer; I've had a quad-core 64-bit Windows 7 machine for two years and only discovered this gem about 3 months ago. Yet you can run 40-year-old MVS binaries on a zSystem on zOS now, without any problems. Well, the PCs of today are fast enough you can run old MS DOS applications under the DOS Box emulator; it felt wierd running an old MSDOS PC game at full speed on a Power PC Macintosh which isn't even an 80x86 processor.