当前位置:首页 > 问问 > 正文

学嵌入式linux要先学什么 嵌入式方向可以完全不学Linux吗

大家好,今天小编关注到一个比较有意思的话题,就是关于嵌入式linux培训的问题,于是小编就整理了5个相关介绍嵌入式linux培训的解答,让我们一起看看吧。

学嵌入式linux要先学什么

嵌入式发展如此的快,可以说是现在最热的IT技术之一了,很多人加入嵌入式的行业,但是对于刚进入嵌入式或者刚接触嵌入式的人来说,学习嵌入式还是有一定的难度的,我跟前就有很多这样的人,下定决心想要去学嵌入式,但是不知道从何学起,今天我这只老鸟就分享一些嵌入式学习方法,快快搬小板凳来听。

对于嵌入式新手来说,知道一点嵌入式,知道嵌入式大概是做什么的,不是很懂,所以要熟悉掌握嵌入式的概念。我们可以看到网上或者书上很多解释:嵌入式系统是针对某个应用,软硬件可裁减的,对体积,功耗,成本等等有严格要求的一个计算机系统。看起来是很复杂的,其实我们来总结一下就是两点:

第一,嵌入式系统是一个计算机系统

第二,嵌入式系统是针对某个应用的,也就是通常所说的“专用的”。

学嵌入式linux要先学什么 嵌入式方向可以完全不学Linux吗

其实再说的通俗易懂点就是针对某个应用的计算机系统!这样的话就很好理解了。

那么重点来了,那就是要学什么,对于嵌入式来说,不要觉得他学很多东西,你就会没有目的的学这学那的,这样只会让自己更加迷茫,不知道要学哪个了,你要知道,嵌入式也就是软件,硬件,编程这些方面的,最基础的也就是C语言了,那刚开始接触,你就需要先从C语言入手。

1、C语言,关于C语言要知道基本的语法,什么是结构体,什么是共同体,有的东西也不用一定要记忆,因为在实际中很少用到;

2、嵌入式最核心的操作系统,所以操作系统原理也应该是要有所了解的,比如时间片、任务调动等等;

3、Linux基本命令的使用(vi编辑器必须会用,因为在终端改文件的时候只能用这个),现在很多的人对鼠标早是情有独钟了,很少用到命令,在学习嵌入式Linux可要改改这个习惯了,Linux用命令操作具有效率高、功能强大的特点,这个是图形界面无法取代的,其实平时的图形界面操作都要转化为命令传输给硬件的。

4、Linux设备驱动的架构要了解,结合原理图和Linux设备驱动相关书籍把每一行代码分析清楚。

上面只是一些简单的嵌入式学习要点,你要先掌握这些,才能再继续后面的,在这里要切记你不要心急,心急吃不了热豆腐,不要希望看什么或者学什么一次就能会,而且记住要理解,不要死记硬背,要理论与实践相结合,实践的多了,那自然而然也就会弄了。还有,不要直接阅读Linux内核源码,看一些自己撞破头也想不明白的东西只能是浪费时间,要循序渐进。

对于初学者,还有一点小建议,我们拿到一个开发板,很兴奋也很激动,想法自然也很多,想用开发板实现自己的这个想法,实现那个想法,然后又不知道从何下手,然后就去论坛中发一个贴,“那个什么什么怎么实现啊,哪位大侠能详细说一下啊,跪求!!”然后等着别人去回复。见没人回复就抱怨。有想法是好的,我们要实现自己的想法也是有前提的,首先,我们对这部分知识了解吗?如果不了解就去google一下(最好别用百度,不太好用),了解了一些,也就大概知道要怎么做了。如果再遇到问题,再去发贴问,这样也显得咱们有水平。比如自己连串口是什么都不太清楚呢,就问串口通信怎么做啊,就是人家把代码给咱,咱也不明白是怎么回事啊。

记住每个人都有每个人的方法,就是要勤于练习,不要懒惰,你可以根据我上面的学习方式来进行学习,这个方法就是我在我学习工作中总结的,还是很受用的,希望你和我一样从新手到老鸟,这是一个困难的过程,好好努力最重要。

