Theodore Dubois 3e590e92d2 Support putting the root filesystem in a directory
Also added repz cmpsb, support for executing dynamic libraries,
set_tid_address stub, and found an alternative to setup.c.
2017-07-23 18:15:59 -07:00
2017-07-17 17:59:43 -07:00
2017-07-13 16:24:29 -07:00
2017-07-06 11:31:12 -07:00

ish

A project to get a Linux shell running on iOS. Currently, a usermode x86 emulator for Linux.

Roadmap:

  • Hello world in assembler
  • Hello world with statically linked C library
  • Hello world with dynamically linked C library
  • Busybox shell
  • Port the thing to Darwin/iOS, release on the app store
  • QEMU cpu test program
  • Busybox wget

Build system is meson. Run programs with ./thingy program. If you're not sure what to run, there are some test programs in (you guessed it) tests. Run ninja busybox to download and build busybox.

You can also replace thingy with ptraceomatic to run the program in a real process and single step and compare the registers at each step. I use it for debugging. Requires 64-bit Linux 4.11 or later.

Description
Linux shell for iOS
Readme 87 MiB
Languages
C 70.2%
Objective-C 21.4%
Assembly 5.4%
Swift 0.8%
Meson 0.8%
Other 1.3%