三九宝宝网宝宝百科宝宝知识

应该怎样学好linux嵌入式怎样入门

03月27日 编辑 39baobao.com

[Digi推出业内最小Linux嵌入式设备服务器]Digi International今天推出了带有Digi嵌入式Linux操作系统的Digi Connect ME 9210.Digi嵌入式Linux操作系统是基于Digi嵌入式模块和微控制器而开发的最新版的Linux操作系统...+阅读

嵌入式Linux操作系统学习规划ARM+LINUX路线,主攻嵌入式Linux操作系统及其上应用软件开发目标:

(1) 掌握主流嵌入式微处理器的结构与原理(初步定为arm9) (2) 必须掌握一个嵌入式操作系统 (初步定为uclinux或linux,版本待定)

(3) 必须熟悉嵌入式软件开发流程并至少做一个嵌入式软件项目。 从事嵌入式软件开发的好处是:

(1)目前国内外这方面的人都很稀缺。这一领域入门门槛较高,所以非专业IT人员很难切入这一领域;另一方面,是因为这一领域较新,目前发展太快,大多数人无条件接触。

(2)与企业计算等应用软件不同,嵌入式领域人才的工作强度通常低一些(但收入不低)。

(3)哪天若想创业,搞自已的产品,嵌入式不像应用软件那样容易被盗版。硬件设计一般都是请其它公司给订做(这叫“贴牌”:OEM),都是通用的硬件,我们只管设计软件就变成自己的产品了。

(4)兴趣所在,这是最主要的。 从事嵌入式软件开发的缺点是:

(1)入门起点较高,所用到的技术往往都有一定难度,若软硬件基础不好,特别是操作系统级软件功底不深,则可能不适于此行。

(2)这方面的企业数量要远少于企业计算类企业。

(3)有少数公司经常要硕士以上的人搞嵌入式,主要是基于嵌入式的难度。但大多数公司也并无此要求,只要有经验即可。

(4)平台依托强,换平台比较辛苦。 兴趣的由来:

1、成功观念不同,不虚度此生,就是我的成功。

2、喜欢思考,挑战逻辑思维。

3、喜欢C C是一种能发挥思维极限的语言。关于C的精神的一些方面可以被概述成短句如下: 相信程序员。 不要阻止程序员做那些需要去做的。 保持语言短小精干。 一种方法做一个操作。 使得它运行的够快,尽管它并不能保证将是可移植的。

4、喜欢底层开发,讨厌vb类开发工具(并不是说vb不好)。

5、发展前景好,适合创业,不想自己要死了的时候还是一个工程师。 方法步骤:

1、基础知识: 目的:能看懂硬件工作原理,但重点在嵌入式软件,特别是操作系统级软件,那将是我的优势。 科目:数字电路、计算机组成原理、嵌入式微处理器结构。 汇编语言、C/C++、编译原理、离散数学。 数据结构和算法、操作系统、软件工程、网络、数据库。 方法:虽科目众多,但都是较简单的基础,且大部分已掌握。不一定全学,可根据需要选修。 主攻书籍:the c++ programming language

(一直没时间读)、数据结构-C2。

2、学习linux: 目的:深入掌握linux系统。 方法:使用linux—〉linxu系统编程开发—〉驱动开发和分析linux内核。先看深,那主讲原理。看几遍后,看情景分析,对照深看,两本交叉,深是纲,情是目。剖析则是0.11版,适合学习。最后深入代码。 主攻书籍:linux内核完全剖析、unix环境高级编程、深入理解linux内核、情景分析和源代。

3、学习嵌入式linux: 目的:掌握嵌入式处理器其及系统。 方法:

(1)嵌入式微处理器结构与应用:直接arm原理及汇编即可,不要重复x86。 (2)嵌入式操作系统类:ucOS/II简单,开源,可供入门。而后深入研究uClinux。 (3)必须有块开发板(arm9以上),有条件可参加培训(进步快,能认识些朋友)。 主攻书籍:毛德操的《嵌入式系统》及其他arm9手册与arm汇编指令等。

4、深入学习: A、数字图像压缩技术:主要是应掌握MPEG、mp3等编解码算法和技术。 B、通信协议及编程技术:TCP/IP协议、802.11,Bluetooth,GPRS、GSM、CDMA等。 28-21 16:46 回复 122.90.173.* 2楼 C、网络与信息安全技术:如加密技术,数字证书CA等。 D、DSP技术:Digital Signal Process,DSP处理器通过硬件实现数字信号处理算法。 说明:太多细节未说明,可根据实际情况调整。重点在于

