大家好,今天小编关注到一个比较有意思的话题,就是关于嵌入式linux学习论坛的问题,于是小编就整理了5个相关介绍嵌入式linux学习论坛的解答,让我们一起看看吧。
- 嵌入式是Linux里面最有前景的吗?
- 谁给推荐几本好的嵌入式书籍?
- 学习Linux Shell及Linux开发的论坛或者网站有哪些推荐?
- 如何学习嵌入式linux?
- 嵌入式一年半,现两份offer,一Linux驱动,单片机;二通信协议栈,网络安全产品。怎样选择好些?
嵌入式是Linux里面最有前景的吗?
现在做嵌入式linux的很多呀,基本现在科技研发类公司都会用linux,做机顶盒、智能电视、智能家电都有。
嵌入式系统是切合生产、生活的最终产品,现在的电脑还不是所有的都是用于生产、生活。他有很大一部分是用于***、生产的前端罢了。
谁给推荐几本好的嵌入式书籍?
我推荐几本,你可以试着先看一下,适合不适合自己:
《嵌入式Linux C语言程序设计基础教程》
《嵌入式应用程序设计综合教程》
《ARM嵌入式体系机构和接口技术》
《嵌入式操作系统》
《Linux设备驱动开发详解》
不管怎么样,都希望你学业有成。
学习Linux Shell及Linux开发的论坛或者网站有哪些推荐?
楼主应该去看书,论坛和网站无法系统性地学习到Linux Shell和Linux开发。现在Linux论坛大多都成了开发,运维业余时间灌水的地方,你去看了也是灌水。
Linux shell的话我推荐“Linux命令行与shell脚本编程大全”,Linux开发就推荐“unix环境高级编程”,先看完这两本早说呢。
如何学习嵌入式linux?
stm32确实是一个瓶颈。而且现在毕业的相关专业的学生越来越多,stm32的技术门槛和知识点确实相对容易掌握。那么在主流的电子行业对嵌入式的需求是比较大的。主要是在于Linux的广泛运行。哪怕是安卓系统也是可以运行在Linux相同的电路开发板上的。
开发板的话就不好推荐了,有点像广告了。
学习Linux分为两个大方向,底层驱动和上层运用,这也是操作系统的特点。底层涉及驱动系列,对于硬件有比较直接的相关性。而应用几乎和硬件没他大的关系,主要掌握的是如何使用Linux操作系统,涉及各种指令,可以看 很多Linux运用的书籍。进而写一些基于Linux GCC的程序来熟悉这个。可以玩一玩树莓派板子,这个资料比较多,可玩性,掌握知识是很有帮助的。最近出了新版的,可以备一个用来学习Linux。
而底层是比较枯燥的,需要投入比较多。主要是驱动层比较难,所以需求很多,不愁找不到工作。仅仅会单片机已经确实不太有很大的竞争力了。底层需要掌握很多知识,随便去买一个比较流行的开发板就行了,主要是资料多,不懂的好找到人来问。否则自己一个人遇到卡壳的就很慢了。可以看看原子的,stm32你应该知道他很出名,打算出Linux开发板了。
我目前只会各类单片机及电路板的设计,当然也自学了服务器后端的简单使用,以及网站前端开发,Android APP开发,IOS还没怎么学,时间不那么丰富。你趁着毕业前三年的业余时间,学习一下是很不错的,时间相对多一点,但是也需要靠自觉性,毕竟你的同事可能都在打游戏,你能坚持走下去吗?
技术工作是非常枯燥的,希望你能有找到自己的方向,多积累,多思考。
嵌入式Linux其实范围很广,只以我个人经验简单说说。
我们简单的把嵌入式Linux开发工作分成几类:
Bootloader层开发
驱动层开发
根文件系统搭建
应用程序开发
其中:
Bootloader层开发和Linux关系不太大,一般用汇编语言+C语言,更类似单片机开发
应用程序开发:其实就是受一定限制的Linux应用程序开发,和嵌入式关系不大
根文件系统搭建:根据具体需求搭建一套精简而高效的根文件系统?这就需要对各Linux发行版有所了解,对Linux常用软件和常见的库有一定了解,熟悉各类构建语言(如Makefile, CMake, bitbake)
驱动层开发:主要是在核心态用C+汇编语言开发特定的驱动程序,需要熟悉Linux内核架构,同时对硬件熟悉
根据题主的知识情况,从STM32单片机转学嵌入式Linux,可能更适合在Bootloader层和驱动层深入学习。开发板可以考虑:
新唐的NUC系列(ARM926,低端)
树莓派(算中端吧)
个人认为:比开发板更重要的是对Linux本身的熟悉,这一点在PC上就能很方便的学习了。
说的不全面,感谢阅读!
欢迎讨论具体问题。欢迎关注。
嵌入式一年半,现两份offer,一Linux驱动,单片机;二通信协议栈,网络安全产品。怎样选择好些?
谢谢邀请。
linux 驱动
linux驱动,主要写底层代码,各种外设接口调试,需要会用linux shell指令,能够对linux内核比较熟悉,需要掌握linux底层,以及各类外设接口协议。也需要一定的硬件理论和知识。涉及领域多,产品类型丰富,就业机会和就业岗位多,工资较高。
协议栈工程师
而通信协议栈,如蓝牙ble协议栈,zigbee协议栈等类似通信协议栈。做通信协议栈的工程师比linux驱动的人数少,所以有工作经验的人,工资会十分高。
去年和一个朋友聊天,为了找一个能写某一款蓝牙芯片固件的人,工资直接开到4万一个月。
但同时,整个行业,需求通信协议栈的工程师岗位也相对于单片机和linux的岗位要少很多。主要是通信领域,行业比较专一,岗位机会少,选择性较linux驱动少,相同年限的协议栈工程师比linux工程师的工资要好一些。
总结
linux驱动和通信协议栈两个行业技术要求和门槛都比较高,工资也相对于其他一般的普通单片机开发等,工资待遇都好些,但这两个岗位的工作压力和工作强度都会比较大。而且各有优劣。
怎么选择在于自己,可以先与公司相关人员沟通下工作内容,再查阅下相关的行业和产品的情况是否为热门,进行考虑。比如5g通信解析栈,那肯定选择通信的工作了。
以上仅供参考。
推荐后者,嵌入式这个东西太通用了,而且可替代性太强,长江后浪推前浪,前浪死在沙滩上。嵌入式本身其实是一个工具而已,不是一个专业领域。而网络安全则是一个专业领域,可以深入研究,往纵发展。从职业发展通道上来说,一定是往纵深发展更有前途,千万不可左顾右盼,最终很难有专业领域的建树。
其实各有各的好!!我们是做5G基站的,协议栈和嵌入式linux都有。我个人是做嵌入式的。
我的个人看法是:
协议栈:工资较高,加班非常多,要看非常多的资料,5G的协议栈极其复杂,调试也非常困难。
嵌入式:就业面广,找工作容易,收入上较低。如果在产品成熟的公司做嵌入式是很轻松的,因为底层的东西通常不会有太多的更改。如果是尚在开始开发阶段做嵌入式那就很困难。在5G行业你可能还要极高的英语阅读能力,因为到目前为止,基本上还没有中文资料可以看。
总结一下。做协议栈要掌握的技能相对嵌入式要少很多,会一门语言,能看文档,做做调试。做嵌入式要求知识非常全面,linux,硬件,各种仪器,c, shell, python,windows的一些界面编写也得会。残酷的是:你花很多时间去学会它们,会得多但工资并不高。
如何选择要看个人,如果你打算三五年后自己创业就不要去做协议栈了,做这个对你以后创业基本上用处不大。反倒是嵌入式会随着物联网的兴起,开个小公司能挣点钱。
首先恭喜题主哈,这两份工作都不错,如果要考虑以后前景的话,我个人比较推荐后者。
因为我第一份工作就是在华为做嵌入式,后来转向到了网络通信的部门,对二者都有一定的了解。所以先点评一下两个工作:
Linux嵌入式与协议栈
linux驱动:关于嵌入式,这是一个很成熟的技术了,就业路子广,要求比较低,待遇也处于中上水平,但想要成为给一个优秀的嵌入式工程不光要把C语言学的十分扎实,还要熟悉掌握操作系统原理,Shell等脚本语言,对于底层协议和硬件也要有一定的理解。linux驱动工程师的年薪多在10-15w之间;
协议栈:网络安全从过去到现在一直都是个非常热门的岗位,要求同样也不低,例如深信服,启明星辰等在招聘网络安全相关岗的时候,很多都是博士起步。协议栈这东西很复杂,而且很抽象,大量的数***算也让人头秃,想要搞懂已有的都不是件容易事,如果是自研协议栈就更难了。而且这个行业对英语要求非常高,最起码得有PEST4的水平才能看懂各式各样的外文文档。当然了这个行业的待遇也很高,通信协议栈工程师的年薪多在20w—40w。
从就业和短期方向来看,嵌入式好一些;从个人长期发展来看,通信协议栈更适合;
如果题主是目前急需一份工作,嵌入式会是个更好的选择。我接触过不少人都是先做三五年的技术,积累经验然后自己开家小公司,过的都很不错;如果不存在生活上的压力,并想钻研深层次的一些东西,可以选择通信协议栈。别的不说,光是在英语上的提升就不可估量。一个专家级别的网络通信协议栈工程师的待遇相当之高,有兴趣的朋友可以搜一下。
(都看到最后了,麻烦点个赞或者关注吧,谢谢~)
从技术层面讲,无疑选二。国内大部分公司的驱动开发主要是移植和调整参数,软件开发的技能要求不高,后续发展有限。做协议栈对开发能力要求更高,当然也更能锻炼人,将来从事其它开发也比较容易转。
到此,以上就是小编对于嵌入式linux学习论坛的问题就介绍到这了,希望介绍关于嵌入式linux学习论坛的5点解答对大家有用。