u-boot裁减

http://blog.csdn.net/menuconfig/article/details/2276078
u-boot裁减的主要方法是通过删除不需要的命令来减小可执行代码体积。比如说,如果不需要网络相关的功能,则可以将网络相关的所有命令全部删除,可以节约可观的flash空间一般u-boot的大小为100k左右,通过删除命令(如果删除网络相关的命令),可以裁减到64k以内,只保留一些经常使用的命令。
另外,如果需要动态修改环境变量,环境变量还需要单独分配一个flash扇区用于保存。这样大约就需要64k+64kflash空间。如果我们不需要动态修改环境变量,可以省去一个扇区的Flash开销。
以下是本人裁减u-boot的基本步骤:
1,删除除默认命令以外的命令:
    删除include/configs/naribf533.hCONFIG_COMMANDS的定义,直接采样默认的命令。可以将u-boot108k裁减到79k
2,删除其他不需要的命令,只保留常用命令:
通过修改include/cmd_confdefs.h中的CFG_CMD_NONSTD常量,进一步裁减u-boot命令。CFG_CMD_NONSTD为“non-standard”命令,除了这个常量定义的命令外,其余都是常用命令。我们可以通过在这个常量中添加不需要的命令来减少默认命令的数量。我们这里只保留以下命令,其余全部裁减掉:
?       - alias for 'help'
autoscr - run script from memory
base    - print or set address offset
bdinfo - print Board Info structure
bootm   - boot application image from memory
cmp     - memory compare
coninfo - print console devices and information
cp      - memory copy
crc32   - checksum calculation
echo    - echo args to console
erase   - erase FLASH memory
fl      - flush a file to FLASH memory
flinfo - print FLASH memory information
go      - start application at address 'addr'
help    - print online help
loadb   - load binary file over serial line (kermit mode)
loads   - load S-Record file over serial line
loop    - infinite loop on address range
md      - memory display
mm      - memory modify (auto-incrementing)
mtest   - simple RAM test
mw      - memory write (fill)
nm      - memory modify (constant address)
oc      - over clocking
printenv- print environment variables
protect - enable or disable FLASH write protection
reset   - Perform RESET of the CPU
run     - run commands in an environment variable
saveenv - save environment variables to persistent storage
setenv - set environment variables
sleep   - delay execution for some time
version - print monitor version
最终可以将uboot裁减到63k
3,修改控制台返回信息和环境变量:
修改环境变量的存储扇区地址,并删除无用的环境变量或相应修改成对应于我们开发板的环境变量。
相应修改一些控制台返回信息。
4,如果不动态修改环境变量,建议删除saveenv命令,以免误擦除u-boot程序。同时将内核存放地址修改为20010000
转自  http://www.eefocus.com/myspace/blog/show_77755.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/254122.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PhpStudy 升级 MySQL 版本到5.7

1:备份当前数据库数据、 最好是导成 SQL 文件2:备份 PhpStudy 下的 MySQL 文件夹、以防升级失败、还可以使用旧版本的数据库3:下载MySQL5.7、解压、然后放在 PhpStudy 下的 MySQL 文件夹下地址:https://dev.mysql.com/downloads/f…

使用直线标定板进行相机畸变校正,并且进行9点标定(halcon)

直线标定板图片: 机械吸头位置图片: 处理代码 read_image (Image, 直线标定板图片/Left201118140641772.bmp) get_image_size (Image, Width, Height) dev_close_window () dev_open_window_fit_image (Image, 0, 0, -1, -1, WindowHandle) dev_display…

github设置添加SSH

很多朋友在用github管理项目的时候,都是直接使用https url克隆到本地,当然也有有些人使用 SSH url 克隆到本地。然而,为什么绝大多数人会使用https url克隆呢? 这是因为,使用https url克隆对初学者来说会比较方便&…

linux设置套接字缓冲区的大小

系统提供的socket缓冲区大小为8K,你可以将之设置为64K,尤其在传输实时视频时。 socket发送数据时候先把数据发送到socket缓冲区中,之后接受函数再从缓冲区中取数据,如果发送端特别快的时候,缓冲区很快就被填满&#x…

【Java MyBatis Generator】使用generator自动生成Dao,Mapping和实体文件

具体请参照&#xff1a; http://blog.csdn.net/fengshizty/article/details/43086833 按照上面博客地址&#xff0c;下载Generator的依赖包&#xff1a; 如下是我的配置文件&#xff1a; 1 <?xml version"1.0" encoding"UTF-8"?>2 <!DOCTYPE ge…

h5移动端设备像素比dpr介绍

首先介绍一下概念 devicePixelRatio其实指的是window.devicePixelRatio window.devicePixelRatio是设备上物理像素和设备独立像素(device-independent pixels (dips))的比例。 公式表示就是&#xff1a;window.devicePixelRatio 物理像素 / dips 好了&#xff0c;到了这里有出…

halcon直线标定板对相机标定的效果评估(对比矫正前后、对比标定板矫正效果)

