商报历史

首页 » 常识 » 常识 » 老嵌入式工程师,怎么不被历史洪流冲走
TUhjnbcbe - 2021/3/22 6:42:00

正文

这是一位女程序媛写的文章,满满的都是干货,值得一看再看,细细品味。

01、嵌入式工作会越老越吃香吗?

事实上电子技术更新换代非常快,5年前如果你是一名电子设计高手,如果5年中你再没有接触过电子设计,那5年后你就成为一个菜鸟了。做嵌入式一样,并不是越老越吃香,而是看你是否能不断学习新的知识,接受新的技术和设计理念。虽然如此,我们也可以从老嵌入式开发者学习一些经验。废话不多说,进入正题吧。

我是年毕业的,做了两年的电子设计与开发,做过电路原理图和PCB板设计。年进入软件行业,六年多的时间里,差不多做过整个操作系统的组件。一开始用的是uC/OSRTOS,第一次做的这个产品是一个DVR,CPU用的是AMD的SC,是一块x86的处理器。因为公司小,所以整个DVR的嵌入式软件就我一个人做,对于我来说是一个难得的机会和挑战。我所做的包括:

1)熟悉CPU。x86中存在实模式和保护模式,CPU一上电后进入的是实模式,要进入保护模式则需要做一定的设置,最后做一个长跳转,就能进入保护模式。对于这一处理器的熟悉和了解,使得我对于处理器有一个很好的认识。此外,明白什么是芯片组、PCI的原理和配置方法、SDRAM如何配置、IDE的PIO模式是如何工作的,等等。

2)熟悉uC/OS。RTOS并对其进行扩展。理解任务是如何实现的、任务是如何被调度的、Mutex和Semaphore是如何实现的、对处理器进行开关中断的目的是什么且要注意什么,等等。对于RTOS的扩展则包括实现了一个采用malloc/free进行内存分配的堆管理模块,这一管理模块是参照XINU操作系统来实现的;对任务调度部分进行修改以方便中断服务程序的管理。

3)将MINUX操作系统的文件系统移植到我们的DVR上。MINUX中采用的就是UNIX中的i-node的方式来管理文件的,这种方式在现在的Linux中也能看到。由于MINUX的文件系统是针对小型存储设备的,所以对其代码要进行修改,以适应当时所采用的上G的硬盘。

4)将XINU中的TCP协议栈移植到DVR上。我记得很清楚的是,当时对于TCP的滑动窗口的调试以及校验和的调试花了不少时间。

可以说这一时期的工作,使得我对于操作系统的原理和实现非常的熟悉。还有,我在这一公司使用过了逻辑分析仪去分析总线信号以解决问题,这些都是非常好的经历,都有助于提升对计算机系统的理解。

年我加入了UTStar

1
查看完整版本: 老嵌入式工程师,怎么不被历史洪流冲走