项目简介
SC是一个现代C++裸金属框架,提供类似操作系统的原语和库,让开发者能像编写用户空间应用程序一样编写代码。该框架支持C++20标准,运用了C++20的四大特性(协程和范围尚未支持)。其设计紧凑,适用于闪存100KB以上、RAM 60KB以上的微控制器。
项目的主要特性和功能
- 采用C++20标准编写,支持C++20的四大特性。
- 支持动态内存分配。
- 支持C++异常处理。
- 支持QEMU模拟器和Raspberry Pi 4硬件平台。
- 使用基于Makefile的自定义构建系统,因主流构建系统对C++20模块支持不足。
安装使用步骤
1. 安装依赖
SC仅支持clang编译器,推荐使用clang - 11版本。
MacOS
sh
brew install llvm@11
brew install qemu
brew install binutils
Ubuntu
sh
sudo apt-get install clang-11
sudo apt-get install lld-11
sudo apt-get install qemu-system-arm
2. 编译项目
使用Makefile进行编译,支持QEMU模拟器和Raspberry Pi 4目标平台。
编译QEMU目标
sh
make TARGET=qemu-aarch64 -j8
编译Raspberry Pi 4目标
sh
make TARGET=rpi4 -j8
3. 运行项目
在QEMU中运行
sh
qemu-system-aarch64 -M virt,secure=on,virtualization=on -cpu cortex-a53 -m 512 -smp 1 -nographic -semihosting -kernel build-qemu-aarch64/sc.bin
或者使用Makefile中的QEMU目标:
sh
make TARGET=qemu-aarch64 qemu -j8
在Raspberry Pi 4上运行
将生成的sc.bin
文件作为kernel8.img
放入SD卡中,系统将启动到SC shell。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】