欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 国际 > 驱动-----内核启动

驱动-----内核启动

2024/10/24 8:30:32 来源:https://blog.csdn.net/mutou8541/article/details/142996529  浏览:    关键词:驱动-----内核启动

目录

一、最小系统

二.操作系统

三.操作系统的启动

四.linux启动准备工作

五.安装nfs和tftp环境

六.总结


设备驱动:驱使设备行动的程序。

裸机程序:没有和操作系统结合的驱动程序pwm.c,uart.c,adc.c

有操作系统的时候,应用层不能直接操作硬件,由底层写驱动的人写好驱动,加到操作系统里面,然后应用层去调用。

静态的驱动:就是操作系统在一块的

动态的驱动:就是操作系统起来之后,后续加载进去的

1.首先我们要知道什么是操作系统?

2.操作系统是怎么启动的?

3.最小系统是什么?

一、最小系统

                                                

bus:总线,一组线。

可线性访问:有专门的地址、数据总线

内存:程序在内存里面运行,就是程序在运行的时候数据都是和内存做交互的,实际上程序cpu上运行。

            速度快,但是掉电会丢失数据,可线性访问。

1.这里的地址总线是从LADDR2开始的,不是从0和1开始的,说明是按照四字节对其来访问的。

                        7654 3210位

                        0000 0x00

        这里没有0和1位,最小的单位就是4字节,所以只能四字节访问。

2.地址总线是相同的,数据位不同,高16位和低16位放在俩个内存里,刚好32位的数据总线,4字节访问刚好是32位。

Norflash:速度慢,掉电数据不丢失,可线性访问。

                                                

1.地址位从1开始,俩字节对齐,数据位是16位,俩个字节访问刚好是16位的数据。

Nandflash:速度慢,掉电数据不丢失,不可线性访问。

                ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        

二.操作系统

Linux启动:

        1.bootloader

        2.kernel(linux内核)

        3.rootfs(根文件系统)

1.bootloader(一个逻辑程序)

先导的启动程序,为内核的启动准备运行环境(初始化内存),并引导内核启动(将内核放在内存里,pc指向内存)。具备该功能的程序都叫bootloader。

        具体的工作:

                

        关闭Cache(缓存),直接从内存读取值

        关闭看门狗:关闭自动复位,就是cpu会循环给一个信号,看门狗收到信号的时候会重新计数,当看门狗没有收到这个信号的时候会认为cpu出错了,就会给出一个复位的信号。

        搬移内核到内存:这里无论从哪搬移内核都可以,不一定要在nandflash中搬移。   

        存放的位置:

        ​​​​​​​        ​​​

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com