nightingale
v0.15.0
Nightingale是X86_64的操作系统,我已经开发了7年,以了解低级编程和操作系统设计。
Nightingale实现了类似于Posix的Userland,尽管合规性不是目标。我认为Posix可以像是一种被理解和记录的接口,并且可以允许与大量现有软件的兼容性。

有关更具体的功能信息,请参见大约。
Nightingale使用CMAKE构建系统,您可以在GitHub Actions Workflow文件中找到包装要求。
make在项目的根源中执行。./run.rb其帮助文本将显示可用的选项doc :文档include :整个系统的标头文件interface :SYSCALLS和ERRNO值的接口定义kernel :操作系统的核心libc :常见的用户世界例程,包括printf之类的东西linker :内核模块加载器,Userland动态链接器和libelfscript :用于建造和开发夜莺的实用脚本toolchain :CMAKE工具链文件user :与系统分发的in-tree usermode程序bt.bash : addr2line周围的便利包装器进行回溯dump.bash : objdump周围的便利包装format.bash :bash: clang-format周围的便利包装make.bash :该项目的核心构建引擎run.rb : qemu-system-x86_64周围的便利包装器这些清单文件定义了Nightingale内核的公共SYSCALL接口,它们被渲染到c枚举和元数据中,这些核心和元数据均由内核和C库使用。
ERRNOS :定义errno的值,他们的名字和他们的perror字符串SYSCALLS :定义syscall数字,类型和参数