2023-05-29 19:53来源:m.sf1369.com作者:宇宇
我想从事嵌入式开发,请问底层开发和应用层开发都包括什么内容,哪个比较难,从事哪个方面比较好呢。
底层开发时写驱动什么的,应用开发时在已有的api上做一些程式,难度显然是底层开发难一些,因为要对硬体有了解,做应用的话想对简单,能呼叫api就行了
嵌入式开发和JAVA 选哪个学习比较好
这种问题的意义不大,二者都有广阔的前景,都有很多岗位需求,关键是要学透、学扎实,能够真正做出合格的程式,能够达到企业的用人标准。
从事嵌入式和Java开发到底哪个前景比较好点呢?
JAVA就业前景分析:
Java发展方向大致分为两类:
成为管理人员,例如产品研发经理,技术经理,专案经理等
继续他的技术工作之路,成为高阶软体工程师、需求工程师等。
从Java的应用领域来分,Java语言的应用方向主要表现在以下三个方面:首先是大中型的商业应用;其次是桌面应用,就是常说的C/S应用;再次是移动领域应用。综上而言JAVA就业方向为:可以从事JSP网站开发、Java程式设计、Java游戏开发、Java桌面程式设计,以及其他与Java语言程式设计相关的工作。可进入电信、银行、保险专业软体开发公司等从事软体设计和开发工作。
嵌入式就业
硬体方向,对硬体比较了解,有一定的硬体功底,主要是搞硬体设计,有时要开发一些与硬体关系最密切的最底层软体,如BootLoader、 Board
Support Package(像PC的BIOS一样,往下驱动硬体,往上支援作业系统),最初级的硬体驱动程式等。
软体方向的开发,这占社会需求的主要方面,主要从事嵌入式作业系统和应用软体的开发。完成嵌入式培训后,可以从事消费电子、安全安防、汽车电子、医疗电子、电信等行业的计算机应用设计开发岗位就业,担任嵌入式产品及应用系统的设计与开发工程师,从事嵌入式技术的应用专案设计开发、产品维护与技术服务等工作。
1、嵌入式应用开发,应该就是你说的嵌入式开发,即c++或android等精通一门面向对象语言。
2、嵌入式内核移植,底层驱动开发,会看懂一些数字电路,能写一些简单的汇编语言,精通c语言,了解arm的基本架构,linux内核了解越深越好,会编写驱动
3、嵌入式硬件开发,即芯片的外围电路设计
以上三者合起来再加上芯片就是一个嵌入式完整运行的系统,应用开发入门门槛较低,内核和驱动还好,硬件开发应该是最难的吧
一般都是学前两个,最后那个硬件开发主要是研究生学历以上的人在搞。
所以推荐你学后面两个之一
如果你的基础好的话,可以买块开发板学,一般都会送教程光盘的。
如果你觉得基础薄弱的话,去报个班吧,报班也只是让你入门,以后发展还是要靠自己。
对口的工作多了去了,就看你本事!
首先你没有列举你学过的内容,我就大致说一下!
嵌入式开发,我们做技术的,分为嵌入式硬件开发,嵌入式软件开发。嵌入式软件开发又分为嵌入式系统软件的开发和嵌入式应用软件的开发!对于嵌入式应用软件的开发,一般情况下是纯软件专业的学生做的,他们不需要对硬件了解,只要代码效率(时间及空间)高,就可以做应用软件的开发了!我本人认为(可能有点偏),嵌入式应用软件的开发体现不出我们学嵌入式的优势(我们的优势是,即懂软件又懂硬件)。
对于硬件和系统软件的开发,做硬件的还需要懂一些C语言或这种体系机构下的汇编语言,他们要做一些最最底层的驱动可能。嵌入式系统软件的开发,需要能看懂硬件电路图,在硬件环境的基础上,做出系统软件的开发。因为本人学习知识面很有限(自学的),所以只了解嵌入式系统软件的开发流程,在此大致说一下:一般是系统移植,包括bootloader、操作系统、文件系统的移植。驱动开发,包括裸机驱动开发及带操作系统的驱动开发。
言归正传,如果你学习了这些内容,其实公司里面也就是做这些东西!一般大型公司,都是有这样的需求的,不管是电子消费类产品的开发还是工业控制类的开发或是电气设备的开发!现在好多设备,都向着数字化转变,所以这些都将成为嵌入式产品,所以嵌入式前途一片光明!!!
你应该是刚上大学不久吧,先不要管这些,一定要把基础打的扎扎实实,千万不能好高骛远!这才是最重要的!
嵌入式开发
嵌入式系统指的是以应用为中心、以计算机技术为基础、软硬件可裁剪、适用于应用系统,对功能、可靠性、成本、体积、功耗等方面特殊严格要求的专用计算机系统。
嵌入式系统的特点:
1.系统内核小。
2.专用性强。
3.系统精简。
4.高实时性的系统软件(OS)是嵌入式软件的基本要求。
5.嵌入式软件开发要想走向标准化,就必须使用多任务的操作系统。
6.嵌入式系统开发需要开发工具和环境。
嵌入式系统(Embedded system),是一种“完全嵌入受控器件内部,为特定应用而设计的专用计算机系统”,根据英国电器工程师协会( U.K. Institution of
Electrical Engineer)的定义,嵌入式系统为控制、监视或辅助设备、机器或用于工厂运作的设备。与个人计算机这样的通用计算机系统不同,嵌入式系统通常执行的是带有特定要求的预先定义的任务。由于嵌入式系统只针对一项特殊的任务,设计人员能够对它进行优化,减小尺寸降低成本。由于嵌入式系统通常进行大量生产。所以单个的成本节约,能够随着产量进行成百上千的放大。[1]
嵌入式系统的核心是由一个或几个预先编程好以用来执行少数几项任务的微处理器或者单片机组成。与通用计算机能够运行用户选择的软件不同,嵌入式系统上的软件通常是暂时不变的;所以经常称为“固件”。[2]
国内普遍认同的嵌入式系统定义为:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。[3]
嵌入式系统是面向用户、面向产品、面向应用的,它必须与具体应用相结合才会具有生命力、才更具有优势。因此可以这样理解上述三个面向的含义,即嵌入式系统是与应用紧密结合的,它具有很强的专用性,必须结合实际系统需求进行合理的裁减利用。
◆嵌入式系统是将先进的计算机技术、半导体技术和电子技术和各个行业的具体应用相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。所以,介入嵌入式系统行业,必须有一个正确的定位。例如Palm之所以在PDA领域占有70%以上的市场,就是因为其立足于个人电子消费品,着重发展图形界面和多任务管理;而风河的Vxworks之所以在火星车上得以应用,则是因为其高实时性和高可靠性。
◆嵌入式系统必须根据应用需求对软硬件进行裁剪,满足应用系统的功能、可靠性、成本、体积等要求。所以,如果能建立相对通用的软硬件基础,然后在其上开发出适应各种需要的系统,是一个比较好的发展模式。目前的嵌入式系统的核心往往是一个只有几K到几十K微内核,需要根据实际的使用进行功能扩展或者裁减,但是由于微内核的存在,使得这种扩展能够非常顺利的进行。
实际上,嵌入式系统本身是一个外延极广的名词,凡是与产品结合在一起的具有嵌入式特点的控制系统都可以叫嵌入式系统,而且有时很难以给它下一个准确的定义。现在人们讲嵌入式系统时,某种程度上指近些年比较热的具有操作系统的嵌入式系统,本文在进行分析和展望时,也沿用这一观点。
一般而言,嵌入式系统的构架可以分成四个部分:处理器、存储器、输入输出(I/O)和软件(由于多数嵌入式设备的应用软件和操作系统都是紧密结合的,在这里我们对其不加区分,这也是嵌入式系统和一般的PC操作系统的最大区别)。[4]