1、3,不必完全按照顺序作。对于学习c++,理由是c++不只是一种语言,一种工具,她还是一种艺术,一种文化,一种哲学理念、但不是拿来炫耀得东西。对于linux内核,学习编程,读一些优秀代码也是有必要的。 注意: 要学会举一反多,有强大的基础,很多东西简单看看就能会。想成为合格的程序员,前提是必须熟练至少一种编程语言,并具有良好的逻辑思维。一定要理论结合实践。 不要一味钻研技术,虽然挤出时间是很难做到的,但还是要留点余地去完善其他的爱好,比如宇宙,素描、机械、管理,心理学、游戏、科幻电影。还有一些不愿意做但必须要做的! 技术是通过编程编程在编程编出来的。永远不要梦想一步登天,不要做浮躁的人,不要觉得路途漫上。而是要编程编程在编程,完了在编程,在编程!等机会来了在创业(不要相信有奇迹发生,盲目创业很难成功,即便成功了发展空间也不一定很大)。 嵌入式书籍推荐 Linux基础

1、《Linux与Unix Shell 编程指南》 C语言基础

1、《C Primer Plus,5th Edition》【美】Stephen Prata着

2、《The C Programming Language, 2nd Edition》【美】Brian W. Kernighan David M. Rithie(K & R)着

3、《Advanced Programming in the UNIX Environment,2nd Edition》(APUE)

4、《嵌入式Linux应用程序开发详解》 Linux内核

1、《深入理解Linux内核》(第三版)

2、《Lin...

关于嵌入式linux系统的学习入门

我和你差不多,现在也在学习ARM ,不过我没有你那么着急的学Linux,我现在在学uCOS2,这个系统稍微简单些,代码少,可裁剪方式简单、可扩展性也强,是初学者学习实践和实际使用的最佳选择。当然,linux也是我的最终目标。我全部的时间都是在看代码,配上《计算机操作系统教程》的书,加上有时就简单的问题实践一下。对操作系统内部代码也没有太深刻的理解,只是在输入输出接口上下功夫。 谈谈我的体会帮自己总结一下,也许对你有帮助。 为实现一个嵌入了操作系统的ARM程序(主要针对uCOS2),首先要把操作系统代码拷入项目目录,改写bootloader,添加要使用设备的驱动,指定接口,指定存储器、指定复位状态,堆栈空间,配置中断等等。然后就是操作系统的设置过程。

修改操作系统配置文件,指定操作系统支持的最多事件数量、最大任务数、最大队列控制块数量、优先级范围等等,之后设置上述内容的处理过程,包括目标板初始化程序和异常中断处理程序。这样就把一个没有任何实际的操作系统配置好了。之后就是加入进程、邮箱、任务消息等内容的过程,在main中初始化上述过程。细节太多了。不过学习本身就是慢慢体会的过程,只有在学习的过程中才会有收获,才会有进步。鼓励一下正在学习中的人,Good study,day day up!!

零基础学习嵌入式linux

嵌入式零基础学习路线:(推荐你去了解嵌视科技qs-pte9开发板,感觉适合你) 1)学习 Linux系统安装、常用命令、应用程序安装。 2) 学习 Linux 下的 C 编程、这本书必学《UNIX 环境高级编程》、《UNIX 网络编程》,Rechard Stevens 写的,C 高手大都学习过《C 和指针》、《C 缺陷与陷阱》、《高质量C/C++编程指南》、《C 专家编程》、《The C programming Language》 3)程序员大都要学:数据结构,嵌入式程序员数据结构必学! 4)底层开发人员大都要学:微机原理、计算机体系结构,嵌入式开发人员必学! 5)单片机可以让一个从事软件开发的人了解和如何操作硬件,有必要学,因为一开始就从 ARM 入手,不太现实! 6)ARM 体系结构,其中有汇编。 7)数字电路有必要学习,不然你在做底层开发时真的会不知道怎么看原理图,起码也得懂与或门吧。

8)ARM + Linux 应用程序开发。(前提是要有开发板) 到此,你勉强算是在嵌入式Linux 这个行业有了初步入门了吧, 但遗憾的是这还远远不够! 9)要做底层开发,就必须知道软硬件之间是如何衔接和配合工作的,那么电子技术应该要好好学习了,很多时候会用到模拟电路知识,这是区别好手与菜鸟的不同之处之一。 10)Linux 下的汇编要学,这样你才能真正了解你写的程序是如何在一个特定的硬件上跑的。这是区别好手与菜鸟的不同之处之二。 11)TCP/IP 协议栈要学,所有的嵌入式高手都得掌握的东西,这是区别好手与菜鸟的不同之处之三。 12)有了这些东西,拿下 Linux 驱动已经不再话下,需要你去学习 Linux 内核源代码和Linux驱动程序设计,这是一个技术升华。 13)音频、视频的解码译码技术你得学。

14)各种 IC ,各种 bootloader 你能够参与其开发设计。 15)自行设计开发新产品,新技术。

