You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Jiajie Chen aa0c8b440e
Add note for how to test redis
6 years ago
biscuit Remove i386 arch, add redis and nginx to travis ci test 6 years ago
nginx Build nginx 6 years ago
redis Redis is working with patches and also copy a redis.conf to build dir 6 years ago
rust Fix SYS_FACCESSAT id for non-x86 6 years ago
ucore Remove i386 arch, add redis and nginx to travis ci test 6 years ago
.gitignore add Rust programs. add Makefile 6 years ago
.travis.yml Fix allow_failures syntax again 6 years ago
Makefile Add note for how to test redis 6 years ago
README.md Add note for how to test redis 6 years ago
build-gcc-musl.md update README 6 years ago

README.md

rCore-user

Build Status

User programs for rCore OS.

Now it has 3 parts:

  • ucore: C-lang, from the original ucore_os_lab
  • biscuit: C/C++, from Biscuit, based on a musl instead of original litc.
  • rust: Simple no_std Rust programs.

Build

To build biscuit programs, install musl toolchain first:

# for ARCH linux
$ sudo pacman -Syu musl # archlinux
# for macOS
$ brew install FileSottile/musl-cross/musl-cross 
# for ubuntu 16.04, we should build gcc-musl for newest musl-1.1.21
# please see build-gcc-musl.md
# for riscv musl toolchain, please install [musl-riscv-toolchain](https://github.com/jiegec/musl-riscv-toolchain)
$ make {ucore,biscuit,rust,nginx,redis,all} arch={x86_64,aarch64,riscv32,riscv64}
$ make sfsimg arch={x86_64,aarch64,riscv32,riscv64}

Output to build/$(arch)

Support matrix

x86_64 aarch64 riscv32 riscv64
ucore n y y y
rust y y y y
biscuit y y n y
nginx (linux only) y y n y
redis (linux only) y y y n
busybox y y n y

How to use Redis

After running commands above, you should be able to run redis-server in rCore. Then, start redis-server in rCore:

/> redis-server redis.conf

Then you should be able to connect to it using redis-cli:

$ redis-cli -h 10.0.0.2 set abc def
OK
$ redis-cli -h 10.0.0.2 get abc
"def"

Note: redis-cli in rCore is not working at the time.

Notice

  • The syscall ids have been set compatible with Linux64.
  • So the ucore part can not run on the original ucore.