嵌入式Linux开发步骤


  1. 设计自己的硬件系统
  2. 编写Bootloader
  3. 裁剪自己的Linux内核
  4. 开发移植设备驱动
  5. 构建根文件系统
  6. 开发应用程序

嵌入式Linux学习要点


  1. 熟练使用开发工具和相关指令集
  2. 高质量的C和C++语言编程
  3. Linux操作系统原理
  4. 理解和熟悉嵌入式开发环境
  5. 掌握嵌入式学习方法
  6. 理解Linux系统中模型概念
  7. 剖析实例代码,善于归纳总结

嵌入式Linux开发方向


  1. 嵌入式Linux驱动方向
  2. 嵌入式Linux应用方向

  

硬件平台


  MINI2440开发板

  目标:熟悉开发板的硬件结构与跳线

开发环境搭建


  1. 安装USB转串口驱动
  2. 安装USB下载驱动
  3. 配置超级终端/SecureCRT/DNW
    • 四种串口调试工具:超级终端/SecureCRT/DNW/minicom
  4. mini2440启动方式:Nor/Nand
  5. H-JTAG的安装与使用
  6. JLink的安装于使用
    • 烧写Nand和Nor Flash
  7. OpenJTAG的安装与使用
    • 烧写Nand和Nor Flash
  8. 安装BootLoader程序至Nor Flash
  1. 搭建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  
  2. 搭建Sam服务器(Window与Linux之间资源共享)
    • 查看包是否安装 rpm -qa | grep samba
    • 关闭Linux下防火墙和 SELinux服务(必要时把win下的防火墙也关闭)>

      • 图形界面关闭:系统->管理
      • service iptables stop

      设置samba共享目录 系统 ->管理 ->samba (如果没有samba选项则应该安装system-config-samba-XXX,可以通过添加/删除软件工具安装)

      • 个人设置为了/home/embedclub /home/student /home/student/pcshare 

        或者通过配置/etc/samba/smb.conf设置共享

        参考:http://www.cnblogs.com/mchina/archive/2012/12/18/2816717.html

    • 启动samba服务

      • service smb start
  1. 搭建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
  2. 设置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.

      

课程目标


  1. 玩转开发板之ARM裸机程序(参考《mini2440用户手册》-2.3非操作系统下的外围资源测试)

    • 下载2440. bin至SDRAM(使用minitools工具下载裸机程序,前提是安装上USB下载驱动)
    • 测试并修改裸机程序
  2. 玩转开发板之Linux
  3. 玩转开发板之WinCE
  4. 玩转开发板之Android
  5. 玩转开发板之Uboot

  

基本技能要求


  1. Linux终端常用指令
  2. 文本编辑器的使用
  3. Shell脚本编程
  4. gcc编译器与gdb调试器的使用
  5. make与Makefile文件编写 详见:http://www.cnblogs.com/kwseeker-bolgs/p/4366469.html
    • 使用Makefile管理多模块软件
    • 掌握Makefile的规则,变量
    • 掌握Makefile的虚目标规则
    • 应用Makefile管理多个源文件的工程

