linu内核的移植

上传人:ni****g 文档编号:472186261 上传时间:2023-03-19 格式:DOCX 页数:12 大小:353.09KB
返回 下载 相关 举报
linu内核的移植_第1页
第1页 / 共12页
linu内核的移植_第2页
第2页 / 共12页
linu内核的移植_第3页
第3页 / 共12页
linu内核的移植_第4页
第4页 / 共12页
linu内核的移植_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《linu内核的移植》由会员分享,可在线阅读,更多相关《linu内核的移植(12页珍藏版)》请在金锄头文库上搜索。

1、基于嵌入式技术 linux 内核的移植甄儒钊(中南民族大学 计算机科学学院,智能科学与技术专业,武汉 430074)摘 要在 PC 端基于 ubuntu 12.04 通过配置交叉编译环境、安装交叉工具链、设置网络参数、创建 tftp服务器搭建好开发环境,再通过命令行(此处用到的工具为putty)将已有的kernel镜像文件和其配套的 设备树文件烧写至开发板(基于arm7体系结构的三星公司生产的cortex系列A9芯片)中,从而实现片上 系统的移植,为后续基于嵌入式系统的应用层的开发和外围设备调试等工作做准备。关键词 ubuntu;内核移植;交叉工具链;cortex-A9; tftp; GccT

2、ransplantation of Linux kernel based on EmbeddedTechnologyRu zhao Zhen(Project of Intelligence Science and Technology, College of Computer Science Technolog , South-CentralUniversity for Nationalities, Wuhan 430074, China)Abstract Configuring cross compiler environment, network parameter and TFTP se

3、rver. And installing cross-tool chain by Ubuntu 12.04 In the PC side. Then writing the image files and Flattened Device Tree files by command line into the development board (The chip based on the arm7 architecture and belongs to the Samsung company called cortex-A9) ,in order to achieve the transpl

4、antation of the system on chip and prepare for application layer development, debugging of peripheral equipment and so on.Keywords Ubuntu; Kernel porting; Cross tool chain; cortex-A9; tftp; Gcc科技日新月异,科技无处不在,科技与我们生活紧密相连。以应用为中心,以计算机技术为 基础,软硬件可裁剪,能适应众多应用的嵌入式系统,对功耗,可靠性,成本,体积等要求 比较严格,因为这些特性,小到手机、智能手表,大到工

5、程机械都离不开嵌入式系统的高效 和精准的控制。然而作为嵌入式技术的核心过程之一:内核移植就显得尤为重要。所以此次 实验探究了内核移植的详细过程,系统化地了解了主机与目标机互联的机制,对内核源码进 行了初步了解,从而使得整个过程更加清晰明了,为嵌入式工程或项目做好充实的准备。ARM Cortex-A9489/CAN总线网卡 gw接心板 串口丽丹电源HDMIJTAGUSBx 3陀螺仪/抑速度USB-OTG温度慢感器SO/TF 背扩Camera 电位器 LED LCD 红外 Valume+/- Reset图1实验用开发板Fig. 1 Experimental development board1 实

6、验部分1.1 实验所需硬件设备、软件和文件包主机(HP Pavilion 15 Notebook PC,惠普公司)、串口连接线、UTP网线、电源线、目标 机(搭载cortex-A9, FS4412,华清远见公司)、VMware Workstation虚拟机管理软件、 ubuntu 12.04 发行版、Gcc 编译包(版本 Gcc 4.6.4)、putty 软件(Telnet、SSH、rlogin、纯TCP以及串行接口连接软件)、kernel镜像文件、设备树文件、串口驱动程序(型号CH341SER)、tftp 文件包、bootloader文件包(uboot,遵循GPL协议,德国DENX小组)。1

7、.2 实验步骤及说明1.2.1 ubuntu 中所用到的主要指令、工具及解释( 1 )、 pwd(print work directory) 显示当前目录的绝对路径( 2 )、 cd ( change directory)切换目录例如:cd /home/ubuntu cd /home/ubuntu/Desktop常用: “ .” 表示当前目录cd .表示进入当前目录. 表示上层目录 cd . 表示进入上层目录( 3)、 ls( list)列出当前目录的内容常用:ls -l + 文件名显示该文件的详细信息(默认以字节为单位)ls -a 显示当前目录所有的内容(包括隐藏文件)4)、 touch +

