嵌入式Linux开发——内容介绍与开发环境的搭建
嵌入式Linux开发步骤
- 设计自己的硬件系统
- 编写Bootloader
- 裁剪自己的Linux内核
- 开发移植设备驱动
- 构建根文件系统
- 开发应用程序
嵌入式Linux学习要点
- 熟练使用开发工具和相关指令集
- 高质量的C和C++语言编程
- Linux操作系统原理
- 理解和熟悉嵌入式开发环境
- 掌握嵌入式学习方法
- 理解Linux系统中模型概念
- 剖析实例代码,善于归纳总结
嵌入式Linux开发方向
- 嵌入式Linux驱动方向
- 嵌入式Linux应用方向
硬件平台
MINI2440开发板
目标:熟悉开发板的硬件结构与跳线
开发环境搭建
- 安装USB转串口驱动
- 安装USB下载驱动
- 配置超级终端/SecureCRT/DNW
- 四种串口调试工具:超级终端/SecureCRT/DNW/minicom
- mini2440启动方式:Nor/Nand
- H-JTAG的安装与使用
- JLink的安装于使用
- 烧写Nand和Nor Flash
- OpenJTAG的安装与使用
- 烧写Nand和Nor Flash
- 安装BootLoader程序至Nor Flash
- 搭建NFS服务器(Linux之间资源共享)【注意共享目录的访问权限需要与/etc/exports中指定的权限一致或者前者大于后者】
- 查看NFS服务器是否安装,rpm -q nfs-utils;未安装的话执行安装 rpm -ivh nfs-utils-**.rpm (nfs-utils提供了NFS服务器的启动脚本和管理维护工具)
- 配置NFS服务器
- NFS服务器的配置文件 cat /etc/exports
- 个人的设置:
- /home/student/share *(rw,sync,no_root_squash)
- /home/student/root_qtopia *(rw,sync,no_root_squash)
- NFS服务器的启动和停止
- service nfs status 或 /etc/init.d/nfs status
- service nfs start
- service nfs stop
- service nfs restart
- 利用exportfs命令修改设置
- exportfs -ra 使得/etc/exports文件中的所有设置生效
- exportfs -v 查看所有的已生效的共享目录
- NFS图形化配置方法
- 客户端查看NFS服务器的共享目录
- showmount -e IP地址 或 exportfs -v
- 客户端挂载NFS服务器中的共享目录
- mount -t nfs 192.168.1.131:/opt/share/ /mnt/share
- mount -t nfs localhost:/home/share /mnt/nfsfolder (表示将本机目录挂载到本机另一目录)
- 客户端将NFS共享目录挂载信息写入/etc/fstab可以实现对NFS共享目录的自动挂载
- 显示当前主机挂载的NFS共享目录 mount | grep nfs
- 卸载系统中已挂载的NFS共享目录 umount /mnt/share
- NFS服务器的配置文件 cat /etc/exports
- 搭建Sam服务器(Window与Linux之间资源共享)
- 查看包是否安装 rpm -qa | grep samba
- 图形界面关闭:系统->管理
- service iptables stop
- 个人设置为了/home/embedclub /home/student /home/student/pcshare
关闭Linux下防火墙和 SELinux服务(必要时把win下的防火墙也关闭)>
设置samba共享目录 系统 ->管理 ->samba (如果没有samba选项则应该安装system-config-samba-XXX,可以通过添加/删除软件工具安装)
或者通过配置/etc/samba/smb.conf设置共享
参考:http://www.cnblogs.com/mchina/archive/2012/12/18/2816717.html
- 启动samba服务
- service smb start
- 启动samba服务
- 搭建TFTP服务器(提供对目标机的主要映像文件的下载,简单的文本传输协议属于UDP)
- 查看安装 rpm -qa | grep tftp-server (未安装执行 yum install xinetd yum install tftp-server)
- 修改tftp服务器的配置文件 /etc/xinetd.d/tftp
- 设置服务器根目录为 /tftpboot (server_args= -s /tftpboot disable = no)
- 设置tftp服务器访问权限 chmod o+w /tftpboot
- 启动tftp服务
- service xinetd restart 或 /etc/init.d/xinetd restart
- 查看tftp服务器运行状态
- netstat -a | grep tftp
- 设置VMware实现fedora无线上网
- Window设置
- WLAN设置Internet连接共享,选择VMware Network Adapter VMnet8,弹出对话框,选择"是"。
- VMware设置
- Virtual Network Editor选择VMnet8,然后选择NAT上网模式,然后将网关的IP最后一位加1,即原来为192.168.254.1,改为192.168.254.2;使用local DHCP service。
- VMvare Machine Settings选择NAT连接。
- Linux虚拟机设置
- 系统->管理->网络->常规,选择第二DNS为192.168.254.2。文件保存然后退出。
- 回到Window,将VMnet8的IP地址设置为192.168.254.1.
课程目标
- 玩转开发板之ARM裸机程序(参考《mini2440用户手册》-2.3非操作系统下的外围资源测试)
- 下载2440. bin至SDRAM(使用minitools工具下载裸机程序,前提是安装上USB下载驱动)
- 测试并修改裸机程序
- 玩转开发板之Linux
- 玩转开发板之WinCE
- 玩转开发板之Android
- 玩转开发板之Uboot
基本技能要求
- Linux终端常用指令
- 文本编辑器的使用
- Shell脚本编程
- gcc编译器与gdb调试器的使用
- make与Makefile文件编写 详见:http://www.cnblogs.com/kwseeker-bolgs/p/4366469.html
- 使用Makefile管理多模块软件
- 掌握Makefile的规则,变量
- 掌握Makefile的虚目标规则
- 应用Makefile管理多个源文件的工程
嵌入式Linux开发——内容介绍与开发环境的搭建的更多相关文章
- 【Xamarin开发 Android 系列 1】环境部署搭建
原文:[Xamarin开发 Android 系列 1]环境部署搭建 开篇自然先扯一段,近几年移动互联网如果熊猫零食一样,蔓延迅速.楼主身为一个微软忠实的粉丝,无奈,老爹不给力.Silverlight开 ...
- 一、Linux 设备驱动介绍及开发环境搭建
1.1 Linux 设备驱动介绍 1.1.1 分类及特点 计算机系统的硬件主要由 CPU.存储器和外设组成. 当前 CPU 内部都集成有存储器和外设适配器. 外设适配器有入 UART.IIC 控制器. ...
- 【Python开发】Python中数据分析环境的搭建
注:无论是任何一门语言,刚开始入门的时候,语言运行环境的搭建都是一件不轻松的事情. Python的运行环境 要运行或写Python代码,就需要Python的运行环境,主要的Python有以下三类: 原 ...
- [原创]java WEB学习笔记76:Hibernate学习之路---Hibernate介绍,hibernate 环境的搭建
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- 一、Linux 设备驱动介绍及开发环境搭建(续)
1.2.6 uboot 编译安装 嵌入式 bootloader 的功能: 功能类似于 PC 的 BIOS.硬件检测是否正常 加载操作系统镜像到 RAM 设置不同的启动方式 常见的启动方式: NOR/N ...
- Linux的简单介绍和开发基本运维时候用到的命令
先简单介绍下Linux文件夹目录 1./ linux下的根目录 实际上等同于window的我的电脑点进去 2./etc /usr 一个是系统配置文件存放的地方,一个是系统资源(应用程序)放的地方这俩文 ...
- linux+node.js+redis+mongodb+nginx环境的搭建
1.推荐购买阿里云服务器,使用Centos7.0的服务器版本,在创建完全系统并进入之后,第一步是更新服务器的相关组件 yum -y install gcc gcc-c++ openssl-dev ...
- [推荐]WebService开发知识介绍
[推荐]WebService开发知识介绍 WebService开发手册 http://wenku.baidu.com/view/df3992ce050876323112128a.html WebSe ...
- 嵌入式 Linux 应用:概述
转载:http://www.ibm.com/developerworks/cn/linux/embed/embl/overview/index.html 从腕表到基于群集的超级计算机 在对嵌入式 ...
随机推荐
- 关于BIOS的一点东西
关于BIOS的一点东西 编辑删除转载2016-05-20 00:36:36 去把BIOS的每个单词意思都有道一遍就都明白了,BOOT是更改 启动顺序的(台式机一直按del键就会进入BIOS界面,用上下 ...
- 《Java7中 下划线的新特性》
//Java7引入了一个新功能:程序员可以在数值中使用下画线,不管是 //整形数值,还是浮点型数值,都可以自由地使用下划线.通过下划线 //分隔,可以更直观的分辨数值中到底有多少位. public c ...
- HDU 3333 - Turing Tree (树状数组+离线处理+哈希+贪心)
题意:给一个数组,每次查询输出区间内不重复数字的和. 这是3xian教主的题. 用前缀和的思想可以轻易求得区间的和,但是对于重复数字这点很难处理.在线很难下手,考虑离线处理. 将所有查询区间从右端点由 ...
- oracle触发器如何使用2
触发器 是特定事件出现的时候,自动执行的代码块.类似于存储过程,但是用户不能直接调用他们.触发器是许多关系数据库系统都提供的一项技术.在ORACLE系统里,触发器类似过程和函数,都有声明,执行和异常处 ...
- ecpilise引入Maven项目目录不正常,无JRE,无Maven Dependencies
原因是我的eclipse默认open perspective是java ee,改成java就恢复正常了.
- hbm2ddl
hbm2ddl工具位于Hibernate核心软件包中,而hbm2java工具位于Hibernate工具包中,因此需要下载Hibernate工具包,文件形式为HibernateTools-X.zip. ...
- ORM和Hibernate的配置方式
分层体系结构: 逻辑上一般分为三层:表述层(提供与用户交互的界面).业务逻辑层(实现各种业务的逻辑).数据库层(负责存放和管理应用的持久性业务数据). 物理上一般分为两层:物理层(每一层都运行在网络上 ...
- 使用ingress qdisc和ifb进行qos
ifb The Intermediate Functional Block device is the successor to the IMQ iptables module that was ...
- Java中生成随机字符的方法总结
package learnExercise; public class RandomCharacter { public static char getRandomCharacter(char ch1 ...
- java读取文件夹下所有文件并替换文件每一行中指定的字符串
import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.I ...