先大致说一说我的工作经历。97年毕业后做了两年的电气与电子设计与开发,这一时期,我做过电路原理图的设计和PCB板的设计。从99年开始,我进入了软件行业。第一次做嵌入式开发是在2000年,在随后的六年多的时间里,我差不多做过整个操作系统的组件。一开始用的是uC/OS RTOS,熟悉它的人知道,它是一个微内核,提供了任务的调度、Mutex、Semaphore等基本的功能,但是像TCP协议栈、文件系统、堆管理(指malloc/和free)这些功能都没有,当然也包括没有相应的硬件驱动模块,如PCI、串口、I2C、IDE硬盘等。第一次做的这个产品是一个DVR(Digital Video Recorder),CPU用的是AMD的SC520,是一块x86的处理器。因为公司小,所以整个DVR的嵌入式软件就我一个人做,这对于我来说是一个难得的机会和挑战。我所做的包括: