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/29 16:01] wmyers |
commons:xv6 [2019/10/16 16:45] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | === How to run xv6/jos on a CSE machine === | + | ==== How to run xv6/jos on a CSE machine |
+ | |||
+ | ===**Note: Due to the magic of mainline code, a custom qemu package is no longer required**=== | ||
== 0: Get a CSE account == | == 0: Get a CSE account == | ||
Line 12: | Line 14: | ||
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 |
+ | |||
+ | Clone xv6 into your home directory as such: | ||
+ | |||
+ | < | ||
+ | $ git clone git:// | ||
+ | </ | ||
+ | |||
+ | Then build it: | ||
- | We've created a wrapper script that' | + | < |
+ | $ cd xv6-public | ||
+ | $ make | ||
+ | </ | ||
- | '' | + | You can then run xv6 in qemu using gdb by running: |
- | $ 325make | + | |
- | '' | + | |
- | If you'd like to also launch | + | < |
+ | $ make qemu-nox-gdb | ||
+ | </ | ||
- | '' | + | And then connect to qemu's gdb by running the following in gdb: |
- | $ 325make --gdb | + | |
- | '' | + | |
- | This command will start up a tmux session; there' | + | < |
+ | + target remote localhost:26000 | ||
+ | </code> | ||
- | '' | + | Note that the port number is subject to change and can be found as output when '' |
- | $ 325make | + | |
- | '' | + | |
- | == Alternate Method == | + | ==== Alternate Method |
If you prefer to use the magic of containers, either on your own machine or on the CSE machines, there is a Ubuntu 16.04 Dockerfile created for this class located on [[https:// | If you prefer to use the magic of containers, either on your own machine or on the CSE machines, there is a Ubuntu 16.04 Dockerfile created for this class located on [[https:// | ||