今天去一个公司面试:出了这样一个题:
嵌入式软件开发应该注意问题??
我不是搞嵌入式的,
请教大侠解释一下!!!
嵌入式的设备一般都要求功耗,存储系统比较小。对实时要求比较高,在就是体积不知道答的对不,高手指点下
楼上说的差不多了......很多情况下和外围设备时钟、时序如何匹配达到最高效率 也是比较重要的
嵌入式软件,个人觉得,首先,软件的可靠性是很重要的,因为每一个嵌入式软件都是放在一个无限循环里的,要想保证开发出来的产品能够长期稳定工作,那么,嵌入式软件就必须可靠;其次,代码的高效率性:从产品的价格方面考虑,嵌入式的硬件资源一般都很紧张的,如内存小,主频低,所以要求嵌入式软件必须高效;再次,对于一个嵌入式软件工程师来说,代码的可移植性和可维护性是很重要的,可移植性好,可以节约公司的研发成本,可维护性好,可以减少后期软件维护的投入,节约人力成本。移植性可以从代码模块化和合理使用预编译(如合理使用#define)来考虑,维护性可以从多写注释,写好注释,形成良好的编程风格(如良好的代码编写格式,变量的命名等)等方面来考虑。
这样说得有点抽象,如果想要深入了解,可以给我发邮件,rykn112@163.com.
由于是刚刚进这个论坛,博客上还没有好的文章出来,不过以后肯定会写一些东西来同大家一起分享的。希望大家以后多多捧场。
嵌入式软件,个人觉得,首先,软件的可靠性是很重要的,因为每一个嵌入式软件都是放在一个无限循环里的,要想保证开发出来的产品能够长期稳定工作,那么,嵌入式软件就必须可靠;其次,代码的高效率性:从产品的价格方面考虑,嵌入式的硬件资源一般都很紧张的,如内存小,主频低,所以要求嵌入式软件必须高效;再次,对于一个嵌入式软件工程师来说,代码的可移植性和可维护性是很重要的,可移植性好,可以节约公司的研发成本,可维护性好,可以减少后期软件维护的投入,节约人力成本。移植性可以从代码模块化和合理使用预编译(如合理使用#define)来考虑,维护性可以从多写注释,写好注释,形成良好的编程风格(如良好的代码编写格式,变量的命名等)等方面来考虑。
这样说得有点抽象,如果想要深入了解,可以给我发邮件,rykn112@163.com.
由于是刚刚进这个论坛,博客上还没有好的文章出来,不过以后肯定会写一些东西来同大家一起分享的。希望大家以后多多捧场。
楼上说的很好,嵌入式好多都是要和硬件打交道,比如寄存器什么的,所以高效.可种植性,这些都比较重要,
楼上说的很好,嵌入式好多都是要和硬件打交道,比如寄存器什么的,所以高效.可种植性,这些都比较重要,
这个问题本来就是个没有标准答案的问题,内容很多,考你的目的就是看你能知道多少
引用: 引用 1 楼 ffeige1984 的回复:
嵌入式的设备一般都要求功耗,存储系统比较小。对实时要求比较高,在就是体积不知道答的对不,高手指点下
说的很好。
其实,大部分这种问题连考官自己都不一定能回答好。
我以前面试别人的时候,也会偶尔问些这样的问题,但我从来不去考虑他回答的结果,就像虽然我们有笔试,但我从来不看他们考得怎么样,因为,说句实话,那些考题我自己都不一定能做及格,何必要求别人呢。再说了,编程是实践,不是在研究算法,当然算法很重要,但不是最重要的。
我最看重一个人的是人品,其次是能力
我说一下感觉吧.首先得保证内存的使用合理,因为内存的大小有限,其次是执行效率的优化.以及稳定性的需求.另外很重要的一点一定要考虑执行现场的不同.可能在你的工作室当中软件能运行得很好,但是在实际的现场就不好了.
引用: 引用 4 楼 rykn112 的回复:
嵌入式软件,个人觉得,首先,软件的可靠性是很重要的,因为每一个嵌入式软件都是放在一个无限循环里的,要想保证开发出来的产品能够长期稳定工作,那么,嵌入式软件就必须可靠;其次,代码的高效率性:从产品的价格方面考虑,嵌入式的硬件资源一般都很紧张的,如内存小,主频低,所以要求嵌入式软件必须高效;再次,对于一个嵌入式软件工程师来说,代码的可移植性和可维护性是很重要的,可移植性好,可以节约公司的研发成本,…
期待,我现在感觉这些太重要了。
不同的嵌入式系统的要求也不一样,民用手持式设备一般要求功耗、资源、效率和成本,工业和军用产品注重可靠性,代码的模块性、可移植性和可维护性在各个方面都比较重要