以下来自许中兴博士演讲。
系统软件与应⽤软件不同
有⼤量的缄默知识,⻓期积累的know-how
⼯具链:gcc, ld, as, clang, ELF,
微处理器:X86, ARM,
周边设备:UEFI, ACPI, APIC, PCIE, USB, SATA, AHCI, GPU …
知识存在于代码中,没有系统化的know-how⽂档,硬件标准⽂档⼀般都是1000+⻚
写玩具系统容易,产品级的设计⾮常困难:⽀持海量的设备,应⽤,负载
要经过以下四个阶段
模仿
理解
掌握
创新
这个大概解释了为什么底层的要比应用困难了吧!上有API,下有kernel,外有硬件setting,内有各种算法。底层真的是只能靠积累的东东,芯片厂商的代码还不开源,只能工作的时候学习。
网友评论