No description
Find a file
Lencerf f9b05cb88a docs: create README.md
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2023-06-06 20:55:04 -07:00
.github/workflows build: Create rust.yml 2023-05-26 16:33:18 -07:00
.vscode p9cpu: Implements rpc-based transport layer client 2023-05-26 16:10:07 -07:00
crates p9cpu: forward 9p requests over gRPC stream 2023-05-26 16:10:08 -07:00
.gitignore Start a gRPC-based Rust implementation 2023-05-26 16:10:07 -07:00
backport.sh Add a script for backporting commits 2023-05-26 16:09:53 -07:00
Cargo.lock p9cpu: forward 9p requests over gRPC stream 2023-05-26 16:10:08 -07:00
Cargo.toml Start a gRPC-based Rust implementation 2023-05-26 16:10:07 -07:00
LICENSE Initial commit 2022-12-05 10:03:54 -08:00
README.md docs: create README.md 2023-06-06 20:55:04 -07:00

p9cpu

p9cpu is an implementation of the Plan 9 cpu command for Linux, similar to u-root/cpu. Check the CPU chapter of the LinuxBoot book for more details. Compared with the original Plan 9 cpu and the Go version u-root/cpu, p9cpu is written in Rust and based on tokio. It uses gRPC for the underlying transport.

Build

cargo build --release

Run

Start the server in a VM with vsock:

./p9cpud --net vsock

Use the p9cpu command to run the bash command (of the host) in the VM:

./p9cpu --net vsock --tty --tmp-mnt /tmp --namespace /lib:/lib64:/usr:/bin:/home:/etc $VM_VSOCK_CID -- bash

Check p9cpud --help and p9cpu --help for more details.