这个课程确实很不错的,讲解的知识点很清晰,我之前是在共众号 《码农充电堂》 领取的,省了很多钱,你也可以去看看。
按老师傅的说法就是:“加班不严重,注重积累,越往底层越有趣,没有35岁被炒的说法,但是要沉得住,要真的对底层技术感兴趣,我工作三年半,现在找到的新工作27k算上公积金。”
我整理了一些嵌入式、物联网开的面经+笔试面试题和一些项目教程,想要的可以四信我。
基础
1. linux基本操作:
需要掌握的知识如下:
环境的搭建;
Linux目录结构;
文件类型;
基本目录操作,文件操作,vim,ifconfig,ping,cd,cp,mv,mkdir等,最关键是gcc命令要会用;
一些简单的shell脚本;
Makefile的编写。
2. c语言:
不会写代码,就建议不要学Linux,否则职业后期全是瓶颈。那些和你说学Linux不需要懂编程的都是再耍LM。
学习C语言一定要学习Linux下C编程,
3. 数据结构:
数据结构很重要,但是在这个上面花太多时间,也是没必要的。个人建议只要掌握几个基本的排序和查找算法即可,没必要把所有算法都研究一遍。
能掌握常见的算法比如:冒泡排序、直接插入排序、快速排序、二叉树等。
链表操作,创建、增删改查。
4. 基础阶段项目
基础阶段,个人强烈建议一定要做一个综合性项目,从0开始写。
用链表实现一个简单的《电话本管理软件》,包括增、删、改、查、排序等操作,把所有的知识点融会贯通起来。
进阶-Linux编程
1. 文件IO
掌握posix的一套api,open、read、write、lseek,close等。
熟练写出文件拷贝的功能模块输出。
理解缓冲的概念。
2. 进程线程
掌握常用的函数fork、exec族函数、pthread 等api;
进程创建、回收,一个.c源文件变成可执行程序的过程;
crontab、at命令;
进程间通信:信号量、消息队列、共享内存、管道、信号;
线程创建,同步互斥,互斥锁;
守护进程;
库的概念,什么是动态库和静态库,如何自己制作动态库和静态库。
3. 网络编程
TCP/IP协议分层以及每一层的功能;不要看OSI,只要知道即可;
socket api的使用,tcp、udp;
套接字属性的设置;
C/S架构;
多进程、多线程服务器模型;
抓包工具使用;
常见的网络协议分析:ping、 tftp、 ftp 等;
#嵌入式开发[话题]# #嵌入式[话题]#
#嵌入式开发培训机构[话题]#