请输入您要查询的百科知识:

 

词条 g-bios
释义

项目简介:

g-bios是由 Intel、IBM、Qualcomm、AMD 的几名资深软件工程师与开源社区共同研发的一个 Bootloader,或者说是一个嵌入式系统的 BIOS,类似于u-boot(另一个有名的Bootloader,由德国人发起)。g-bios的作用相当于 PC 机的BIOS + Bootloader。g-bios 不但借鉴了几乎所有主流 BSP/BIOS/Bootloader 的优点,而且加入不少独创的特性。

项目主要负责人是有着业界狂人之称的Conke Hu(毕业于浙江大学,原Intel、AMD公司资深软件工程师/项目经理,AMD Chipset Linux Kernel负责人,Linux Kernel、g-bios等开源项目开发者),目前他也是MaxWit公司的主要负责人。

独创之处:

主要有以下几点:

1、自动检测有待烧录的 image 文件类型,并智能自动烧录。

2、支持多种文件系统,包括 YAFFS2、JFFS2、CRAMFS、UBI、NFS 等。

3、命令行自动补全(Tab)键及历史记录(上、下键)支持。

4、Flash(MTD) 分区支持,帮助 Linux、Android 内核识别分区。

5、自动设置 Linux 内核启动参数(Linux kernel command line),极大地降低了参数设置的复杂度并减少了启动出错的概率。当然,同时也支持手动设置,以满足特殊要求。

6、常用命令具有记忆功能。如 boot 命令,它能记住用户输入的参数,以后只需简单输入boot 即可。

7、引入全新的架构及 NB 技术(即 Never Burn-down,又称 “烧不死” 技术)。开发人员可在没有仿真器的情况下大胆开发 Bootloader 。事实上,只需一根串口数据线应能轻松完成整个 g-bios 的开发。启动代码的地址无关性带来的麻烦?没有了!因为 bug 或不小心改错了代码,甚至是数据线连接问题而导致启动黑屏?也不可能出现了!

8、支持完整的中断机制。开发者可简单地通过一个编译选项选择 IRQ 或 Polling 两种模式的中的任意一种。

9、优秀的网络子系统,并提供符合 POSIX 规范的 Socket API,方便二次开发。

10、支持多种常用外设,包包括:WDT、UART、NAND、NOR、SD/MMC、USB、LCD、Touchscreen,…

11、集成硬件调试/测试程序,大大提高了 bring-up 的工作效率。

12、完美支持 Google Android 操作系统,简化 Android 的系统移植过程。

13、支持图形化配置,不但让新手很容易上手,而且使 g-bios 的移植和开发过程变得更简单

体系架构

G-bios体系结构详见左图。其在MaxWit嵌入式Linux体系中的位置如右图所示。

源码获取:

在获取源码前请首先安装svn,

源码地址

在线参与项目或讨论

ChinaUnix 论坛上的 g-bios版块

MaxWit其它开源项目

1、Lablin

在该开源项目中可以学习(初学者)或开发(有经验者)如下一系列技术:

1、完整嵌入式开发环境搭建。如设置TFTP、NFS等网络服务器,SVN(或其他工具)管理代码,安装Windows虚拟机等等细节,更重要的是,如何使用标准源码,从头到尾,自己打造一个最新的Cross Toolchain,比如支持NPTL和EABI的gcc-4.4 + glibc-2.9/uClibc-0.30!

2、移植、开发bootloader,包括g-bios和u-boot等。这个过程虽然不难,但我们可以借bootloader更轻松更细致地研究X86、ARM等体系结构。

3、移植、开发Linux kernel,这部分可易可难,试想在一个内核不支持的全新的板子上跑起Linux及所有的驱动,这个工作量也不少。

4、创建ramdisk和rootfs。这个基本上是个手工活,但也必不可少。

5、移植、优化或开发Lib,包括:音视解码器、GUI库、OpenGL、多媒体、SQLite、WebKit等。

6、移植、优化或开发Java VM,支持Java开发也非常重要。

7、移植、优化或开发Application,包括:设备管理工具、媒体播放器、窗口管理器、游戏(当然,不是贪吃蛇)、浏览器、即时通讯工具、嵌入式数据库、办公软件等。

该开源项目并不是简单的移植工作,事实上,多数时间是在从事研发:进行Linux内核的新特性的分析和改进,驱动调试,libc源码分析,汇编语言/MMU/中断的研究、QT、嵌入式版GTK+、DirectFB、SDL、TCP/IP协议栈的实现等等。

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2025/3/1 11:26:15