https://github.com/ericnorris/xv6-labs
https://github.com/ericnorris/xv6-labs
Last synced: over 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/ericnorris/xv6-labs
- Owner: ericnorris
- License: other
- Created: 2024-01-17T00:33:57.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-23T03:15:26.000Z (over 2 years ago)
- Last Synced: 2025-01-30T19:16:20.015Z (over 1 year ago)
- Language: C
- Size: 17.1 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README
- License: LICENSE
Awesome Lists containing this project
README
# xv6-labs
Implementation of https://pdos.csail.mit.edu/6.1810/2023/.
## Reproducing this repository
```sh
# add the class git server as a remote, from https://pdos.csail.mit.edu/6.1810/2023/labs/util.html
git remote add xv6-labs-2023-upstream git://g.csail.mit.edu/xv6-labs-2023
# fetch all branches from the labs, but prefix them with xv6-labs-2023/*
# h/t https://stackoverflow.com/a/56030832
git fetch xv6-labs-2023-upstream refs/heads/*:refs/heads/xv6-labs-2023/*
# start from the `riscv` branch
git checkout -b main xv6-labs-2023/riscv
# push all of the branches, including the prefixed lab branches, to github
git push --all origin
```
## Developing
```sh
nix-shell
```
## Implementing a lab
First, merge `main` into the $LAB branch so you can utilize nix-shell:
```sh
git checkout xv6-labs-2023/$LAB
git merge main
```
Then, once you've implemented the lab, merge it back into main:
```sh
git checkout main
git merge --no-ff xv6-labs-2023/$LAB
```