3 ms·
ISH makes me happy and frustrates me in equal measure. On one hand, it’s exactly what I want on iOS in terms of a shell and Posix sandbox. On the other, it fo
by headmelted 7y ago
ISH makes me happy and frustrates me in equal measure.
On one hand, it’s exactly what I want on iOS in terms of a shell and Posix sandbox.
On the other, it forces x86 emulation on me that I don’t want. If ISH could just give me an aarch64 environment without QEMU at all I’d be in love.
- nneonneo 7y agoThe biggest problem is that iOS completely bans executing native code that isn’t code signed, with the sole exception of the Safari JIT (and possibly Swift Playgrounds - not sure how that works). There’s weird hacks to get around this, e.g. a JIT compiler that compiles native code into ROP chains that jump around gadgets precompiled into your native binary, but otherwise there’s really no way to run arbitrary CPU-native code. Hence, the emulator. And if you have to emulate the CPU, you might as well emulate the most popular CPU for compatibility.
- saagarjha 7y agoSwift Playgrounds has the com.apple.private.amfi.can-execute-cdhash entitlement, which allows it to dynamically load unsigned code.
- hsitz 7y agoIn other words, at least as I would say it: iSH is slow.