毕业作品网站

 首 页 机械毕业设计 电子电气毕业设计 计算机毕业设计 土木工程毕业设计 视觉传达毕业设计 理工论文 文科论文 毕设资料 帮助中心 设计流程 
垫片
您现在所在的位置:首页 >>计算机毕业设计 >> 文章内容
                 
垫片
   我们提供全套毕业设计和毕业论文服务,联系微信号:biyezuopinvvp QQ:1015083682   

基于树莓派的嵌入式linux操作系统设计 课程论文+项目源码

文章来源:www.biyezuopin.vip   发布者:毕业作品网站  

基于树莓派的嵌入式linux操作系统设计

目录

基于树莓派的嵌入式linux操作系统设计

一、设计目的和要求

· First stage bootloader

二、设计思路与方法

三、实现的功能及说明

在此简单设计了GPIO的功能用于提示系统状态

四、使用

五、核心源程序代码和界面图

六、实现

七、心得体会

一、设计目的和要求

1.设计目的

树莓派 OS需要有自己的调度程序。如果实现一个调度程序,还必须处理定时器中断。定时器中断意味着操作系统应该支持一些驱动程序并提供系统调用以将它们暴露给用户应用程序。在此基础上编写驱动程序使之在屏幕上写入内容并从键盘读取用户输入的指令。此外,操作系统需要能够加载和执行用户程序,因此需要支持某种文件系统并能够理解某种可执行文件格式。

树莓派搭载了一枚ARM架构64位4核心SOC(BCM2835)主频为700MHZ,SOC为片上操作系统支持精简指令集,并且板载了512MB DDR2内存。该单板机系统支持SD卡Boot启动。在BCM2835启动时会通过Boot目录启动。树莓派启动分为以下步骤

· First stage bootloader

树莓派上电后,SoC 中的 bootloader 首先被执行,其作用是挂载 SD 卡上的 FAT32 分区,从而加载下一阶段的 bootloader。这部分程序被固化在 SoC 的 ROM 中,用户无法修改。

· Second stage bootloader (bootcode.bin)

这个阶段的 bootloader 会从 SD 卡上检索 GPU 固件,将固件写入 GPU,随后启动 GPU。

· GPU firmware (start.elf)

本阶段中,GPU 启动后会检索附加配置文件(config.txt、fixup.dat),根据其内容设置 CPU 运行参数及内存分配情况,随后将用户代码加载至内存,启动 CPU。

· User code (kernel8.img)

通常情况下,CPU 启动后便开始执行 kernel8.img 中的指令,初始化操作系统内核,在某些情况下,也可以被 U-BOOT 代替,由 U-BOOT 来加载内核。在树莓派 1 代中,User code 部分被保存在 kernel.img 文件中,2 代中,该文件更名为 kernel7.img,3 代中,该文件更名为 kernel8.img,本课程设计的全部工作,都在该文件上完成。

综上所述,树莓派上电后的初始化工作大多是在 GPU 中完成的(GPU 内的一颗 RSIC 核心用于完成这些操作)。目前树莓派的 GPU bootloader 仍未开源,只以二进制形式发布,因此本课程设计使用了官

方提供的raspberrypi/firmware官方仓库中的bootcode.bin 和 start.elf,直接复制到 SD 卡Boot目录。

树莓派刻录了官方镜像以后boot分区文件展示。我们自制的操作系统会编译成kernel.Img文件替代官方的kernel.img文件。















  全套毕业设计论文现成成品资料请咨询微信号:biyezuopinvvp QQ:1015083682     返回首页 如转载请注明来源于www.biyezuopin.vip  

                 

打印本页 | 关闭窗口
本类最新文章
基于MatlabSimulink 35kV输电线路继电保护的设计 分布式风电场低电压穿越故障建模与
大学生内容分享和社交平台的设计与 基于SSM框架的企业人事薪酬管理 基于大模型的代码注释自动生成与维
| 关于我们 | 友情链接 | 毕业设计招聘 |

Email:biyeshejiba@163.com 微信号:biyezuopinvvp QQ:1015083682  
本站毕业设计毕业论文资料均属原创者所有,仅供学习交流之用,请勿转载并做其他非法用途.如有侵犯您的版权有损您的利益,请联系我们会立即改正或删除有关内容!