﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>IT博客-卧龙  起飞梦想-文章分类-ARM</title><link>http://www.cnitblog.com/lincoln925/category/2233.html</link><description>因为梦想而执着</description><language>zh-cn</language><lastBuildDate>Mon, 03 Oct 2011 21:43:08 GMT</lastBuildDate><pubDate>Mon, 03 Oct 2011 21:43:08 GMT</pubDate><ttl>60</ttl><item><title>转贴： 我的嵌入式之路</title><link>http://www.cnitblog.com/lincoln925/articles/8101.html</link><dc:creator>卧龙</dc:creator><author>卧龙</author><pubDate>Sun, 26 Mar 2006 05:56:00 GMT</pubDate><guid>http://www.cnitblog.com/lincoln925/articles/8101.html</guid><wfw:comment>http://www.cnitblog.com/lincoln925/comments/8101.html</wfw:comment><comments>http://www.cnitblog.com/lincoln925/articles/8101.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/lincoln925/comments/commentRss/8101.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/lincoln925/services/trackbacks/8101.html</trackback:ping><description><![CDATA[我的嵌入式之路<br />myemail@embeded.cn<br />前言 
<p></p><p>这个题目很大，给人一种感觉我好像很成功，其实不然。实际上自己水平不高，甚至很低，但是做过了一些曲折的学习道路，同时把自己真实的学习历程表达出来，希望对后来者有借鉴的意义，甚幸！</p><p>工作三年、几成废人！</p><p>我2000年毕业于华中地区的一个理工科大学，专业是机械电子，我当时已经签了一家内陆某个省级机关工作，家里八辈是农民，并且很偏远，能够进入这样的地方是祖坟有风水。但在毕业前夕有个进入it的机会，我本想进去的，家里人极力反对，阻力可想而知。同时要交4000元的违约金，对我来说是天文数字。大学里的费用很多是借的，几乎将近一半的费用是在大学勤工俭学挣的，为了省钱，高中一个学期回家一次，大学一年回去一次。并且我个人也有特殊的人生背景（悲景更确切），这里不多说了，写十篇也写不完，同时偏离主题。这样我就参加了工作。一张报纸一杯茶的日子，几乎下班后有种很空虚和恐慌的感觉。在工作中虽然是与自己专业有点关系，但是很少。专业几乎荒废。我自己也思考，如果再不出去，自己将会成废人，只好让国家养了。两年后决定出去，但是几成废人，谁要呢，只好到学校去镀金。这是中国教育和社会的悲哀！<br />至于专业就改为计算机方面，听说好找工作，我说实话不是很对计算机特别感兴趣，生存第一需要。不要笑我，哈哈！<br />考研成绩出来，超过了国家线几十分。那个方向要两个，我第三，但是那年非碘，不面试就按分数来排，自然我落选了。其实给我面试机会也不一定要我，哈哈，自己几斤几两很清楚。<br />最后调剂到另外一个学校，交钱，咬咬牙，交吧！现在仍然债台高筑！</p><p><br />进入学校前夕</p><p>为什么要把这段列出，看后就知道了。<br />单位有网络，经常上网查些英语资料，在那里唯独英语没有丢很多。于是我就在网上查资料，学什么好呢，最后确定学嵌入式把，听说跟硬件相对比较紧密！而我在大学里多少学习了数字电路，单片机等，所以多少也有所利用，不会真的一无所知。当然在这之前也自学过数据结构，计算机组成原理等。C 语言在大学就学了。哈哈这就是我的家底。<br />我知道自己的基础差，于是我就拿操作系统，数据库、数据结构、c++来看，机关有这个好处，空余时间多，于是平常就看书，很痛苦，没有人请教。<br />另外就上网到论坛上去，我就到各个专业的技术论坛，其实是电子论坛和嵌入式论坛。我几乎没有发帖，几乎把几个大型的出名的论坛的帖子翻遍了，虽然有很多重复的，我才知道嵌入式是个什么东东。这些帖子对我以后的学习产生了极大的影响。<br />最关键两点：1、嵌入式是什么？<br />2、嵌入式需要哪些知识？<br />知道了这两点，好办！我就开始规划学习路线。计算机的基本理论不能丢，于是重点看组成原理，数据机构，操作系统、c++。同时论坛上了解到，实时操作系统ucos是一个很好的嵌入式操作系统，对初学者很好。于是我就买了一本书，但是代码在电脑里调不通，网上也有很多相同的问题，我就看书，分析代码，一遍不行就两遍，三遍，这样才看了入了门，才知道什么是进程。原来看操作系统书时，根本就不知道进程是个什么东西。<br />在这段时间掌握的东西不多，但是，对我以后的影响很大，我想起了大学时一个同学跟我说过了一句话：大学里最重要的不是学到了什么，最重要的是学会怎么学！大概是这个意思。</p><p>进入我的避难所</p><p>对我来讲，再次进入大学不再是大学，而是避难所。希望这次进入给我喘气和养精蓄锐的机会和时间。我是这样认为和实践的。<br />在学校我有三件事：上课，上图书馆，上网。<br />对于上课，学校开了很多课程，非常好，很多是名人名师讲解，于是很多同学都想学，都去听。我也考虑过，最后放弃。我是这样认为的，时间是有限的，什么都想学，什么都学不成。于是我把我自己学的课进行了分化，一般的课程通过就行，重要的一定好好学。我希望不要什么争论学习课程多和少的问题，这仅仅是我的看法。所以我的成绩应该是很差的。分数低。好在后来的单位没有要我的成绩单，否则就惨了。<br />我个人感觉是上图书馆的效率比在寝室里高多了，这是我的经验。<br />上网，我给自己定了规矩：不玩游戏，不灌水，少看电影！因为时间对我来说太少和宝贵了，我没有资格和资本来浪费这些。上网我就在几个重要的专业技术网站上逛，下载技术资料。我一个朋友最近开了一个嵌入式网站，www.embeded.cn 里面的资料相当一部分是我在网上找的资料。那个网站很不错，资料丰富，找嵌入式方面，特别是嵌入式linux的资料，异常丰富。<br />有人会问，您下了那么多资料，怎么看的完和消化的了呢？<br />我是这样对待这个问题的：<br />1、 网上资料比较零散，不系统，但是如果把差不多的东西收集起来看就相对完整了，（嵌入式的图书就是这两年特别多，特别是2004年，简直是向外涌！2003年想买本嵌入式，特别是嵌入式linux的不多。）<br />2、 对于像我这种入门的来说，很多看不懂，没关系，反复看，我个人对学习方法的一个总结是：重复是最好的老师！<br />3、 即使有的用不上，也可以收集以后用的上时查阅。<br />但是我并非什么都要，目前我的技术路线是嵌入式linux，所以像wince之类基本上不<br />收集。<br />总之，我在学校里我充分利用时间来学习，我看到一些同学整天的挂在网上打游戏，发<br />些无关痛痒的帖子，浪费时间呀！我真的很痛心！</p><p>学习嵌入式<br />在这里我把它单独列出，文章有点紊乱，但是内容希望有益。<br />1、学习linux<br />根据我在论坛的了解，我选择学习嵌入式linux，刚好我们学校也重视嵌入式linux，从实验室到课程安排都是关于嵌入式linux方面，天时地利！这里我把学习linux的经验和教训说说。<br />可以这样说，在论坛里说道学习linux差不多就学习linux内核。于是我电脑里安装了linux就开始看linux内核方面的书了。我记得来学校以前就买到一本陈莉君的讲linux内核的第一版，现在有第二版了。我就开始看那本说，大家说linux内核情景分析不错，我就买了上下册，后来又买了 《深入理解linux内核》，最后也买了毛德操的《嵌入式系统》也是分析linux内核代码的，主要讲arm相关的。<br />看内核期间是个非常痛苦的过程，看情景分析有种在森林中找出路，其间我组织了一些同学学习内核，几乎没有几个能坚持下来的。我认为我是坚持下来了。情景分析在看第一、第二遍是几乎没有摸到门道，我分析有三个方面的原因：1、自己的基础差，这是最关键的。2、内核本身很难。3、没有交流和高人指点。到了第三遍时我才摸到门，才差不多知道个linux的大概脉络，很多细节也是稀里糊涂。<br />学习linux总结，这里声明一下，我指的嵌入式主要是偏向软件的嵌入式。学习嵌入式的重点和难点关键在操作系统，如果没有掌握操作系统，我认为很难把握一个嵌入式系统。即使在做嵌入式开发中，作应有层的开发几乎可以不知道操作系统也可以开发，我认为那是浮在表面的。很难深入和提高自己的层次。声明：一孔之见！不可深究！<br />在学习linux内核过程中犯了一个极其严重路线错误：对linux几乎不懂就开始学习内核。我个人推荐一个学习路线是：使用linux—〉linxu系统编程开发---〉驱动开发和分析linux内核。而我差不多相反，实际上你不会使用linux也可以学习内核，但是如果你懂了这些东西学习更有效率。<br />关于要不要学习内核的问题，我的回答如下：不一定。如果你是喜欢钻研的那你进入内核会满足你的欲望。同时对你以后的嵌入式系统的开发有很好的影响。如果你想从事嵌入式linux系统开发，最好对内核有所了解。如果仅仅是做应用开发没有必要。我打个比喻：c、c++、java等语言是武林中的某个武林派别的话，如什么拳法，什么刀法等，那么linux 内核应该是一个人的内功的反应。<br />怎么开始学linux内核：最好有三件宝物：《深入理解linux内核》《情景分析》和源代码。<br />先看《深》，那主要讲原理，好像市场上有本讲原理性并且更浅，《linux内核设计与实现》听说不错。如果没有学习操作系统的，像我这样的，最好先看看操作系统原理的书。看了几遍后，就看情景分析，最好对着《深》看。两本交叉看，《深》是纲，《情》是目。最后深入代码。<br />2、学习嵌入式linux<br />学习嵌入式，我认为两个重点，cpu和操作系统，目前市场是比较流行arm，所以推荐大家学习arm。操作系统很多，我个人对开始学习的人，特别不是计算机专业的，推荐学习ucos。那是开源的，同时很小。学习很好。为什么选linux，我不想讲太多，网上这方面的太多，但是我在工作中发现，做linux的技术路线很难，在windows几乎不会有的问题，在linux开发中几乎遍地陷阱。一掉进去划很长时间出来，一旦解决自己又长进了！相对来说开发周期长，难度大。现在资料也逐渐丰富起来，难度也降低了些！<br />至于怎么学习，这是他的特色地方，必须有块开发板，我是同学里最早买学习板的，虽然化钱，我认为值。对我实习和工作产生了很大的影响。<br />如果没有开发板，那是纸上谈兵。有人说，那要1000-2000亚，的确是，兄弟，看长远的，对您的职业和发展那点钱不算什么！有的人说我站着说话不腰痛，好吧，钱这东西对我影响很大，我在大学里扫厕所，扫的不错，奖5元/月。兄弟你有过吗？我认为教育投资是效益最有保障的！我实习拿3k，很多同学拿1-2k，当然比我高的也有。虽然我现在没有毕业，但一家公司就签了。从事目前流行的高档的消费电子的研发。对于我两年前一无所知的我，应该有质的变化，我感谢学校收了我这个废品。当然我也非常的努力。说这么多并不是要炫耀我什么，实际上根本不值得炫耀，虽然现在工作环境和待遇比较满意，但是，我发现我很差，特别是代码能力，我希望平常大家少玩游戏，多编程。编程才是硬道理！<br />3、 学习板和培训<br />你可以不接受培训，但是不能不买开发板。如果你想学习嵌入式一定要买块学习板，最好买块arm9的，贵些也值。可以跑高级操作系统。这个不要什么品牌公司的，一般不会出什么问题，市场上的板子一般是三星的2410，基本上是抄的。如果是做产品那要注意些。一般的公司一般要2000，加lcd要3000甚至更多。我接触到有的板只要1200，加lcd也就2000，差别比较大，我认为学习都够啦。<br />对于培训，如果有条件最好参加，主要是嵌入式相对别的不同，自己摸索很费时，如果有高手指点非常的好，进步快。特别是认识做这些的朋友。我接受过培训，认识个朋友。在以后的工作中帮我很多，在这里谢谢他！我记得哈佛的一个MBA的学生这样说，大意是：在哈佛学到什么不重要，最重要的是这些未来各大公司的高级管理人员是我的同学！真是有远见！<br />目前市场是培训比较贵，一个星期两三千，真正算起来也要，那些讲师待遇绝对不会低。但是有个致命的问题是连续上课，一连几天，效果不佳。我希望社会上多出些1000元左右，并且时间长些，如一个月，一周一到两次课。如果没人做，我来做，哈哈！</p><p>没有想到，一下写了这么多，其实还想写的，比如在中科院的一位老兄是怎样学习linux内核和看书的，真的很感动。他的为人我很钦佩。也想介绍毛德操的《嵌入式系统》那本书，对学习arm linux的很好，也想介绍实习和工作的东西，太长了，耽误大家时间。我也不想检查里面的错别字了，很多！就写到这里吧。</p><p>耽误大家时间了，对不起！可以联系我：myemail@embeded.cn</p><img src ="http://www.cnitblog.com/lincoln925/aggbug/8101.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/lincoln925/" target="_blank">卧龙</a> 2006-03-26 13:56 <a href="http://www.cnitblog.com/lincoln925/articles/8101.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>搞嵌入式系统的三层境界</title><link>http://www.cnitblog.com/lincoln925/articles/8100.html</link><dc:creator>卧龙</dc:creator><author>卧龙</author><pubDate>Sun, 26 Mar 2006 05:54:00 GMT</pubDate><guid>http://www.cnitblog.com/lincoln925/articles/8100.html</guid><wfw:comment>http://www.cnitblog.com/lincoln925/comments/8100.html</wfw:comment><comments>http://www.cnitblog.com/lincoln925/articles/8100.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/lincoln925/comments/commentRss/8100.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/lincoln925/services/trackbacks/8100.html</trackback:ping><description><![CDATA[
		<p>
				<img src="http://www.embeder.com/bbs/image/posticon/icon3.gif" />
				<b>搞嵌入式系统的三层境界</b>
				<br />
				<br />
		</p>
		<p>
		</p>
		<p>在第一层时的表现是热衷学习和使用新的技术，但都限于局部，比如新的CPU,可编程技术，网络，有线无线，各种嵌入式操作系统，各种总线，甚至于新的存储器件。应该说第一阶段对以后的发展很有作用，所以尽管向追星一样追随各种新鲜技术吧，保持自己的热血沸腾和对知识的渴望最重要。其中我认为CPU和嵌入式操作系统是一个现代嵌入式系统开发人员（注意，是系统开发人员，而不是硬件设计和软件设计）应该深入理解的，硬件出身的人多接触软件思想更应该是嵌入式系统开发的趋势。</p>
		<p>经过第一层的洗礼，如果你还对嵌入式系统热情不减，你可能自然走进第二层，此时，以前热衷过的技术都被抽象了，面对新的CPU或OS，你只需看看他的新特性就知道他是否会给你的系统带来更多的好处，从而决定你是否使用它，各种总线也只是转化成带宽等各种指标，总之，每个部分在系统中的作用和影响已经烂熟于心，所以能达到取舍自如。</p>
		<p>第二层到第三层的转变应该不是简单的时间累计，而是取决一个人对系统深入的思考和理解，此时可能对你的挑战更多来自于对需求的理解和实现规划，以及对系统的创意。随后便只是如上了流水线一样的规格设计，软硬件分工与协同设计，完整的测试。现在的系统在你眼中更像一个自己创造的生机勃勃的生命，CPU像大脑一样有条不紊的调度，电源如心脏一般向系统传递能量，每个模块的功耗都是如此恰到好处，数据流似血液一样在系统中流动。此时你可以享受追求技术给人生带来的愉悦了吧。<br /><br /></p>
<img src ="http://www.cnitblog.com/lincoln925/aggbug/8100.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/lincoln925/" target="_blank">卧龙</a> 2006-03-26 13:54 <a href="http://www.cnitblog.com/lincoln925/articles/8100.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>