嵌入式复习

Posted dxpo1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了嵌入式复习相关的知识,希望对你有一定的参考价值。

五、试题题型
有单选题、填空题、简答题、命令应用题、程序设计题等五种题型。
?单选题:给出一些有关vi编辑器、gdb调试器、make工程管理器、Bootloader、文件系统以及嵌入式Linux应用程序、嵌入式Linux驱动程序、Linux进程间通信以及Linux下的SOCKET通信等知识的不完全叙述,要求学生从题后给出的供选择的答案中选择合适的答案,补足这些叙述。这类题目主要考察学生对知识点的掌握程度。
?填空题:给出一些有关交叉编译、gcc编译器、Linux内核、嵌入式Linux驱动程序、Linux下web服务器等知识点的部分语句缺失,让学生补充完整。这类题目主要考察学生阅读理解的能力和对知识的应用能力。
?简答题:给出一个问题,让学生简述,目的在于考核学生对交叉编译、Bootloader、嵌入式Linux应用程序等内容的理解和掌握。
?命令应用题:给出操作说明,然后写出相应的操作命令,这类题目主要考察学生对Linux命令、gcc编译器、Linux内核、嵌入式Linux应用程序以及Linux多线程等内容的熟练使用程度。
?程序设计题:给出设计要求,编制出程序,用来考察若干个知识点。考察学生综合运用所学习知识解决问题的能力。
1、嵌入式Linux编程环境
(1)掌握嵌入式Linux开发交叉编译环境的搭建;
(2)掌握Linux常用操作命令:文件目录指令,文件的压缩处理指令,权限管理指令,其它系统管理指令★;
(3)掌握vi编辑器的使用★;
(4)掌握gcc编译器的使用★;
(5)掌握gdb调试器的使用★;
(6)掌握makefile的基本结构、变量与规则★。
2、嵌入式Linux的开发环境
(1)理解Bootloader的定义、特点、种类、镜像存放区域、启动流程;
(2)掌握Bootloader的编译与移植★;
(3)理解Linux内核文件结构;
(4)掌握Linux内核的配置、编译及移植★;
(5)了解常见的嵌入式文件系统;
(6)掌握根文件系统的制作★。
3、嵌入式Linux应用程序开发
3.1嵌入式Linux驱动程序
(1)掌握嵌入式Linux应用程序编写、编译及移植★;
(2)理解驱动程序的定义、分类、驱动程序与应用程序的区别、驱动程序的加载等基本概念;
(3)掌握字符设备驱动程序的开发★;
3.2嵌入式Linux进程间通信
(1)理解进程的概念、进程与程序的区别;
(2)掌握进程的标识符、进程创建、进程终止、进程休眠以及进程等待的编程★;
(3)掌握无名管道的通信机制★;
(4)掌握有名管道的通信机制★;
(5)掌握Linux信号处理机制★;
3.3Linux多线程
(1)理解线程的定义、进程与线程的区别;
(2)掌握线程标识符、线程创建、线程终止的编程★;
(3)掌握多线程的同步与互斥★。
3.4 Linux串口通信
(1)理解串口通信原理、串口通信基本参数、termios 结构体等相关概念;
(2)掌握Linux串口通信的程序设计★。
3.5 Linux下的SOCKET通信
(1)理解TCP协议、UDP协议等网络通信相关概念;
(2)掌握SOCKET编程函数★;
(3)掌握TCP协议的通信流程★;
(4)掌握UDP协议的通信流程★。
3.6 Linux下web服务器
(1)理解嵌入式Web服务器的功能以及常用的嵌入式Web服务器;
(2)掌握Boa服务器的移植★;
(3)理解CGI的功能;
(4)掌握CGI程序开发★。
3.7 Linux下嵌入式数据库SQLite 
(1)理解嵌入式数据库SQLite的基本概念;
(2)掌握SQLite数据库的配置,编译,安装及移植★;
(3)掌握SQLite程序开发★。

linux的编程环境(16)

第一章

技术图片

技术图片

第二章

技术图片

技术图片

链接方式:JTAG 串口,以太网,USB接口

开发流程:

技术图片

引导:BootLoader

第三章

cd 打开/切换工作目录 技术图片
ls 列表
mkdir 创建目录
cp 复制 粘贴 cp (-r -p -f)[1] 源文件 目标文件
mv 移动/重命名 mv 源文件 目标文件
rm 删除 -f强制
touch 创建文件
useradd 创建用户
chmod 权限指令 技术图片或者chmod 4??r 2??w 1??x 0 ??- + 文件夹/名
chown 设置归属
??tar 解压 技术图片
mount 挂载 技术图片
ifconfig 配置网络 技术图片
ps 查看进程 -aux : 查看所有进程
kill 杀死进程 -9 : 强制终止进程

https://www.cnblogs.com/dxpo1/p/13143870.html

/etc/shadow :存密码

