NMT CSE Wiki

Dept. of Computer Science & Engineering

User Tools

Site Tools


commons:xv6

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
commons:xv6 [2018/08/29 10:03]
wmyers
commons:xv6 [2019/08/22 11:44] (current)
hashfastr
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:
  
-''​+<​code>​
 $ ssh USER@login.cs.nmt.edu $ ssh USER@login.cs.nmt.edu
-''​+</​code>​
  
 If you'd like to use qemu graphically,​ you should use this ssh command If you'd like to use qemu graphically,​ you should use this ssh command
 instead: instead:
  
-''​+<​code>​
 $ ssh -XYC USER@login.cs.nmt.edu $ ssh -XYC USER@login.cs.nmt.edu
-''​+</​code>​
  
 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: 
 + 
 +<​code>​ 
 +$ git clone git://​github.com/​mit-pdos/​xv6-public.git 
 +</​code>​ 
 + 
 +Then build it:
  
-We've created a wrapper script that'​ll run `make` with the right variables! First, ​cd into your git repository. Then it's as simple as:+<​code>​ 
 +cd xv6-public 
 +$ make 
 +</​code>​
  
-''​ +You can then run xv6 in qemu using gdb by running:
-$ 325make ​qemu-nox-gdb +
-''​+
  
-If you'd like to also launch ​gdb at the same time you can run:+<​code>​ 
 +$ make qemu-nox-gdb 
 +</​code>​
  
-'+And then connect to qemu'gdb by running the following in gdb:
-$ 325make --gdb +
-''​+
  
-This command will start up a tmux session; there'​s a good primer on tmux [[https://​danielmiessler.com/​study/​tmux/#​gs.t9gaMWc|here]]. You can see all of the options available with `-h`:+<​code>​ 
 ++ target remote localhost:26000 
 +</code>
  
-''​ +Note that the port number is subject to change and can be found as output when ''​make qemu-nox-gdb'' ​is run, this should be shown more in detail in your Lab 1 PDF.
-$ 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://​github.com/​oparkins/​nmt-class-helpers/​tree/​master/​CSE325/​xv6-docker|github]]. 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://​github.com/​oparkins/​nmt-class-helpers/​tree/​master/​CSE325/​xv6-docker|github]].
  
commons/xv6.txt · Last modified: 2019/08/22 11:44 by hashfastr