原图 程序源码 * gen_caltab (7, 7, 0.0025, 1/2.5, GB025标定板.descr, GB025标定板.ps) * Calibration 01: Code generated by Calibration 01 * CameraParameters : [0.048105,-44.0585,8.31518e-006,8.3e-006,641.37,588.269,1280,1024] * CameraPose : [-0.000849522,-0.…

【QQ输入法】QQ输入法-剪切板 释放内存

发现一个神奇的情况&#xff1a; 清除和关闭的操作&#xff1a; 1. 2.右键 3.点击 4.清空 5.最后需要关闭 QQ输入法的进程

Socket编程原理

什么是SocketSocket接口是TCP/IP网络的API&#xff0c;Socket接口定义了许多函数或例程&#xff0c;程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程&#xff0c;必须理解Socket接口。Socket接口设计者最先是将接口放在Unix操作系统里面的。如果…

【XLL 框架库函数】 TempActiveCell/TempActiveCell12

这两个函数创建 XLOPER/XLOPER12 &#xff0c;包含了当前激活工作表上的单元格引用。 LPXLOPER TempActiveCell(WORD row, BYTE col); LPXLOPER12 TempActiveCell12(RW row, COL co); 参数 row 引用行号&#xff0c;行号参数是从0开始的&#xff0c;因此 第一行就是0. col 引用…

POJ 3264 Balanced Lineup【线段树区间查询求最大值和最小值】

Balanced Lineup Time Limit: 5000MS Memory Limit: 65536KTotal Submissions: 53703 Accepted: 25237Case Time Limit: 2000MSDescription For the daily milking, Farmer Johns N cows (1 ≤ N ≤ 50,000) always line up in the same order. One day Farmer John decides to…

halcon测试一张图片是否过曝或过暗

read_image (Image, 1.bmp) count_obj (Image, Number) if(Number<0)return() endif min_max_gray (Image, Image, 0, Min, Max, Range) if(Min<1)*图像过暗 endif if(Max>254)*图像过曝 endif

真的要做一辈子的程序员吗?来自10年程序员的心声

经常听一些同学说&#xff1a;不知道下一份工作该去哪类公司做些什么&#xff0c;我的职场人际一团糟老板不重视我&#xff0c;我现在成长的非常慢所以又想跳槽了&#xff0c;我看不到公司的发展前景好迷茫&#xff0c;其实这一切的困惑都来源于没有做好职业规划或者你根本就没…

网络编程之 TCP / UDP 及其流程比较

TCP与UDP的区别 1、基于连接与无连接 2、对系统资源的要求&#xff08;TCP较多&#xff0c;UDP少&#xff09;3、UDP程序结构较简单 流模式与数据报模式 4、TCP保证数据正确性&#xff0c;UDP可能丢包 5、TCP保证数据顺序&#xff0c;UDP不保证具体编程时的区别 1、socket()的参…

Tomcat在Linux上的安装与配置

Tomcat在Linux上的安装与配置 1、 jdk下载地址&#xff1a; http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html tomcat下载地址:http://tomcat.apache.org/download-70.cg 2、jdk安装与配置.&#xff08;rpm包&#xff09; (1)jdk安装…

Spring在3.1版本后的bean获取方法的改变

xml配置不变&#xff0c;如下 <?xml version"1.0" encoding"UTF-8"?> <beans xmlns"http://www.springframework.org/schema/beans"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://…

使用halcon选择点拟合成直线求直线角度

原图 源码 read_image (Image, 0.bmp) dev_clear_window () dev_open_window_fit_image (Image, 0, 0, -1, -1, WindowHandle) dev_display (Image)binary_threshold (Image, Region, max_separability, dark, UsedThreshold) connection (Region, ConnectedRegions) select_s…

Linux网络/firewalld和netfilter/netfilter/iptables语法

为什么80%的码农都做不了架构师&#xff1f;>>> linux网络相关 查看网卡网络信息 ifconfig 命令查看网卡网络信息&#xff0c;比如ip、网关、子网掩码等&#xff0c;但是安装centos7的版本或者某些未知原因&#xff0c;此命令提示找不到&#xff0c;我们可以使用Yu…

Chrome开发者工具详解(4)-Profiles面板

Chrome开发者工具详解(4)-Profiles面板 如果上篇中的Timeline面板所提供的信息不能满足你的要求&#xff0c;你可以使用Profiles面板&#xff0c;利用这个面板你可以追踪网页程序的内存泄漏问题&#xff0c;进一步提升程序的JavaScript执行性能。 概述 当前使用的Chrome最新版为…

etcd raft library设计原理和使用

早在2013年11月份&#xff0c;在raft论文还只能在网上下载到草稿版时&#xff0c;我曾经写过一篇blog对其进行简要分析。4年过去了&#xff0c;各种raft协议的讲解铺天盖地&#xff0c;raft也确实得到了广泛的应用。其中最知名的应用莫过于etcd。etcd将raft协议本身实现为一个l…