一、裁剪内核

1.1 第一次修改

  现在的内核大小为2.8M左右,要裁剪到2.0M以下,毕竟给内核分区就只有2.0M。

  

  

  这两个设备我们没有,裁剪掉。

  进入make menuconfig中,搜索mousedev:

  

  进入里面按需要进行裁剪。

  

  搜索 lp:

  

  hostname修改:

  

  文件系统再此修改:

  

  去掉如下选项:

  

  

  

  再次进入device driver,-》input device->touch creen

  配置上

  

  去掉:

  

  修改完后,保存。然后编译执行,查看uImage的大小

  

  裁剪出来的大小为2.66M,还得继续裁剪。

1.2 第二次修改

  查看.config文件,查看哪些能修改的。

  

  NETworking support->bluetooth

  蓝牙设备,我们的开发板上没有蓝牙,去掉

  

  device driver->network device support

  

  无线WIFI也不支持,去掉。

  

  这个去不掉,放那里了。

  编译

  

  根本没减少多少,只能现在内核自带属性越来越多了。只能修改分区了。

  修改两个分区,u-boot分区和linux里面的分区。

二、修改分区

2.1 修改u-boot分区

  u-boot 的分区在 include/configs/jz2440.h 中修改,修改为4M大小

  

  编译,然后下载。使用openjtag下载

  

  分区:

  

  删除原有的分区:

  mtdparts delall

  新建分区:mtdparts default

  

  分区已经建立好。

2.2 内核修改 

  Mach-mini2440.c (arch\arm\mach-s3c24xx)

  

  编译。

  烧写文件系统进去:

 nfs  192.168.0.192:/home/ubuntu/work/nfs_root/fs_mini.yaffs2
nand erase.part rootfs
nand write.yaffs $filesize
set bootargs console=ttySAC0, root=/dev/mtdblock3

  烧写内核,此次就直接烧写进nand中了

 nfs  192.168.0.192:/home/ubuntu/work/nfs_root/uImage
nand erase.part kernel
nand write kernel

  u-boot中要设置启动参数:

 set 'nand read 30000000 kernel;bootm 30000000'
set bootargs console=ttySAC0, root=/dev/mtdblock3

  正常启动。

四、制作补丁

  内核补丁制作:

 cp .config config_jz2440
make distclean
cd ..
mv linux-4.10. linux-4.10.8_jz2440
tar -jxvf linux-4.10..tar.gz
diff -urN linux-4.10. linux-4.10.8_jz2440 > linux-4.10.8_jz2440.patch

  

  打补丁:

 cd linux-4.10.
patch -p1 < ../linux-4.10.8_jz2440.patch

     

  

  

  

  

  