嵌入式方向可以完全不学Linux吗

嵌入式并不一定需要会linux,其实很多嵌入式产品都用不到linux,跑linux系统对芯片内存要求较高,像现在很多工控产品,都是裸机开发,基本上都是单片机的形式开发产品;而且现在很多物联网产品也都是基于实时操作系统开发的~嵌入式方向很大,主要看你从事什么行业以及所开发的产品!当然,你要懂linux,并且有相关项目开发经验,对于你以后跳槽就有涨工资的资本了

linux嵌入式开发是做什么的

嵌入式系统的定义:“用于控制、监视或者辅助操作机器和设备的装置”(原文为:DevicesUsedtoControl,MonitororAssisttheOperationofEquipment,MachineryorPlants)。这主要是从应用对象上加以定义,从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。

国内普遍认同的嵌入式系统定义为:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。

嵌入式主要用到的是C语言,C++,但Java也用于嵌入式技术,主要是用在嵌入式游戏开发,移动开发等,主要侧重JAVA的J2ME方向。

嵌入式的发展前景跟就业前景很不错,目前国内这方面的人才也比较紧缺。所以你学这方面的专业比较好。

嵌入式主要分为三大块:

1.嵌入式Linux系统开发:侧重开发环境搭建、内核原理、交叉编译等

2.嵌入式Linux应用开发:侧重Linux应用编程、内核编译、系统调用。

3.嵌入式Linux驱动开发:侧重嵌入式Linux系统下的驱动开发、内核的深入分析。

目前市场上专业的嵌入式培训很多很乱,因为是最近几年发展起来的。据我所知最权威最专业的要数东方赛富嵌入式培训学院了,位于清华大学东门,跟清华大学有很深的渊源关系。特别是师资,师资团队是整个嵌入式培训领域最好的。80%的老师来自清华大学、世界500强企业和中国顶尖的IT公司。

如果时间及经济条件允许的话,培训一下还是有很好的,既学到了专业知识,同时也解决了就业问题,就业单位也比自己找的要好很多!如需要培训他们是不二的选择!

最近想学习嵌入式linux编程,能帮我推荐几本经典书籍吗

分享一下我学习Linux的过程。

学嵌入式linux要先学什么 嵌入式方向可以完全不学Linux吗

我学习Linux从接触到现在也算是有三年多了,到最近这两年才频繁接触,到现在我都没买过一本书。我学习的方法跟别人可能不一样。

接触linux 系统是从我得到了“虚拟机”这个强大的软件开始的,我在这个软件中安装过很多版本的Linux系统,比如说有Ubuntu,Linux,深度系统,还有国产的中标麒麟系统,前面的那些都是Linux系统只是名字不一样,而现在保留下来的Linux系统是Ubuntu系统,因为这个系统看起来比较简单一点,所以学起来也方便些。

其实学习这些操作系统也不能,说的简单一点就是多操作一下就会了,就像学习win系统一样,真正的计算机等级考试,不也只是教你简单的操作文档编写软件,我觉得我之前的计算机等级考试的内容现在都过时了。

我在去年买了个树莓派,这个也是Linux系统的,从这开始我就开始在Linux系统里面折腾了,很多命令都是不知道输了多少遍才不会忘记。

今年初公司需求需要在Linux里面开发软件,从而涉及到了Linux系统的内核编译 ,底层驱动编写,Linux系统的网络设置,上层软件对底层驱动接口的调用,qt源码编译,QT 软件开发,arm交叉编译环境的部署,shell脚本编程,sqlite数据库的使用,TCP编程,等等。

总而然之,想要学好Linux系统的前提就是你要有一个Linux系统去不断的操作。分享好方法,在学习的同时记得要记录你所操作过的命令,一开始我没记,到后面就忘了,想用时又要从新找。至于教程,网上有很系统的教程,感觉跟书上差不多,遇到不会的多baidu一下,都用前辈们的解决方法,遇到的问题也要把它记下来。

学习嵌入式开发的过程难吗

