最小的POSIX兼容操作系统


8

出于教育目的,我想从POSIX兼容基础开始,包括外壳,基本实用程序和ANSI C编译器,然后看看可以通过将软件包放在一起来构建什么样的环境。

但是,我遇到的大多数最小的符合POSIX的操作系统似乎都是嵌入式和/或专有的。我可以在Virtualbox上轻松运行这些开源系统吗?

我搜索了一些有关从头开始构建这样的环境的信息,但是要获得一个可启动/可用的环境似乎要花很多功夫,而与POSIX兼容的环境要少得多。某天我可能会尝试构建POSIX OS,但首先我想先变得更精通计算机。

注意:

我想我曾经听说过Linux并不完全符合POSIX,但是只要我可以编译并构建一些更常见和必不可少的开源工具(例如wget和w3m),无论是否愿意,我都会很高兴使用了Linux内核。我想可能会随操作系统一起提供的其他基本组件也是如此(例如glibc)


当您看到“专有”的问题时,我看不到问题出在哪里,因为专有并不妨碍POSIX一致性。您是否要表示“商业”?
Hibou57 2014年

Answers:


10

POSIX没有指定一个完整的操作系统,所以任何POSIX兼容的操作系统将有不在POSIX命令(如initmkfspasswd,...)。但是不同的OS具有不同的扩展,并且GNU工具(在非嵌入式Linux系统上找到)有很多。

BusyBox是一组旨在用于嵌入式Linux系统的命令行工具。它包含POSIX要求的大多数实用程序和选项(尚不完整,但很接近)。如果要通过SSH登录,则可以使用引导加载程序,Linux内核,BusyBox和Dropbear来构建运行中的Linux系统。如果要在最小系统上进行开发,请添加Gcc

如果您希望从完整但很小的发行版开始,请查看MINIX 3。这是一个小型的unix系统,旨在用于嵌入式系统和教学。

如果您想要一个更容易扩展的系统,请查看OpenBSD。OpenBSD专注于安全性,但在功能上比较保守,但是核心系统的确包含主要组件,例如Perl和Apache。


我相信TCC比GCC更接近ANSI C / ISO C99,这将使其成为在严格的POSIX环境中避免不合格特性的C编译器的更好选择。
Hibou57 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.