google summer code
C Assembly Other
Latest commit 372cbf8 Nov 21, 2014 @ycui1984 Merge pull request #1 from 0intro/master
fix amd64 atom.s in ape
Permalink
Failed to load latest commit information.
9K plan9_amd64 setup Jun 20, 2014
AMD64_compiler plan9_amd64 setup Jun 20, 2014
PART1 plan9_amd64 setup Jun 20, 2014
PART2/src fix amd64 atom.s in ape Nov 20, 2014
PART3 plan9_amd64 setup Jun 20, 2014
PART4 plan9_amd64 setup Jun 20, 2014
QEMU plan9_amd64 setup Jun 20, 2014
SCHED updates Aug 6, 2014
README.txt documents Aug 13, 2014
lock-sched-design.txt updates Aug 14, 2014

README.txt

GSOC plan9 code

original image, based on which we create our own amd64 kernel
http://plan9.bell-labs.com/wiki/plan9/download/

To run our amd64 kernel

1. install the iso

2. mkdir -p /amd64/bin/^(ape auth aux bitsy dial disk fossil fs games ip ndb oventi pub replica upas usb venti aux/jot aux/style ip/httpd) /amd64/lib/ape

3. copy 9K to /sys/src

4. copy PART1 to kinds of directories

5. cd /sys/src/cmd; for(a in 6a 6c 6l)@{cd $a && mk clean && mk install}

6. copy PART2 to kinds of directories

7. cd /sys/src; objtype=amd64 mk install

8. mk clean in /sys/src && rm /amd64/lib/\*.a

9. copy AMD64\_compiler into /usr/glenda

10. cd 6a && mk install;  cd 6c && mk install ; cd 6l && mk install; cd cc && mk install

11. cd /sys/src/ && objtype=amd64 mk install

12. copy PART3 to kinds of directories

13. cd /sys/src/9k/k10/ && mk install  it makes 9k10cpu and 9k10cpu.elf for use
9k10cpu is plan9 bootable, while 9k10cpu.elf is used for QEMU

14. PART4 forces the code return to normal MCS, when runing the kernel, it is OK for up to 4 cpus in
QEMU and KVM, but some problems happened when using 8 cores.

This kernel in step 13 is with MCS and monitor and mwait
There is a bug when running on QEMU, not sure it is caused by QEMU or not. 
When using more than 1 cpu, registers dump and kernel crash

Note, there is a bug on Ubuntu 13.04 for QEMU which prevents the instance takes root 
from remote file server and auth server.
Using the mainstream code solves this problem, git clone git://git.qemu-project.org/qemu.git

some useful docs for setting up auth+fs+cpu server,
http://wildflower.diablonet.net/~scaron/p9setup.html
http://mirror.9grid.fr/mirror.9grid.fr/plan9-cpu-auth-server-howto.html
and plan9 wiki, of course!