使用Linux内核制作操作系统

5
我已经搜索了几周关于如何制作操作系统的相关信息。我也阅读了很多有关如何制作像这个问题一样的操作系统的问题:What are some resources for getting started in operating system development?
我想使用#Linux内核制作一个操作系统,它可以启动并在全屏视图中显示浏览器。基本上,我想制作类似于#Firefox OS的东西。
有一些具有类似概念的操作系统,比如#justbrowsing http://justbrowsing.info/ 和#browserlinux。
我还研究过#Linux From Scratch http://www.linuxfromscratch.org/index.html。但是#LFS不是我想要的。
我不想要一个完整的操作系统,可以处理所有情况、情况和错误。只是为了开始我的项目,我想制作一个带有#Linux内核的浏览器操作系统。

1
看看Yocto项目和OpenEmbedded,你就会有想法了。 - vinay hunachyal
是的,学习嵌入式和Angstrom-Linux的Yocto项目是一个非常好的选择。为什么不参考wiki.osdev.org呢?无论你的操作系统基于什么,它都是最好的操作系统开发学习资料! - Am_I_Helpful
你可能会在http://unix.stackexchange.com/上找到更多有关`minimal`、`gui`、`distribution`、`web`、`kiosk`等词汇的问题。我认为你不需要像@shekharsuman建议的那样学习一些低级的操作系统内部知识,而是想要构建一个定制的小型Linux发行版。你的问题很有趣,清晰并表现出了研究的努力,但在这里可能过于宽泛、没有明确答案,并且可能不符合主题(http://stackoverflow.com/help/on-topic)。 - xmojmr
2个回答

4
除了yacto-projects和open-embedded,我建议使用buildroot
Buildroot是一组Makefile和补丁,可轻松生成完整的嵌入式Linux系统。Buildroot可以生成交叉编译工具链、根文件系统、内核映像和引导加载程序映像中的任何一个或所有内容。Buildroot主要适用于使用各种CPU架构(x86、ARM、MIPS、PowerPC等)的小型或嵌入式系统的人员:它自动化您的嵌入式系统构建过程并简化了交叉编译过程。

2

我认为这很大程度上取决于您想要实现什么以及使用的设备等。

我猜您应该尽可能多地了解FirefoxOS,因为它正好提供了您所需的功能。请阅读有关其架构的信息:

它也被称为boot2gecko(b2g),由三层组成,从底部到顶部:

Gonk-底层Linux / Android兼容层,提供硬件驱动程序支持,并且是使用现有调试工具集(如ADB)的基础。

Gecko-是Web平台层(渲染引擎以及Javascript引擎等)。您脑海中有哪个引擎?除了gecko之外,我只能想到webkit / blink。

Gaia-是应用程序层,几乎完全使用Javascript实现。

也许您已经知道所有这些,但我认为您不应该从头开始。 :)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接