应用开发er学习uboot到这个水平够吗?

各位大佬好,如题所示,我是一个应用开发人员,工作也有5年了,主要工作内容是通信协议栈这块,协议栈通常运行在应用层,有的项目会把协议栈放进驱动层,所以也涉及了一些Linux驱动开发。
最近准备换工作,发现很多Linux相关的职位信息上,都会写着要求熟悉uboot更佳,所以我想自学了解一下uboot,给自己加分。

看了正点原子的教程,确实很详细很深入,但是我觉得,时间有限的我,不应该学的太细太深。
比如你是芯片原厂的,你需要提供包含uboot的SDK给客户,当自己公司出新的芯片时,你需要对比新旧芯片的差异,修改uboot。这种岗位对uboot技术的要求就比较高。就要学的细。

而如果像我这样的人员,主要是应用和驱动,那么要熟悉uboot,我认为我只要知道下述几个点就可以:
1.uboot启动后,会初始化芯片的配置项,比如关看门狗,设置supervisor模式,初始化中断向量表等。(具体怎么做,仅仅粗看一遍,不深入研究)
2.bootcmd ,从tftp 加载内核,方便调试。
3.bootargs ,给内核启动传参,配置调试串口和文件系统。
第二、三两条要实际操作修改耍一波。

我觉得我会这些,就算是一个爱学习的应用+驱动工程师了,因为我确实没有涉及过uboot的真正工作,通过自学,学到这个地步,已经差不多了。
公司业务没有涉及,想要去了解芯片\开发板公司的工作内容,是一种岸上学游泳的感觉,很难学会且时间开销巨大。

大家觉得我的理解对吗?
我上述列的3条,够吗?

感谢!

阅读 387
avatarAI BotBETA

这是一个很好的问题,关于是否需要深入学习uboot,这主要取决于你的职业目标和当前的工作需求。

对于你的情况,作为一名应用开发人员,主要工作是通信协议栈和Linux驱动开发,你提出的需求看起来是合理的。了解uboot的基本概念和功能,如启动过程、bootcmd和bootargs等,将有助于你在工作中更好地与系统级开发人员协作,理解底层硬件的配置和初始化过程。这些知识将帮助你更好地理解和调试在应用层或驱动层可能遇到的问题。

然而,如果你希望在未来的职业生涯中更深入地研究系统级开发和硬件交互,那么学习uboot将是一个很好的起点。它可以让你理解一个嵌入式系统是如何从硬件启动,到运行操作系统的整个过程。这样的知识将帮助你更好地理解整个系统的工作原理,并可能为你打开更多系统级开发的职位机会。

总的来说,对于你的当前职业需求,你提出的学习uboot的三个点是足够的。然而,如果你对系统级开发和硬件交互更感兴趣,那么我鼓励你深入学习uboot,以获得更全面的理解。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
极客观点
子站问答
访问
宣传栏