IIRC the Android uses hardware-assisted virtualization through Intel HAXM. iOS simulator is run entirely in userspace in a seperate launchd context.
(Mostly referring to the actual processor/OS itself; buttons that "vibrate" the phone are not really technically interesting to me.)
This is the same as the Android x86 "emulator".