嵌入式Linux开发——内容介绍与开发环境的搭建的更多相关文章

  1. 【Xamarin开发 Android 系列 1】环境部署搭建

    原文:[Xamarin开发 Android 系列 1]环境部署搭建 开篇自然先扯一段,近几年移动互联网如果熊猫零食一样,蔓延迅速.楼主身为一个微软忠实的粉丝,无奈,老爹不给力.Silverlight开 ...

  2. 一、Linux 设备驱动介绍及开发环境搭建

    1.1 Linux 设备驱动介绍 1.1.1 分类及特点 计算机系统的硬件主要由 CPU.存储器和外设组成. 当前 CPU 内部都集成有存储器和外设适配器. 外设适配器有入 UART.IIC 控制器. ...

  3. 【Python开发】Python中数据分析环境的搭建

    注:无论是任何一门语言,刚开始入门的时候,语言运行环境的搭建都是一件不轻松的事情. Python的运行环境 要运行或写Python代码,就需要Python的运行环境,主要的Python有以下三类: 原 ...

  4. [原创]java WEB学习笔记76:Hibernate学习之路---Hibernate介绍,hibernate 环境的搭建

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  5. 一、Linux 设备驱动介绍及开发环境搭建(续)

    1.2.6 uboot 编译安装 嵌入式 bootloader 的功能: 功能类似于 PC 的 BIOS.硬件检测是否正常 加载操作系统镜像到 RAM 设置不同的启动方式 常见的启动方式: NOR/N ...

  6. Linux的简单介绍和开发基本运维时候用到的命令

    先简单介绍下Linux文件夹目录 1./ linux下的根目录 实际上等同于window的我的电脑点进去 2./etc /usr 一个是系统配置文件存放的地方,一个是系统资源(应用程序)放的地方这俩文 ...

  7. linux+node.js+redis+mongodb+nginx环境的搭建

    1.推荐购买阿里云服务器,使用Centos7.0的服务器版本,在创建完全系统并进入之后,第一步是更新服务器的相关组件    yum -y install gcc gcc-c++ openssl-dev ...

  8. [推荐]WebService开发知识介绍

    [推荐]WebService开发知识介绍 WebService开发手册  http://wenku.baidu.com/view/df3992ce050876323112128a.html WebSe ...

  9. 嵌入式 Linux 应用:概述

    转载:http://www.ibm.com/developerworks/cn/linux/embed/embl/overview/index.html   从腕表到基于群集的超级计算机 在对嵌入式 ...

随机推荐

  1. 在shell脚本中使用函数

    转载请标明:http://www.cnblogs.com/winifred-tang94/ 对于在脚本中重复使用的功能模块,可以封装成为函数. shell脚本中函数的定义可以使用如下两种方式: a. ...

  2. hadoop 8步走

    1.1读取hdfs中的文件.每一行解析成一个<k,v>.每一个键值对调用一次map函数        解析成2个<k,v>,分别是<0, hello you>< ...

  3. 《day17_String_StringBuffer》

    package cn.itcast.api.string; public class StringDemo{ public static void main(String[] args){ //定义一 ...

  4. poj2777 线段树

    //Accepted 4768 KB 391 ms //线段树,延时标记的应用 //对于每一段,用一个int表示被着色的情况,change标记该段的颜色是否发生整体的改变,即这一段 //用没用被全部涂 ...

  5. unity3d打包和包的使用

    打包: ①Assets下新建文件夹Editor和steamingAssets ②对选定文件打包: using UnityEngine; using UnityEditor; using System. ...

  6. js控制打印 转的

    很多时候,我们在做系统的时候要做打印功能,打印在js中其实很简单,不过这个很简单的代码并不能满足我们的特定需求,比如我们需要打印的表单在很多文字的中间,或者文字中包含一些广告或者图片什么的,这就很难用 ...

  7. C语言基础:进制转换,变量,常量,表达式,基本数据类型,输出函数,输入函数,运算符. 分类: iOS学习 c语言基础 2015-06-10 21:39 25人阅读 评论(0) 收藏

    二进制:以0b开头,只有0和1两种数字.如0101 十进制:0~9十个数字表示.如25 十六进制:以0~9,A~F表示,以0X开头.如0X2B 十进制转换为X进制:连除倒取余 X进制转换为十进制:按权 ...

  8. To and Fro

    Description Mo and Larry have devised a way of encrypting messages. They first decide secretly on th ...

  9. 4、网页制作Dreamweaver(样式表CSS)

    样式表style 制作一个风格统一的网页,需要样式表对颜色.字体等属性的规范,同时也省去在body中多次定义的麻烦,所以一个样式表是必不可少的. 样式表有两种引用的方法:一种是直接写在html的< ...

  10. NSIS

    NSIS 是“Nullsoft 脚本安装系统”(Nullsoft Scriptable Installation System) 的缩写,它是一个免费的 Win32 安装.卸载系统,采用了简洁高效的脚 ...