刚开始是比较难的,但是一旦摸到门路后,就会学得很开心、进步很快。一般来说,学习嵌入式一般是以下过程:数模电-->51单片机-->STM32单片机-->QT/RTOS-->Linux。每一个阶段都有难的,但都是前一个阶段积累来的,慢慢来的话,也不会太难,坚持并相信自己就好,有需要就学,热爱就学!加油吧!

从我自身的经历来看,学习嵌入式入门容易,但是精通比较难,主要的难点在如下几点:

1)芯片层面。芯片的硬件资源,gpio、时钟、复位等,搞清楚还是挺容易的,但是芯片内部的架构、各ip的选择、性能指标的确定,这些不是短时间内能掌握的,需要长时间的打磨才有可能。成本、功耗、性能如何做到均衡,对于一个好的嵌入式芯片来说至关重要,而这需要对芯片设计和产品应用均有长时间的理解才行。总的来说,嵌入式芯片的使用入门容易,但是好的芯片设计较难。

2)硬件层面。嵌入式系统的硬件设计一般都易入门,它的难点在于如何设计一个可靠的电路,如何控制成本功耗。不同水平的硬件工程师设计出来的电路差别很大的。

3)软件层面。编写一段嵌入式代码容易,但是如何用有限的资源完成高性能的任务,这个是难点。毕竟嵌入式系统可用的资源都是有限的,flash、RAM的大小受限,主频受限,等等。习惯了PC编程的,肯定无法理解嵌入式软件设计中的斤斤计较。


如果你从来没接触过,学习的过程还是挺难的,但是如果你有软件和硬件基础,再加上毅力和恒心,也能够由入门到精通的。下面根据我自己的一些经验给你一个学习的路线和方法:

1.狠抓基础

首先拿出大学里的C语言、数据结构、计算机基础、高等数学、数字模拟技术和数字电子技术 这些书来学习软件基础和硬件基础。

看到这些书有没似曾相识的感觉,仿佛回到大学时代!

C语言:

这个不用说了,软件入门的开始,把每课代码例子手动敲一遍,不是为了敲代码而敲代码,而是熟悉编程方法和编程思想。

数据结构:

数据结构一定要学好,这个关系以后你的代码 是“土鳖”编写的还是"土豪"编写的;

这个关系到以后你的代码 大小是10k还是100k,还关系到你能否往更高领域公司百度阿里物联网云计算、自动驾驶、智能机器人方向发展。

高等代数:

学嵌入式linux要先学什么 嵌入式方向可以完全不学Linux吗

高等数学主要是学习逻辑思维能力,对你以后编程逻辑以后Bug的查找解决关系很大。

模拟电子技术基础和数字电子技术基础:

这个是学习模拟电路和数字电路的基础,这个是设计电路的基础。对你后面开发电子产品起着很重要的作用。


2.勤于实践

有了上面的基础之后,我们可以开始边实践边学习了:

2.1 初级篇

首先从单片机开始比如51单片机或AVR单片机、或STM32单片机开始,我个人对STM32单片机还是情有独钟的。可以上淘宝买一套STM32单片机开发板,选择那种案例和项目比较多的套餐。然后按照开发板的实验开发指南完成每一个例子,基础上就可以入门了。除此之外,还要在网上多找一些项目来做,比如循迹小车项目、温湿度无线监控项目、四轴飞行器项目,先从模仿开始。

2.2 中级篇

开始学习嵌入式操作系统。从比较流行和商业用比较多的μC/OS-II和FreeRTOS开始学起,熟悉嵌入式操作系统的基本概念原理、嵌入式系统移植和裁剪、嵌入式图形界面编程。

2.3 高级篇

学习更高级别Linux操作系统,熟悉Linux shell命令、Linux应用编程和Linux驱动开发,有条件可以在搞一套Android开发板学习Linux底层的驱动开发。自己也可以在网上找找需求订单,自己设计电路和开发产品。

2.4 高高级篇

本人才疏学浅,自己也在学习研究和探索中,欢迎大牛来指点。


总结

只要有兴趣和恒心,勤于练习和实践,随时调整方法和思维,我们都是可以实现自己的目标的!



到此,以上就是小编对于嵌入式linux培训的问题就介绍到这了,希望介绍关于嵌入式linux培训的5点解答对大家有用。