01、嵌入式系统学习的框架

本文介绍了学习嵌入式系统必备的C语言基础和单片机知识,随后详细解释了BootLoader(如U-BOOT)、Linux内核的作用,以及文件系统在Linux中的必要性。后续内容涉及应用程序和Linux驱动,特别是字符设备驱动的学习路径。
摘要由CSDN通过智能技术生成

    学习嵌入式系统需要C语言编程基础,并学过单片机,然后可以学习一下嵌入式Linux的基础框架了,很简单,那就是首先要搞清楚什么是BootLoader、Linux内核(kernel)和文件系统。

         什么是BootLoader?

          实际上就是引导程序,也就是硬件复位以后第一个要执行的程序,主要工作是初始化操作系统运行的环境,比如说内存、定时器、缓冲器等,当这个工作做完后,再把操作系统的代码加载到内存,然后操作系统就可以启动并执行,到此为止,bootloader的任务就完成了。

         常用的bootloader有很多种,比如U-BOOT、REDBOOT、LILO等

        什么是kernel呢?

         kernel就是Linux的内核,也就是说Linux操作系统本身的代码。那么U-BOOT启动到最后,就是把它加载到内存,并且调转到Kernel来执行。

        什么是文件系统呢?

        我们来介绍一下文件系统,这里需要了解一下一个事实,就是说Linux启动到最后一定要挂载一个文件系统。这个是Linux的一个特点,它不像其他操作系统,比如VxWorks,是不需要文件系统的,VxWorks没有文件系统也可以运行。像QT系统、Android、以及Ubuntu系统,它们的底层都是Linux内核,不同的是它们的文件系统不一样,也就是说,Android 系统相关的一些代码,比如说图形界面系统、Android的虚拟机,android 的框架代码都在Linux最后挂载的文件系统里面。

       搞清楚这几点, 实际我们就了解了Linux系统最基本的框架,然后根据开发板配套的资料去学习如何编译,因为像Uboot、Kernel、文件系统,最后编译生成出来分别是一个独立的文件,就是说会生成三个文件,最后把这几个文件烧录到板子上。

        学会了编译和烧写,接下来呢,我们在这个框架的基础上,去学习如何坐Linux上面的应用程序。

         什么是应用程序呢?它是运行在操作系统上面,通过调用操作系统的资源去工作,是最终的业务逻辑,比如我们windows上面有很多的应用程序。

         再接下来,我们需要学习Linux驱动方面的一些知识,这也是在基础框架里面的,驱动程序可以看成是操作系统的一部分,它在底层专门和硬件打交道,Linux的驱动包括:字符设备、块设备以及网络设备。

         最开始只需要学习字符类设备驱动,其他两种先不用研究。

       

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值