嵌入式linux怎么学

你装一个linux系统。当然虚拟机就行。先学习标准C、然后学习linux的Unix C当然这种C很相似。就是函数不太一样。思想都是一样的。

上面两个网上都有教学视频。把网上的教学视频看完就差不多了。当然教程中要求练习的地方必须要动手做。只想大体思路是绝对不行的,这样学到的东西很不扎实。

这两个学习差不过了。就可以买一块开发板玩了。

如果你趋向于裸跑的程序,可以买一个arm7、arm9的板子,当然可以用cortex-m系列的也就是stm32系列的单片机开发板。裸跑和单片机没什么区别了。就是arm的cpu比单片机寄存器复杂一些。这就看你阅读cpu芯片手册的能力了。当然这个平台上也能跑一些系统比如uCOS就是个很好的实时操作系统。

如果你趋向于操作系统,你可以上cortex-a8 、a9系列的cpu了。这个需要学习的东西比较多。学习操作系统的启动代码必须要学。现在最流行的是u-boot。

然后学习一下系统移植方面的东西:

1、文件系统制作 。流行的软件是busybox

2、系统裁剪。这个你买的开发板都会带平台代码。也可以在.kernel.org上下载源码自己编译。

这个时候你就可以用u-boot(类似我们常见的主板bios)启动你的系统。加载你自己编译好的linux内核。系统就启动起来了。

最难学的是你要搞嵌入式系统的开发。基本要了解linux内核了。自己学的话需要在网上找一找相关教程看看。(这个我不知道有没有视频教程),没有的话要买一个《linux内核高级编程》学习。这本书太难啃了。

要学习带操作系统的嵌入式开发,还远不止我说的那些。还有库移植、makefile脚本也要学习。linux内核启动原理(启动过程加载那些文件、启动参数)。arm启动原理等等。

你可以边工作边学习,从事嵌入式周边行业的(嵌入式应用方面)所以可以学一学嵌入式的图形开发工具:QT,这个很有意思。然后慢慢的想嵌入式方向发展。这是一个漫长的过程。如果想速成也可以报班学习。

另外就是Unix c部分的网络编程很重要这个地方要学好。学好了也可以从事linux的网络协议栈相关工作。

以下为关联文档:

嵌入式Linux的图形用户接口GUI设计前言:操作系统从纯文本界面一路进展到光鲜亮丽的图形外表,其中包含了无数的设计师的创意,当然,也有许多截他人之长补自己之短的案例出现。在嵌入式系统方面,由于Linux已经是主流...

口语应该怎样入门1.要以大量的阅读和听力做基础。积累了词汇,掌握了句型,熟悉了用英语表达思想的方式,最重要的是培养了语感。 2.同时,练习英语口语也需要用多种办法:如大声朗读英语对话和文章,与...

Linux入门哪本书好推荐一本Linux入门书籍如果你是第一次接触Linux,并且没有任何计算机基础的话,我建议你还是从视频教程看起,我记得传智播客的Python系列中的第一个章节就是讲Linux的(Ubuntu),讲的简直是细致到家了,也许对...

嵌入式linux怎么学你装一个linux系统。当然虚拟机就行。先学习标准C、然后学习linux的Unix C当然这种C很相似。就是函数不太一样。思想都是一样的。 上面两个网上都有教学视频。把网上的教学...

怎样学习ARM9嵌入式Linux初学者开发板推荐买2440系列,比如友善公司的mini2440,性价比很高。 Linux一定要熟悉基本命令操作,装个Linux系统吧,推荐Ubuntu,适合新手。 因为嵌入式linux涉及的知识面很广,所以要看的...

应该怎样学好高中的英语很简单 首先 克服潜意识对这门学科的恐惧 英语很简单 我高中刚刚毕业 直到高三上学期毕业英语仍然100左右,下学期得到一老师指点,茅塞顿开 用了三个多月时间 考了135 虽然不是...

到底什么是嵌入式linux嵌入式Linux ( 英语: Embedded Linux )是一类嵌入式作业系统的概称,这类型的作业系统皆以Linux内核为基础,被设计来使用于嵌入式装置 。 这类作业系统被广泛地使用在行动电话 、...

嵌入式linux学习是什么意思啊嵌入式操作系统EOS(Embedded OperatingSystem)是一种用途广泛的系统软件,过去它主要应用于工业控制和国防系统领域。EOS负责嵌人系统的全部软、硬件资源的分配、调度工作,控制...

嵌入式linux和普通的linux区别详细在哪里1.什么是嵌入式Linux系统? 嵌入式Linux系统就是利用Linux其自身的许多特点,把它应用到嵌入式系统里。 Linux做嵌入式的优势,首先,Linux是开放源代码的,不存在黑箱技术,遍布全球的...

推荐阅读
图文推荐