TCCBOOT

软件截图:
TCCBOOT
软件详细信息:
版本: 0.1
上传日期: 3 Jun 15
许可: 共享软件
价格: 0.00 $
人气: 58

Rating: 1.0/5 (Total Votes: 1)

TCCBOOT项目是一个引导装载程序能够直接从它的源代码编译并引导Linux内核。
TCCBOOT只有138 KB大的(未压缩的代码),它可以编译和一个2.4 GHz的Pentium 4处理器运行一个典型的Linux内核,在不到15秒。
TCCBOOT是基于TinyCC编译器,汇编器和连接器。 TinyCC是一个实验产生一个非常小的,简单的C编译器,GNU C编译器和二进制实用程序兼容。
TCCBOOT靴同样的方式作为一个Linux内核,所以任何引导装载程序,可以运行“的bzImage”Linux内核映像可以运行TCCBOOT。我只用ISOLINUX测试,但LILO或GRUB应该工作了。
TCCBOOT从存储在初始RAM磁盘(initrd的)一个压缩文件系统ROMFS读取C语言或汇编源。它首先读取文件“启动/ tccargs'包含TinyCC命令行(相同的语法TCC可执行文件)。该TinyCC调用应该输出一个二进制图像'内核'。该图像在地址0x00100000加载。 TCCBOOT然后做一个跳转到地址0x00100000在32位平模式。这与“vmlinux的”内核映像的ABI兼容。
编译:
TCCBOOT只使用Linux 2.4.26测试。为了建立TCCBOOT,你必须首先编译内核2.4.26,因为简单TCCBOOT使用一些二进制文件和头从Linux内核。 TCCBOOT也需要TinyCC的源代码(与TinyCC版本0.9.21测试)。您可以修改Makefile给予必要的路径。
例如:
一个“Hello World”的ROMFS分区包括:(initrd.img中)。您可以从例如/目录重建。你可以用QEMU仿真器的PC与“QEMU-tccboot'脚本测试它。
内核编译:
为了您的信息,补丁“的linux-2.4.26-tcc.patch”给出了必要的修改,以建立一个Linux内核TCCBOOT(注:这是不是suffisant到与自己的Makefile构建内核 - 我从来没有尝试过)。相应的内核配置文件中的linux-2.4.26-配置。补丁是必要的,原因如下:
- 不支持的装配指令:.rept,.endr伪,.subsection
- “#定义__ASSEMBLY__'需要组装源
- 静态变量不能从内联汇编代码中可以看出
- 打字/左值问题“? :'
- 没有长长位字段
- “对齐”属性不支持整体结构,仅供领域
- OBSCUR预处理器的bug
有些问题很容易被固定的,但我太懒了。可以肯定的是还是有很多漏洞由TinyCC / TCCBOOT生成的内核,但它至少可以引导并启动一个外壳。

截图

tccboot_1_144840.png

类似的软件

boottool
boottool

3 Jun 15

s6-linux-utils
s6-linux-utils

19 Feb 15

Upstart
Upstart

17 Feb 15

显影剂的其他软件 Fabrice Bellard

Tiny C Compiler
Tiny C Compiler

3 Jun 15

KQEMU
KQEMU

2 Jun 15

意见 TCCBOOT

评论没有发现
添加评论
打开图片!