123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- = run usage
- ....
- ./run [OPTIONS] [-- EXTRA_RUN_ARGS]
- ....
- [options="header"]
- |===
- |Name |Argument name |Description
- |`-a` |`ARCH` |Run architecture `ARCH`.
- |`-c` |`NCPUS` |Emulate `NCPUS` guest CPUs.
- |`-D` | |Run GDB on the emulator itself.
- |`-d` | |Wait for GDB to connect before starting execution.
- |`-E` |`CMDSTR` |Replace the normal init with a minimal init that just evals
- with given `CMDSTR` bash command string. Example:
- `-E 'insmod /hello.ko;'`
- |`-e` |`CLI_OPTIONS` |Pass an extra Linux kernel command line options,
- and place them before the dash separator `-`.
- Only options that come before the `-`, i.e. "standard"
- options, should be passed with this option.
- Example: `./run -a arm -e 'init=/poweroff.out'`
- |`-f` |`CLI_OPTIONS` |Pass an extra Linux kernel command line options,
- add a dash `-` separator, and place the options after the dash.
- Intended for custom options understood by our `init` scripts,
- most of which are prefixed by `lkmc_`, e.g.:
- `./run -f 'lkmc_eval="wget google.com" lkmc_lala=y'`
- Mnenomic: comes after `-e`.
- |`-G` | |Pass extra options to the gem5 executable.
- Do not confuse with the arguments passed to config scripts,
- like `fs.py`. Example: `./run -G '--debug-flags=Exec --debug' -g`
- |`-g` | |Use gem5 instead of QEMU.
- |`-h` | |Show this help message.
- |`-I` | |Run with initramfs.
- |`-i` | |Run with initrd.
- |`-K` | |Use KVM. Only works if guest arch == host arch.
- |`-k` | |Enable KGDB.
- |`-m` | |Set the memory size of the guest. E.g.: `-m 512M`. Default: `256M`.
- The default is the minimum amount that boots all archs without extra
- options added. Anything lower will lead some arch to fail to boot.
- Any
- |`-T` | |Enable extra QEMU trace events.
- `./configure --enable-trace-backends=simple` seems to enable
- some by default, e.g. `pr_manager_run`, and I don't know how to
- get rid of them. But those events are rare and should not impact
- performance, so we just ignore them for now.
- |`-U` | |Pass extra parameters to the program running on the `-u` tmux split.
- |`-u` | |Create a tmUx split the window.
- You must already be inside of a `tmux` session to use this option.
- * on the main window, run the emulator as usual
- * on the split:
- ** if on QEMU and `-d` is given, GDB
- ** if on gem5, the gem5 terminal
- |`-V` | |Run QEMU with VNC instead of the default SDL.
- Connect to it with: `vinagre localhost:5900`.
- |`-x` | |Run in graphic mode. Mnemonic: X11.
- |===
|