TA的每日心情 | 开心 2019-11-19 15:19 |
|---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
; E4 f1 z+ b* Y$ i. ~5 G v/ g
7 U( T8 a: H- P! }一、嵌入式系统的分层与专业的分类9 a: A" Z: T- K% q
嵌入式系统分为4层,硬件层、驱动层、操作系统层和应用层。0 e" P2 }& c) |; L4 g @
! q+ y$ p5 o: x& T( i9 r& S
1.硬件层
. P& e: }# B: Y& g它是整个嵌入式系统的根本,如果现在单片机及接口这块很熟悉,并且能用C和汇编语言来编程的话,从嵌入式系统的硬件层走起来相对容易,硬件层也是驱动层的基础,一个优秀的驱动工程师是要能够看懂硬件的电路图和自行完成cpld的逻辑设计的,同时还要对操作系统内核及其调度性相当的熟悉的。但硬件平台是基础,增值还要靠软件。# g3 @" X0 t4 ~& w2 N' [6 m7 v
硬件层比较适合于,电子、通信、自动化、机电一体、信息工程类专业的人来搞,需要掌握的专业基础知识有:单片机原理及接口技术、微机原理及接口技术、C语言。
8 t$ B9 c& q- s/ K0 }# V3 `' ~2 u% D6 H k
2.驱动层 K1 k: I2 B; r* q
这部分比较难,驱动工程师不仅要能看懂电路图,还要对操作系统内核十分精通,以便其所写的驱动程序在系统调用时,不会独占操作系统时间片,而导至其它任务不能行动,不懂操作系统内核架构和实时调度性,没有良好的驱动编写风格,按大多数书上所说添加的驱动的方式,很多人都能做到,但可能连个初级的驱动工程师的水平都达不到,这样所写的驱动在应用调用时就如同Windows下我们打开一个程序运行后,再打开一个程序,要不就是中断以前的程序,要不就是等上一会儿才能运行后来打开的程序。6 D' b1 A; R# H& G4 K
想做个好的驱动人员没有三、四年功底,操作系统内核不研究上几编,不是太容易成功的,但其工资在嵌入式系统四层中可是最高的。
% t: m, U: c4 t$ f+ w驱动层比较适合于电子、通信、自动化、机电一体、信息工程类专业尤其是计算机偏体系结构类专业的人来搞,除硬件层所具备的基础学科外,还要对数据结构与算法、操作系统原理、编译原理十分精通了解。
# n- x. I* a1 R3 [4 L) A0 j; D
% U9 t$ ?- I- P3 N, E7 |& p5 |& O. J3.操作系统层& }7 H5 }0 P3 d2 i7 x3 w% D" O
对于操作系统层目前只能说是简单的移植,而很少有人来自已写操作系统,或者写出缺胳膊少腿的操作系统来,这部分工作大都由驱动工程师来完成。操作系统是负责系统任务的调试、磁盘和文件的管理,而嵌入式系统的实时性十分重要。1 w: ^& i+ i4 \
) O5 {2 l3 s# G+ h& r& `# X
8 ?, {+ I% q- i9 N+ Z: M5 t
|
|