微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > 嵌入式系统设计讨论 > 《嵌入式linux开发实用教程》教程学习

《嵌入式linux开发实用教程》教程学习

时间:10-02 整理:3721RD 点击:
    大家好,本人刚开始学习嵌入式Linux,有许多东西不懂。论坛上看到有发表问题分析送书的活动就看看书分析分析,大家莫要怪罪写的粗浅。希望得到大家的支持。1.lowlevel_init函数完成了哪些初始化?
答:lowlevel_init函数的工作是进行与单板相关的初始化工作,故名思议,这个初始化仅仅是最低限度(lowlevel)的。对于s3c6410开发板,包括led灯配置(便于观察现象)、关闭看门狗、设置中断、配置系统时钟、初始化串口、初始化内存和初始化唤醒复位。
2.DDR的内存是如何分配?
答: 对于一个256MB空间的SDRAM,SDRAM的起始地址是:0x5000 0000,即SDRAM的空间分布为0x5000 0000~0x57FF FFFF。
   1. SDRAM的最后64K分配给TLB,所分配的地址为:0x57FF 0000~0x57FF FFFF。
   2.给u-boot分配BSS、数据段、代码段,分配地址为:0x57F7 5000~0x57FE FFFF。
   3.malloc空间,分配的地址为:0x57E6 D000~0x57E7 4FFF。
   4.bd结构体分配空间,地址为:0x57E6 CFD8~0x57E6 CFFF。
   5.gd结构体分配空间,地址为:0x57E6 CF60~0x57E6 CFD7.
   6.分配异常中断空间,地址:0x57E6 CF50~0x57E6 CF5F。
  7.0x5000 0000~0x57E6 CF4F 用作保留区
3.Main_loop()函数的作用是什么?
答:Main_loop()函数的主要实现作用是:
1) HUSH的相关初始化,
2) bootdelay的初始化
3) 启动次数设置可以设置启动次数限制
4) Modem功能,Modem功能通常供一些远程控制的系统使用,方便处理其他用户通过电话网络的拨号请求。
5)设置U-Boot版本号,打开动态版本支持功能后,u-boot在启动的时候会显示最新的版本号。
6) 启动tftp功能
7) 打印启动菜单、初始化命令行超时机制、检测是否超出启动次数限制、获取启动命令参数,启动U-Boot。
main_loop()的主要作用即是U-Boot启动管理。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top