目前来看,嵌入式Linux和FPGA选哪个前景更好?
嵌入式Linux前景好。
在有些人眼里,到处都是坑:工作时坑,生活是坑,感情是坑,甚至连人生都是坑,这些人就是大自然负能量的搬运工。回到正题,FPGA和嵌入式是不是坑,要看你在这里能收获什么,如果工作内容你喜欢、收入达到了你期望的范围、工作能给你带来满满的成就感,这样的坑就是待在里面也是坑主啊,有什么不好?
我个人觉得目前FPGA就业面比较窄,机会没有嵌入式多,但这几年FPGA的应用面也越来越广,机会也会越来越多吧。我自己不做嵌入式,但是公司内部做嵌入式的人数是远多于做FPGA的,从就业可选择性上来说,嵌入式更好找工作。至于工资这个和公司、个人能力挂钩,不好罔评。
从编程语言的角度说,工作难度FPGA应该大于嵌入式,FPGA成熟的路走的应该会慢些。这里有语言的问题,有FPGA论坛支持度不够的问题,也有FPGA对应硬件实现的问题。
FPGA是一门技术,嵌入式是一种应用。
FPGA的开发就是逻辑实现+约束+综合+仿真;嵌入式的开发流程是编码+编译+调试。
ARM的就业机会很多,如果是偏软,一般是系统工程师,薪酬一般般。做应用就和arm本身没太大关系。优点是就业容易。fpga就比较复杂,如果走hdl的路子,分为算法和控制。控制比如做多传感器的同时采集之类的,充分利用并行能力做到同步采集,这个收入一般般,就业渠道也一般般。算法的工资会比较有竞争力,技术含量也比控制高得多。比较适合硕士学历。
FPGA岗位非常有限,除了一线城市少数大厂,基本没有其它岗位(小公司你也看不上)。如果选择了FPGA,就只能在有限的几个公司混了。而且FPGA相对于嵌入式linux更需要懂硬件,甚至有时候要亲自动手搞点硬件。但是好处就是门槛高,可替代性差。
至于嵌入式linux,岗位多门槛也较为低一点。但是想更正贴主的一个思维:不管是嵌入式linux还是纯软件,开发语言远远不止c/c++,由于某些原因,c系列的语言用得越来越少,现在用得更多的反而是go java rust python lua之类的。嵌入式其实跟纯linux软件并没有多大区别,只是编译的时候要做一下交叉编译而已。门槛略高于纯软,但是低于FPGA。
所以总结下来,嵌入式开发较FPGA还发来说前期入门门槛较低,成长较快,对硬件基础要求不高,适合喜欢软硬结合的同学选择的发展道路;fpga是用来进行数字电路设计与仿真,对数字电路底蕴要求较高,前期入门较难,成长起来较慢,学习周期会很长。