【最新】嵌入式开发初级教程

在纷繁复杂的嵌入式应用需求中,只有掌握了linux操作系统所提供的核心结构,我们才能在今后面临客户不断变化的开发需求,游刃有余。本阶段将要掌握linux系统下文件IO,进程,线程,进程间通信,socket网络编程相关的嵌入式开发知识点。

Linux系统编程教程

linux操作系统的io系统编程,是嵌入式学习必学课程之一,从IO系统的函数、标准及相关操作方面详细学习,方便初学者快速掌握。

open和close函数及touch命令实现

read和write函数

lseek函数和cp命令实现

标准IO-缓存

标准IO-fopen和fclose

标准IO之fputs和fgets函数

标准IO之fflush、无缓存、fseek、rewind、rewind

标准IO之gets、puts、fprintf、sprintf函数

标准IO之fgetc、fputc

标准IO之feof、ferror、clearerr

标准IO之cat命令实现

标准IO之fread、fwrite

fgetc_read之比较

fread和fgets效率比较

函数库的制作

linux系统编程 目录IO

想系统学习以上知识,请点击:linux之io系统编程

Linux进程间通信

进程,程序灵魂的载体,掌握了linux的进程及特性,以及他们之间的信息传递,将是成为一名合格的linux应用开发工程师必须的技能。

无名管道

有名管道

信号通信

共享内存

消息队列

信号灯

想系统学习以上知识,请点击:Linux进程间通信

Linux多线程编程

Linux多线程技术,嵌入式开发常用技术之一,更好的利用资源,让你的程序相应更快,在多核时代,让你实现真正的并行。

线程的概念

线程id

创造线程

主线程

线程状态和回收

线程退出,线程连接,线程取消

信号默认处理

信号处理

线程清理程序

线程同步的必要性

互斥量使用

读写锁

条件变量

一次性初始化

线程的分离属性,线程栈属性,线程同步属性

线程私有数据

线程与fork

tcp服务器的创建方法

简单tcp服务器

tcp多线程服务器

想系统学习以上知识,请点击:Linux多线程编程

Linux网络编程基础

让你从零开始学习网络编程,以及网络编程中的技巧运用,并能熟悉从网络基础中做更高层的开发。

网络编程基础以及wireshark的使用

简单时间服务器的编写

TCP三次握手四次挥手

其他网络编程的基础知识

多客户端并发介绍以及sourceInsight的基本使用

IO复用及select使用流程

对select提高效率的第一种解决办法

高并发服务器之epoll编程

一个嵌入式linux项目的流程以及rshell

rShell的客户服务器实现

想系统学习以上知识,请点击:嵌入式Linux网络编程基础

C++面向对象编程

C++是在C语言的基础上开发的一种通用编程语言,支持面向对象编程、泛型编程和过程化编程等多种编程范式,在嵌入式应用开发中广泛运用。

VS2010开发环境

标准流输入输出

标准库string类型

标准库vector类型

面向对象基础

定义类和对象

类和对象的使用

构造函数和析构函数

this指针和复制构造函数

类的静态成员

const对象和const成员

友元

运算符重载基础

运算符重载规则

重载二元和一元运算符

流插入、提取运算符和类型转换

定义自己的String类

继承与派生基础

派生类使用

多态

文件操作

STL顺序容器

STL关联容器和容器适配器

STL迭代器和算法

想系统学习以上知识,请点击:C++面向对象编程

数据结构与算法

数组与链表

热身战:Reverse数组以及大O表达式

热身战:斐波那契数列的递归实现

Reverse链表

合并两个排好序的链表

归并排序

快速排序

折半搜索法

半搜索法 - 迭代

字符串搜索(strStr)

Binary Search-使用二叉搜索树

基于递归的BFS(Level-order)

栈和队列的概念

遍历二叉树

表达式求值

使用数组表达完全二叉树 - 二叉堆

寻找一组数中最大的k个数

图的表达与遍历

输电问题-图的最小生成树(Kruskal's Algorithm)

另一种图的最小生成树算法(Prim's Algorithm)

单源最短路 Dijkstra算法

强连通子图 DAG以及Top Sort

Hash函数和Hash表

strStr(子字符串查找) - 使用rolling hash O(n)

使用动态规划解决Fibonacci数列和背包问题

Longest common subsequence 动态规划解法

多源最短路Floyd算法

想系统学习以上知识,请点击:数据结构与算法

Linux操作系统基础

Linux基础及操作系统框架

Shell命令机制

Linux应用程序安装及卸载

Linux服务程序的安装及配置

Vi的设计思想及使用

想系统学习以上知识,请点击:linux操作系统基础

文章来源:麦子学院

原文链接:http://www.maiziedu.com/article/28200/

你可能感兴趣的:(【最新】嵌入式开发初级教程)