This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
commons:xv6 [2018/08/27 17:04] wmyers |
commons:xv6 [2019/08/22 17:44] hashfastr |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | = How to run xv6/jos on a CSE machine | + | ==== How to run xv6/jos on a CSE machine |
- | == 0: Get a CSE account | + | ===**Note: Due to the magic of mainline code, a custom qemu package is no longer required**=== |
+ | |||
+ | == 0: Get a CSE account | ||
First, you'll need a CSE account. The instructions for getting one can be | First, you'll need a CSE account. The instructions for getting one can be | ||
Line 8: | Line 10: | ||
You can use the *guest* account on a lab machine, but your data will be deleted on logout! | You can use the *guest* account on a lab machine, but your data will be deleted on logout! | ||
- | == 1: Log into a CSE machine | + | == 1: Log into a CSE machine |
You can SSH into a CSE login machine like so: | You can SSH into a CSE login machine like so: | ||
- | '' | + | < |
$ ssh USER@login.cs.nmt.edu | $ ssh USER@login.cs.nmt.edu | ||
- | '' | + | </ |
If you'd like to use qemu graphically, | If you'd like to use qemu graphically, | ||
instead: | instead: | ||
- | '' | + | < |
$ ssh -XYC USER@login.cs.nmt.edu | $ ssh -XYC USER@login.cs.nmt.edu | ||
- | '' | + | </ |
There are more in-depth instructions [[ssh|here]]. Or, of course, you can log into any CSE lab machine. | There are more in-depth instructions [[ssh|here]]. Or, of course, you can log into any CSE lab machine. | ||
- | == 2: Make and run xv6/jos | + | == 2. Running xv6 == |
+ | |||
+ | Clone xv6 into your home directory as such: | ||
+ | |||
+ | < | ||
+ | $ git clone git:// | ||
+ | </code> | ||
+ | |||
+ | Then build it: | ||
+ | |||
+ | < | ||
+ | $ cd xv6-public | ||
+ | $ make | ||
+ | </ | ||
+ | |||
+ | You can then run xv6 in qemu using gdb by running: | ||
- | We've created a wrapper script that' | + | < |
+ | $ make qemu-nox-gdb | ||
+ | </ | ||
- | '' | + | And then connect to qemu's gdb by running the following in gdb: |
- | $ 325make qemu-nox-gdb | + | |
- | '' | + | |
- | If you'd like to also launch gdb at the same time you can run: | + | < |
+ | + target remote localhost:26000 | ||
+ | </ | ||
- | '' | + | Note that the port number is subject to change and can be found as output when '' |
- | $ 325make | + | |
- | '' | + | |
- | This command will start up a tmux session; | + | ==== Alternate Method ==== |
+ | If you prefer to use the magic of containers, either on your own machine or on the CSE machines, | ||
- | '' | ||
- | $ 325make -h | ||
- | '' |