/etc/passwd : 存账户

第四章

vi

技术图片 技术图片 技术图片 技术图片 技术图片
  • 光标的快速移动
  • 删除,复制,粘贴,保存退出

gcc


技术图片各个步骤,后缀文件


gdb调试

gcc -g test.c -o test

断点

n

s

恢复程序

第五章make

技术图片

Makefile的结构三个要素

技术图片

Makefile的编写

Makefile的变量种类

  • 用户自定义变量

  • 环境变量

  • 预定义变量

  • 自动变量

autotools自动生成makefile

linux的开发环境(41)

第六章BootLoader

技术图片

在flash中技术图片

技术图片

BootLoader结构

stage1 stage2
- 硬件初始化 用汇编语言跳到main入口
为stage2准备RAM 初始硬件设备
拷贝stage2到RAM 稽查系统内存映射
设置堆栈指针sp 将kernel和根文件从falsh读到RAM
跳到stage2的c入口 为内核设置启动参数
调用内核

第七章linux内核

三种配置方式
技术图片

make menuconfig最常用

内核配置选项前括号
技术图片
linux内核配置选项
CPU 系统类型
技术图片 网络管理
技术图片 设备驱动程序
添加对应的文件系统支持,如EXT4 文件系统
编译内核

make zImage

生成的zimage在arch/arm/boot/

??内核的配置命令,选项

第八章 文件系统

虚拟文件系统VFS

为各类文件系统提供统一的操作界面和应用编程接口

falsh

是嵌入式系统主要存储媒介

常见文件系统

??理解

Yaffs JFFS CRAMFS Ramdisk
NAND Flash NON Flash 只读压缩文件系统 把RAM内存划分出一部分当做分区使用
根文件系统

??必须掌握

根文件系统(可以使用busybox制作)

技术图片

Linux应用程序开发(43)

第九章Linux应用程序开发

NFS : 让本地客户端读取远端服务器的文件,然后挂载到客户端

NFS使用:

宿主机(服务器)

  • 关闭防火墙 ifconfig iptables stop
  • 设置IP,与目标机IP要在统一网段 ifconfig eth1 192.168.0.90
  • 设置共享目录和访问权限 [共享目录] [主机ip]

目标机:

设置ip

挂载mount mount 192.168.1.90: /opt/root_fs /mnt

U盘挂载
技术图片

第十章驱动开发

什么是驱动程序
技术图片
驱动程序的分类

字符设备

块设备

网络接口设备

驱动程序的加载

直接编译到内核

编写成模块,需要时动态载入内核,如声卡

理解驱动与应用之间的区别
驱动程序 应用程序
没有main,通过宏调用module_init 执行一个main函数
头文件为<linux/module.h>输出为printk 头文件为<stdio.h>输出为printf
字符设备驱动程序框架??????
技术图片
file_operations
技术图片

模块注册

技术图片

模块退出

创建设备文件mknod
技术图片

第十一章进程控制

程序与进程

程序:可执行的文件比如exe,功能代码

进程:是程序一次执行的过程,动态的

获取进程标识PID和PPID

有文件(获取ID和创建进程一样)

include<sys/types.h>

include<unistd.h>

技术图片
进程的创建

pif_t fork(void)

进程终止(exit比较好)
技术图片
进程休眠(sleep)
技术图片
进程等待/暂停(wait)
技术图片

第十二章进程通讯(设计)

无名管道是什么/特点

不存在的,临时的,不在系统盘的,内存内的

无名管道通讯??????

父子进程通讯,父向子写数据(关闭读端),子从管道读取父进程所写数据(关闭写端)

无名管道创建

有名管道特点??????

有本地磁盘有文件,不同进程之间通讯

技术图片技术图片

技术图片
信号

用于通知进程发生的事件,不传递实际数据

技术图片
信号处理
技术图片

第十三章(多线程)

线程

就是进程的下一级,一个进程有很多线程,优点是能同时就行多种操作

线程的编程
技术图片

创建

技术图片 技术图片 技术图片

第十四章网络编程(没有大题,有填空选择)

TCP/UDP

tcp特点:

udp特点:

技术图片
socket
技术图片
TCP编程流程
UDP编程流程

第十五章(串口编程)

termios
串口编程流程
技术图片

第十六章(web服务器)

web服务器特点

单进程服务器

什么事CGI

是web服务器能运行外部程序的一个接口标准

第十七章(Sqlite)

技术图片
  1. -r 目录树/-p 属性/-f强制覆盖同名 ??

以上是关于嵌入式复习的主要内容,如果未能解决你的问题,请参考以下文章

分享几个实用的代码片段(第二弹)

分享几个实用的代码片段(第二弹)

嵌入式体系结构复习笔记

结合两个代码片段?将用户输入的 Youtube url 转换为嵌入 url,然后将 iframe src 替换为转换后的 url

安卓复习8

安卓复习8