fl2440最小系统移植梳理

标签: fl2440 linux内核 最小系统移植 Linux3.0 genwenjain
18人阅读 评论(1) 收藏 举报
分类:
fl2440最小系统移植梳理
所谓的嵌入式开发就是自己DIY一个系统,放到开发板上跑。最小系统则是基于linux内核,考虑开发板实际硬件的一个最简单的系统。
准备工作:在linux下制作好自己的交叉编译器
一    fl2440开发板的了解,创建fl440项目框架
[xn@localhost fl2440]$ tree
|-- 3rdparty 今后移植到ARM开发板上的第三方应用程序软件包
|-- bootloader u-boot移植代码
|-- crosstool 交叉编译器
|-- driver 今后写的驱动文件
|-- images 编译出的image文件,如Linux内核,根文件系统等;
|-- linux
| |-- kernel Linux内核源码路径
| `-- rootfs 根文件系统目录树路径
`-- program 我们今后自己写的应用程序

二    源码修改

修改一:晶振
修改二:machine ID
修改三:串口驱动设备名字改为ttyS
修改四:顶层Makefile中配置交叉编译器路径
修改五:添加DM9000网卡设备支持

三    内核配置和编译
   kconfig   .config  Makefile  三者的关系
   采用由平台厂商提供的sc2410_deconfig,用作编译内核.config的参考
   注意export TERM=vt100命令的使用。
   使用u_boot编译产生的mkimage命令  
make
mkimage -A arm -O linux -T kernel -C none -a 30008000 -e 30008040 -n "Linux Kernel" -d arch/arm/boot/zImage linuxroms3c2440.bin
chmod a+x linuxrom-s3c2440.bin

四  根文件系统制作
1.创建根文件系统树目录结构
|-- bin 系统基本命令bin
|-- sbin 系统管理命令
|-- dev 系统设备节点所在路径
|-- root root用户home
|-- etc 系统配置文件所在路径
| `-- init.d 系统初始化、启动程序脚本
|-- lib 系统动态库路径
| `-- modules
| `-- 3.0.0 linux内核驱动模块需要该路径
|-- usr
| |-- bin 用户基本命令路径
| |-- lib 用户动态库文件
| `-- sbin 用户管理命令路径
|-- apps nandflash apps分区挂载点,用来存放应用程序
|-- data nandflash data分区挂载点,用来存放数据
|-- info nandflash info分区挂载点,用来存放设备信息
|-- mnt 系统挂载点
| |-- mmc SD卡挂载点
| `-- usb U盘挂载点
|-- proc linux proc文件系统挂载点
|-- sys linux sys文件系统挂载点
|-- tmp linux tmp文件系统挂载点
`-- var 系统日志等文件存放路径
2.安装动态库,并链接到rootfs中的lib下
3.安装busybox,并链接到开发板的bin路径下
4.创建/dev路径下的设备节点
5.创建/var路径下的文件
6.创建/etc路径下的文件
         创建etc/inittab
         创建etc/fstab
         创建etc/hostname
         创建etc/int.d
                创建etc/init.d/rcS
                创建etc/init.d/S10_network
                创建etc/init.d/S99_rcsApp
          创建shell配置文件
          创建linux登录账号文件
          创建linux其他文件
                 /etc/resolv.conf文件
                 /etc/hosts文件
                 /etc/TZ文件
                 /etc/TZ文件
7.把内核中支持initramfs的选项选上,重新编译内核


查看评论

FL2440 Linux-3.0最小系统移植

来自:www.kansnow.com一、源码修改Linux 是一个源码开放的操作系统,无论是普通用户还是企业用户都可以编写自己的内核代码,再加上对标准内核的裁剪从而制作出适合自己的操作系 统。Lin...
  • a_blank_memory
  • a_blank_memory
  • 2017-11-07 19:46:24
  • 47

fl2440最小系统移植

文章为作者原创,转载请附明原地址:https://mp.csdn.net/postedit/78514501 Linux系统在执行一条命令时,默认会到/bin、/sbin、/usr/bin、/usr/...
  • liushunCSDNblog
  • liushunCSDNblog
  • 2017-11-12 20:07:13
  • 47

Linux3.0最小系统移植

1.创建fl2440内核的工作目录,便于管理查询:3rdparty:今后移植到ARM开发板上的第三方应用程序软件包bootloader:u-boot移植代码crosstool:交叉编译器drivers...
  • buhuiguowang
  • buhuiguowang
  • 2018-03-14 23:16:40
  • 119

FL2440 Linux-3.0内核最小系统移植

FL2440 Linux-3.0最小系统移植 该文档基于crosstool-ng这个交叉编译器制作,可以使用下面脚本和命令制作交叉编译器: [wudongxu@localhost~l]$mkdir...
  • cusswu
  • cusswu
  • 2017-11-11 14:00:44
  • 68

fl2440内核移植(一)——最小系统

启动最小系统,之需要修改几个地方 1、修改Makefile ARCH ?= arm CROSS_COMPILE ?=  /opt/buildroot-2012.08/arm920t/usr/bin/a...
  • qq_21111579
  • qq_21111579
  • 2015-11-12 19:03:24
  • 476

#嵌入式Linux最小系统移植# mini2440最小系统移植(uboot、kernel、rootfs)可用源码

版本信息: 1.uboot版本: u-boot-2012.10.tar.bz2 2.kernel版本: linux-4.0.tar.gz 3.busybox版本: busybox-...
  • sinat_26551021
  • sinat_26551021
  • 2018-02-09 21:03:07
  • 36

#嵌入式Linux最小系统移植# busybox分析和移植记录

//busybox/init.c 1.init_main过程分析 init_main parse_inittab(); file = fopen(I...
  • sinat_26551021
  • sinat_26551021
  • 2018-02-09 20:36:57
  • 31

Linux系统移植的概述

与其它操作系统相比,Linux最大的特点:它是一款遵循GPL的操作系统,我们可以自由地使用、修改、和扩展它。正是由于这一特色,Linux受到越来越多人士的青睐。于是,一个经常会被探讨的问题出现了,即关...
  • shanzhizi
  • shanzhizi
  • 2012-11-06 16:20:14
  • 1863

Yaffs2文件系统移植到FL2440

现在大部分开发板都可以支持yaffs2 文件系统,它是专门针对嵌入式设备,特别是使用nand flash作为存储器的嵌入式设备而创建的一种文件系统,早先的yaffs仅支持小页(512byte/page...
  • zdf511391565
  • zdf511391565
  • 2014-08-16 17:35:20
  • 476
    个人资料
    等级:
    访问量: 488
    积分: 93
    排名: 142万+
    文章分类
    文章存档