005uboot启动内核

        进入uboot后,输入printenv可以看到一个环境变量,bootcmd,这个环境变量里面内容的作用就是把内核从NandFlash中读取到SDRAM中,然后从SDRAM的加载地址启动内核。

一、内核是什么

        内核实际上就是一个比较复杂庞大的裸板程序,只不过是内核无法自启动,必须借助boot来启动,内核运行起来后,在软件分层上分成了应用层和内核层,内核层可以随意的访问硬件,应用层无法随意的访问硬件资源,想要访问硬件资源必须open后产生软中断进入内核层。

         内核的镜像文件是uImage,uImage是一个信息头+一个内核文件

#define IH_NMLEN		32	/* Image Name Length		*/
typedef struct image_header {
	uint32_t	ih_magic;	/* Image Header Magic Number	*/
	uint32_t	ih_hcrc;	/* Image Header CRC Checksum	*/
	uint32_t	ih_time;	/* Image Creation Timestamp	*/
	uint32_t	ih_size;	/* Image Data Size		*/
	uint32_t	ih_load;	/* 加载地址		*/
	uint32_t	ih_ep;		/* 入口地址		*/
	uint32_t	ih_dcrc;	/* Image Data CRC Checksum	*/
	uint8_t		ih_os;		/* Operating System		*/
	uint8_t		ih_arch;	/* CPU architecture		*/
	uint8_t		ih_type;	/* Image Type			*/
	uint8_t		ih_comp;	/* Compression Type		*/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值