嵌入式Linux学习步骤

一:Linux 基础

1、熟悉:①安装Linux 操作系统 ②Linux 启动过程详解 ③Linux 文件系统 ④Linux 常用命令

2、认识:①Linux 服务能够独立安装 ②Linux 操作系统能够熟练使用 ③Linux 的基本命令

3、设置:①Linux 的常用服务、安装Linux 操作系统 ②Linux 基本命令实践

4、使用:①Linux 的环境变量定制Linux 的服务 ②SHELL 编程基础使用VI 编辑器或其他编辑器

二:SHELL 基础

1、SHELL 简介

2、认识后台BASH 编程,熟悉Linux 下的编程环境

3、熟悉Linux 下的各种SHELL,熟练进行SHELL 编程,熟悉VI基本操作,比较不同SHELL的区别

4、编写一个测试服务器是否连接的SHELL 脚本程序

5、编写一个查看进程是否存在的SHELL 的脚本程序

6、编写一个带有循环语句的SHELL 脚本程序

三:Linux 下的C 语言编程基础

1、Linux 下C语言环境概述,GCC使用方法,GDB调试技术,Autoconf,Automake,Makefile代码优化

2、熟悉Linux 下的开发环境,熟悉GCC 编译器,熟悉Makefile 规则

3、编写Hello World 程序使用make 命令编译程序

4、编写一个带有循环的程序,调试一个有问题的程序

四:嵌入式开发基础

1、嵌入式系统概述

2、交叉编译,配置TFTP 服务,配置NFS 服务

3、下载BootLoader 和内核

4、嵌入式Linux 应用软件开发流程

5、熟悉嵌入式系统概念及开发流程

6、建立嵌入式系统开发环境

7、制作cross_gcc 工具链,编译并下载U-boot,编译并下载Linux 内核,编译并下载Linux应用程序

五:嵌入式系统移植

1、Linux 内核代码、平台相关代码分析,

2、ARM 平台介绍,平台移植的关键技术

3、移植Linux 内核到ARM平台

4、了解移植的概念能够移植Linux 内核

5、移植Linux2.6 内核到ARM9 开发板

六:嵌入式Linux 串口通信

1、串行I/O 的基本概念

2、嵌入式Linux 应用软件开发流程

3、Linux 系统的文件和设备,与文件相关系统的调用

4、配置超级终端和MinCOM

5、能够熟练进行串口通信

6、熟悉文件I/O

7、编写串口通信程序

8、编写多串口通信程序

七:嵌入式系统多线程设计

1、Linux 系统进程概述

2、嵌入式系统的进程特点,进程操作守护进程相关的系统调用

3、了解Linux 系统中进程的概念,能够编写多进程程序

4、编写多进程程序,编写一个守护进程程序

5、Sleep 系统调用任务管理器、同步与通信

6、Linux 任务概述,任务调度

7、管道,信号,共享任务管理,API

8、了解Linux 系统任务管理机制

9、熟悉进程间通信的几种方式

10 熟悉Linux 任务剑同步与通信

11 编写一个简单的管道程序实现文件传输,编写一个共享内存的程序

八:嵌入式Linux 网络编程

1、网络知识基础:

      ①嵌入式Linux 中TCP/IP 网络结构 

      ②SOCKET 编程 

      ③常用API 函数

      ④分析ping 命令的实现

      ⑤基本UDP 套接口编程许可证管理

      ⑥PPP 协议

      ⑦GPRS

2、了解嵌入式Linux 网络体系结构

     ①能够进行Linux 环境下socket 编程

     ②熟悉UDP 协议、PPP 协议、

     ③熟悉GPRS,使用socket 编写代理服务器,编写许可证服务器

     ④指出TCP 和UDP 的优缺点

3、编写一个Web 服务器,编写一个运行在ARM 平台上的网络播放器

九:GUI 开发

1、GUI 基础

      ①嵌入式系统GUI 类型

      ②编译QT

      ③进行QT 开发熟悉嵌入式常用的GUI

      ④能够进行QT 编程,使用Q T 编写一个HELLO WORLD 程序

2、调试一个加入信号/槽的程序,通过重载QWindget 类方法处理事件

十:Linux 字符驱动设备程序

1、设备驱动程序基本知识:

      ①Linux 系统的模块

     ②字符设备驱动分析

     ③fs_operation 结构

     ④加载驱动程序,了解驱动程序的概念

     ⑤了解Linux 字符设备驱动程序结构

2、能够编写字符设备驱动程序,编写skull 驱动,编写键盘驱动,编写I/O 驱动

3、分析一个看门狗驱动程序

4、对比内核Linux2.6 中与2.4 中的驱动程序的字符设备驱动程序的不同Linux 块的设备驱动程序块,设备驱动程序工作原理

5、典型块设备驱动程序分析,块设备的读写请求队列

6、了解Linux 块设备驱动程序结构,能够编写简单的块设备驱动程序,比较字符设备与块设备的异同,编写MMC 卡驱动程序

7、分析一个文件系统对比Linux2.6 内核与2.4 内核中块设备驱动程序的不同

十一:文件系统

1、虚拟文件系统,文件系统的建立,ramfs 文件系统,proc 文件系统,devfs 文件系统

2、MTD 技术简介,MTD 块设备初始化,MTD 块设备的读写操作

3、了解Linux 系统的文件系统,了解嵌入式Linux 的文件系统,了解MTD 技术,能够编写简单的文件系统为ARM9 开发板添加MTD 支持

4、移植JFFS2 文件系统,通过proc 文件系统修改操作系统参数,分析rofms 文件系统源代码,创建一个cramfs 文件系统

猜你喜欢

转载自blog.csdn.net/BEYOND629310/article/details/89330978