linux4.10.8 内核移植(三)---裁剪内核的更多相关文章

  1. linux4.10.8 内核移植(一)---环境搭建及适配单板。

    一.环境搭建 源码包下载:git clone https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.10.8.tar.gz 或者直接去kernel. ...

  2. 【转】 linux内核移植和驱动添加(三)

    原文网址:http://blog.chinaunix.net/uid-29589379-id-4708909.html 原文地址:linux内核移植和驱动添加(三) 作者:genehang 四,LED ...

  3. 小白自制Linux开发板 三. Linux内核与文件系统移植

    上一篇完成了uboot的移植,但是想要愉快的在开发板上玩耍还需要移植Linux内核和文件系统. 1.Linux内核 事实上对于F1C100S/F1C200S,Linux官方源码已经对licheepi ...

  4. 2.移植3.4内核-支持烧写yaffs2,裁剪内核并制作补丁

    在上章-制作文件系统,并使内核成功启动jffs2文件系统了 本章主要内容如下: 1)使内核支持yaffs2文件系统 2)裁剪内核 3)制作内核补丁 1.首先获取yaffs2源码(参考git命令使用详解 ...

  5. 基于tiny4412的Linux内核移植 -- 设备树的展开

    作者信息 作者: 彭东林 邮箱:pengdonglin137@163.com QQ:405728433 平台简介 开发板:tiny4412ADK + S700 + 4GB Flash 要移植的内核版本 ...

  6. 18.17 U-Boot+内核移植

    18.17.1 移植U-Boot-2012.04.08 1.下载.建立source insight工程.编译.烧写.如果无运行分析原因. $ .tar.bz2 $ cd u-boot- $ make ...

  7. 基于tiny4412的Linux内核移植 -- 设备树的展开【转】

    转自:https://www.cnblogs.com/pengdonglin137/p/5248114.html#_lab2_3_1 阅读目录(Content) 作者信息 平台简介 摘要 正文 一.根 ...

  8. linux内核(二)内核移植(DM365-DM368开发攻略——linux-2.6.32的移植)

    一.介绍linux-2.6.32: Linux-2.6.32的网上介绍:增添了虚拟化内存 de-duplicacion.重写了 writeback 代码.改进了 Btrfs 文件系统.添加了 ATI ...

  9. 【转】 linux内核移植和网卡驱动(二)

    原文网址:http://blog.chinaunix.net/uid-29589379-id-4708911.html 一,内核移植步骤: 1, 修改顶层目录下的Makefile ARCH       ...

随机推荐

  1. Node post请求 通常配合ajax

    //处理客户post请求//*1:加载相应模块 http express querystring//*2:创建web服务器//*3:监听端口8080const http = require(" ...

  2. node.js依赖express解析post请求四种数据格式()

    分别是这四种: www-form-urlencoded, form-data, application/json, text/xml www-form-urlencoded 这是http的post请求 ...

  3. js運算符

    運算符算術運算符.邏輯運算符.賦值運算符.比較運算符.條件運算符 字符串的合併,用+,如果是字符串和數字用+連接,則當做字符串合併. 條件運算符:if(條件)?語句1,語句2:

  4. BZOJ3322[Scoi2013]摩托车交易——最大生成树+贪心+倍增

    题目描述 mzry1992 在打完吊针出院之后,买了辆新摩托车,开始了在周边城市的黄金运送生意.在mzry1992 生活的地方,城市之间是用双向高速公路连接的.另外,每条高速公路有一个载重上限,即在不 ...

  5. BZOJ3530[Sdoi2014]数数——AC自动机+数位DP

    题目描述 我们称一个正整数N是幸运数,当且仅当它的十进制表示中不包含数字串集合S中任意一个元素作为其子串.例如当S=(22,333,0233)时,233是幸运数,2333.20233.3223不是幸运 ...

  6. LOJ #6270. 数据结构板子题 (离线+树状数组)

    题意 有 \(n\) 个区间,第 \(i\) 个区间是 \([l_i,r_i]\) ,它的长度是 \(r_i-l_i\) . 有 \(q\) 个询问,每个询问给定 \(L,R,K\) ,询问被 \([ ...

  7. [luogu3258][JLOI2014]松鼠的新家

    题解 我们就在\([a_i,a_{i+1}]\)的路径上都\(+1\),然后单点查询就可以了. ac代码(吸了氧才过的QwQ) # include <bits/stdc++.h> # de ...

  8. [luogu4264][USACO18FEB]Teleportation

    题解 先吐槽一波题目:便便传送门,出题人还真的有一点厉害的滑稽. 废话不多说. 首先问题的本质就是求如果当这个传送门的端点位于\(y\)的时候,最小的求出总代价,我们设为函数\(f(y)\). 因为这 ...

  9. SSM框架中的前后端分离

    认识前后端分离 在传统的web应用开发中,大多数的程序员会将浏览器作为前后端的分界线.将浏览器中为用户进行页面展示的部分称之为前端,而将运行在服务器,为前端提供业务逻辑和数据准备的所有代码统称为后端. ...

  10. Windows 10中设置自动登录

    步骤 使用WinKey+R打开运行,输入netplwiz. 在打开的用户账户对话框-用户选项卡-取消勾选要使用本计算机,用户必须输入用户名和密码(E). 点击应用按钮,在弹出的自动登录对话框中输入相关 ...