8、 文件名 新建一个文件 例如: touch test.c常用:ls -l test.c查看test.c文件的详细信息5)、 clear 清除我们的屏幕 快捷键: crtl + l6)、 mkdir(make dirctory) + 新建文件夹的名字 新建一个目录 例如: mkdir one新建一个 one 文件夹mkdir two新建一个 two 文件夹7)、 rm(remove) 删除普通文件参数:-r 删除文件夹-f 强制执行常用: rm -rf test注意: rm -rf 不管是文件夹还是普通文件都可以删除。(8)、 cp 复制文件 格式: cp 源文件 目录文件路径 例如: cp /

9、home/ubuntu/test.c /home/ubuntu/Desktop9)、 mv 移动文件格式: mv 源文件 目录文件路径例如:mv /home/ubuntu/test.c /home/ubuntu/one区别:cp移动后文件还存在,mv移动后文件不存在了10)、格式: cat + 文件名 显示文件的内容例如: cat hello.c11)、echo 内容 要写的文件12)、chmod 修该文件的权限(读、写、执行)格式:chmod 权限 文件名 常用:u: user (普通用户)g: group (组用户) o: ot her(其他用户)如:chmod u+x test.c ch

10、mod u+w test.c chmod g-r test.c chmod o+x test.c常用:100 101 001 r- -w- -x 八进制表示:r-4 w2x113)、chown 修改文件所有者:格式: sudo chown 所有者名 文件 例如: sudo chown root test.c14)、tar 对目录和普通文件都可以进行打包压缩 参数:c - 创建x - 释放 z - gzip 操作 j - bzip2 操作 v - 显示过程 f - 指定文件名(一定需要放在最后)15)、释放一个文件:格式: sudo tar -xzvf work.tar.gz sudo tar

11、-xjvf work.tar.bz2 sudo tar -xvf work.tar.gz/work.tar.bz2 参数:-C 指定释放到一个指定的目录 tar -xvf dir.tar.gz -C 指定的目录1.2.2 关于交叉工具链编译、链接、处理和调试跨平台体系结构的程序代码。每次执行工具链软件时,通过带有不 同的参数,可以实现编译、链接、处理或者调试等不同的功能。从工具链的组成上来说,它一般 由多个程序构成,分别对应着各个功能。1.2.3 关于Gcc编译流程图 2 Gcc 编译流程 Fig. Compiling process of Gcc1.2.4 关于 tftpTFTP (Triv

12、ial File Transfer Protocol,简单文件传输协议)是 TCP/IP 协议族 中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开 销不大的文件传输服务,其中tftp-hpa是客户端,tftpd-hpa是服务器。1.2.5 配置开发环境(1)在主机中安装串口驱动程序,然后安装虚拟机管理软件VMware Workstation,再在软件中安装ubuntu,然后打开ubuntu系统(2 ) 安装交叉工具链和交叉编译环境1 解压工具链压缩包$ cd $ mkdir toolchain$ cd toolchain2 将gcc-4.6.4.tar.xz工具包拷贝到t

13、oolchain目录下并解压$ tar xvf gcc-4.6.4.tar.xz3 环境变量的添加修改文件/etc/bash.bashrc添加如下内容export PATH=$PATH:/home/linux/toolchain/gcc-4.6.4/bin4 重启配置文件$ source /etc/bash.bashrc5 工具链的测试workbuilddir arc gcc-4.6.4 coiLfigurehost=i686-bui id_pc-linux-gnuDonfiguredwi:-buiid=i 686-bui ld_pc- linux-gnu -target=arm-arm 11

14、7 fijzfssf-ljnux-gnueabi -prefix= opt TuxamitoS offlboj chains arm-arm 117 6jzfssf-linux-gnueabi gcc-4. &斗 -with- sysrocrt= opt TuxamitoS oftToolchains arm-arm 117 fijzfssf-linux-gnueabi gcc-4.6斗.arm- arm 1176jzfssf-linux-gnueabi-sroot- -enable-languages=crc-H-with- arch=armv6zk- -vi-cpu=arm 117 6jz

15、f- s- - wi-tune=arm 1176izf- s- float=softfp with-pkgv7ersion=crosstuol-NGlg-defauit- 2685dfa9del4 - tcOOOZ - - di sable- si Ij - except! ons -enabie-_cxa_atexit -di sable- libmudflap disable-libgomp -disable-iibssp di sable- Hbquadma -di sable-libquadma-support -with-mpfr= work buiiddir arm-arm 117 6jzfssf-linux-gnueabi buil-dtools -vi-ppl= work buiiddir arm-armll 76jzfssf-iinux-gnueabi buildtools-wi-chog= work buikki 祜 arm-armll 76jzfssf-linux-gnueabi buildtools - wi-libelf=

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 机械/制造/汽车 > 电气技术

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号