现在是北京时间2019年11月28日,大学毕业已经工作四个多月。说来也是奇怪,大学里面明明主修机械电子工程,几乎是纯机械方向,毕业之后的工作却与主修的课程毫无关系。因为对机械这一行业毫无兴趣,大学里面花了点时间学了学C,做过一些项目。毕业设计又拿python写了个爬虫并且为它做了一个界面(当时整个机械学院唯一一个与计算机搭上边的毕业设计,本来没人选的被我捡了个漏)。想着毕业之后去深圳找一点程序员的工作干干,结果我这种非专业出身的很难找相关的工作,最终的最终找到了BIOS工程师这个职位。
当时面试的时候面的是软件工程师,工作了四个月之后才发现和想象的不太一样。BIOS工程师也算是软件工程师,但是做这一行代码写的会比较少(有那种很厉害的架构师,那种层次我体会不到,就拿我目前的理解来对这个职位进行分析),需要写的代码量并不多,但是需要理解的东西却是很多很多。举一个很简单的例子,Inter CPU 采用的架构是0X86架构,这个架构的历史十分长远,直到现在也是X86架构。哪怕是熟悉这个架构都绝非易事(所以说BIOS的架构师是真的厉害),里面设计的东西实在太多。我接触到好几个项目,一整个工程里面文件少的有2w,多的接近3w。文件格式也是有很多,随便数一下就有十几种。.c文件、.h文件、dsc、dec文件、uni、sd、vfr文件还有什么asl等等等等。我目前接触的基本就是上述这些。看别人博客说BIOS入门起码要两年,现在看来两年已经算是很快的了。做这行的好处就是这行里面所有的代码都不开源,不开源也就意味着想自学几乎不可能,市面上也没有教这种技术的培训班(甚至我到各大网站去搜索相关的学习资料,完全找不到,培训机构那么多,但是里面几乎看不到BIOS的影子)。导致这个行业入门难,招人也难。不像其他的码农到了年纪会被嫌弃,这个行业涉及太广泛,能做一辈子说的都不过分。
说了太多不相关的东西了,今天是我写博客的第一天。我开始写博客的目的是记录和分享我学到的东西。希望让其他BIOS工程师少走一点点弯路,毕竟这一行找个资料都难如上青天。只有一大堆的英文spec慢慢看。
今天的博客就是这么多,废话太多了。之后的主要就是技术分享了。接下来的两篇博客不出意外的话应该是下面的内容:
- 毕设中爬虫源码解析
- edk2环境搭建以及一些基础教程
评论留言随缘回复,主要上班太忙,没时间看这些,闲下来了回看看评论回复一下。