专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > 嵌入开发

嵌入式开发形式,求前辈们分享看法和心得、

发布时间:2010-06-13 21:31:17 文章来源:www.iduyao.cn 采编人员:星星草
嵌入式开发模式,求前辈们分享看法和心得、、
    我是今年今年刚毕业的菜鸟,想往嵌入式发展,在校时只学过C语言,单片机、模电、数电自动控制等课程。本科是非科班出身的,现在的想自学嵌入式,目前正在就着天嵌TQ2440的开发板学习内核移植的东西。今天到一个做嵌入式产品的公司参观学习,是做交换机和路由器的,也跟他们请教了些嵌入式开发的一些问题。他们说现在的嵌入式开发的模式和从前不一样了,现在都是搭积木式的开发。卖芯片的人会提供驱动等一系列相应模块的源代码。除非他给的驱动出问题了才去debug,或者他给的源码不能满足自己要求才会去做相应的改进,如果有的功能模块没有也是先到网上下一些源码然后再整合进去。而且现在没有公司专门分做驱动,做系统,做应用,一般都是全做的,即一个工程师可以玩转整个产品,整个开发过程工程师们要做的更多的是前期的评估,中期的整合,和后期的测试等等。整个过程不需要嵌入式软件开发工程师写多少代码。
    而关于嵌入式的学习他们说基本上都是linux编程比较多,他们建议如果我要自学嵌入式的先看《linux程序设计》和《Unix环境高级编程》,然后如果想往驱动走的话再看《linux设备驱动程序》,往应用的话则要看从事什么行业,做什么产品。
    各位前辈们,望多多分享你们的看法和心得,给菜鸟一点指导。我真心的感谢今天和我分享这些东西的工程师们,我不是对他们的话持怀疑的态度才又在这里发帖的,我只是想更全面的了解一些,真心求指导啊、、、
------解决方案--------------------
作为有个多年开发经验的通信设备嵌入式开发人员我来说几句吧,我刚开始工作时第1年基本上是打杂,改改应用程序,做做一些手工测试。从第2年开始正式接触到完整的嵌入式系统(非Linux),而这个系统BSP基本上不需要更改,解决方案提供商已经提供了现成的demo,我们唯一需要做的只是在上层改应用程序,虽然只是更改没有编多少代码,不过阅读的代码量可就大了许多,也正是通过这个项目接触到嵌入式系统的方方面:bootloader,RTOS,driver,TCP/IP Stack。第3年才又回到嵌入式Linux,也是先从应用层开始,慢慢深入到kernel,改driver, 改bootloader,优化协议栈,netfilter防火墙,到目前自己能独立编写driver,基本上从应用层到内核都能独当一面。感觉个人的发展也要看机遇和公司环境,国内的公司基本上都买现成的解决方案来做二次开发,所谓的解决方案就是Turnkey Solution,包含从bootloader,kernel,driver到application,WEB UI都给你做好了,而所谓的设备商只需要拿过来做做定制,改改UI换下logo把产品包装一下就卖出去。外企普遍要好一些,Intel,qualcomm,WindRiver,Fujitu,EMC什么的,做的东西还是有技术含量的,可以接触到核心的东西。当然不同的公司对业务层面的偏重不一样,通信设备商偏重于各类协议,通信知识,要求对协议栈的了解比较深刻。而像EMC这种存储厂商偏重于存储,要求熟悉Filesystem。不管什么厂商,只要他要求嵌入式Linux开发人员,对kernel有深入了解的人都是他们prefer的。所以,我的建议是先application后kernel,只有对应用层编程熟练后,再进入kernel才能水到渠成易于理解,反过来对kernel的理解也会帮助你更好的写应用层程序。
------解决方案--------------------
引用:
作为有个多年开发经验的通信设备嵌入式开发人员我来说几句吧,我刚开始工作时第1年基本上是打杂,改改应用程序,做做一些手工测试。从第2年开始正式接触到完整的嵌入式系统(非Linux),而这个系统BSP基本上不需要更改,解决方案提供商已经提供了现成的demo,我们唯一需要做的只是在上层改应用程序,虽然只是更改没有编多少代码,不过阅读的代码量可就大了许多,也正是通过这个项目接触到……


确实,从应用开始相对简单点,但是觉得自己有实力的话也可以直接上驱动的。只是大部分公司一般招驱动不考虑应届生的。
LZ已经买了一块板,可以好好玩下那块板,要是真的玩通了,那你已经达到一定水平了。
------解决方案--------------------
说道好的学习方法还真没什么好说的,大家都是经过高等教育的了,应该有自己的一套适合自己的自学方式,有的人喜欢深入一个点再慢慢扩展开,有的人喜欢广泛涉猎最后找准自己的专注点。而嵌入式这个行业包括的范围比较广:从日常用的智能手机,无线路由器、机顶盒到电信级的网络设备都会设计到嵌入式开发,而嵌入式开发的特点决定了他的特殊性,总是针对某一领域进行定制开发,所以我认为最好的学习方法就是在实践中去提高。对于应届生来说也就是先找一家嵌入式开发的公司在工作中不断地学习,我不太推荐以自学的方式去学习嵌入式,一方面是因为找不准自己的方向(有块开发板你想往哪方面学习呢,特别是现在的开发板功能比较全,相当于一个小型的计算机系统了,随便哪方面都有得学),容易产生挫败感;另一方面是嵌入式对经验的要求比较高,有些技能如果只是自己专研不容易掌握,在公司的环境中可以利用现有硬件资源,即使遇到问题也可以找人请教交流(如果能认识嵌入式公司的牛人那是最好的了,我至今仍保留着我第一家公司【台企】的架构师的MSN联系方式,有时候遇到一些疑问就去和他讨论),另外工业界的很多方式方法是通用的,只有在公司里你才能接触到比较正规的开发流程和方法。所以我强烈推荐你挤破脑袋都要先找家行业内的公司呆着,先慢慢积累工作经验再图后续发展。
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: