linux uboot kenerl filesystem关系

news2024/10/12 12:34:28

每次烧写都是uboot,image,roots,为什么不整一套,为什么分开

什么是uboot 什么是内核,三者为什么分开

如果你上网去搜一下,你会发现这样的答案

另注:本文含有大量的错误和意测成份,智者勿入

如果你希望只得到的这些就满足的话,后续的不需要再看了

我们拿到一个开发板,项目是为了“使用的”,市面上有大量的不同产商的开发板(如果只有一个产商也就不需要这么麻烦了),我们的的项目所要实现的功能只需要几种,我们却需要不断的与底层的寄存器打交道,为了写一个LED灯,可能需要查阅大量的文件,写几十,上百行的代码,初始化时钟,配置引脚,开启时钟,读写寄存器;为了读写文件,需要使用不同的协议,不同的协议,移植到其它地方,还是需要写大量的相同的代码,修改的只是针对不同板子的寄存器,更不要说还有有显示器,输入输出 键盘 鼠标 等统一的操作;同样是点LED灯,不同的板子寄存器地址,操作还不同,大量的重复操作;

操作系统就是一个软件,帮我们处理底层的操作,然后使我们更专注于我们的任务,项目使用,而不是每次都要重新操作大量的重复的操作

我们也可以自己写操作系统(定制的操作系统,针对具体的任务的),但是有个统一的操作系统,并且经过验证的,更大适应性的,

规范的,操作系统有个特征,就是经过千C百练 验证(砸不烂,很稳定)还有一群人给你维护,修正,你自己写的就,看你技术水平了

操作系统就操作系统吧,为什么又分成uboot kernel roots呢

我们先来看一下操作系统吧,最简单的操作系统while(){}语句,单行的,想要什么往里面写就行,点灯,BEEP,显示,键盘都可以; 

OK,换一块不同的板子,照样查寄存器,读写寄存器,点灯,BEEP,显示

再换块不同的板子,再查寄存器,点灯,BEEP

操作都一样,不停的,不断的重复同样的操作,所要改的只是寄存器的地址;一次两次还可以,上百人,上百次,上千人; OK

上面是最简单的操作系统了:给操作系统一个定义吧,就是一软件,跟底层打交道,使客户更专于自己的需求与项目,而不是与底层打交道

OK

上面的操作系统简陋了点,有点浪费,一时只运行一个任务,能不能同时多运行几个,点灯的同时,beep,同时还监控外面有没有信号传入,如接个热敏电阻看下开水是不是熟了(好吧,while中也能实现),但是实现起来有点烦索,我给你包装包装,你只要调用相应的函数就能另开一个任务(就是更方便用),这样下次就不需要修改哪,修改哪,加个任务在中间; 这就是“多任务”的由来了(伪“多任务”)最终还是由一个CPU通包,分给不同的任务一定时间,看起来像多任务; 好吧这时也不需要linux,或是linux的kenel也就可以了,不需要文件系统

操作系统

while(){}ucos  freeRtooslinux winodws
        ——>        ——>        ——>

我们先看一下早期的“电脑”,一块芯片,一个几Byte的内存,几个输入输出“按键”进行输入输出进行“计算”任务(需要什么操作系统)

——>——>——>——>——>

那时处理器产商很少,或说只有一个巴掌能数得过来的,最后INTEL一枝独秀,但是吧你说你把一整套硬盘,内存,显卡。。。都集成到一块了,也就不需要分什么uboot先引导kernel,kernel再加载roots了,但是他只做芯片,外围的给你们自己配去了,只能了你一个小小的flash让你存储信息,好吧,这就来了,你没办法了,你只能在他提供的一个小小芯片里把你的,大大的系统引进来,引就引进来吧,但计算机只用来点灯,BEEP,监控,这么大的性能,完成一个小小的任务有点太可惜了,还是拿来办点现实中的事吧,比如写个论文,画个报表,看一下千里之外的工地上有没有人在偷懒,看一下工程运行的怎么样了,发个邮件给客户,晚上约个时间吃饭,好谈谈下个项目

我们使用rtos的时候,你操作吧,还是需要涉及到一些专门知识与硬件相关的,对非专业的,由其是大企业,大财主,大需求来说,你让他来操作底层的,然后告诉他可以让你的工作效率大大提升? (我想他会把锤子砸你头上)

而linux windows则提供了一整套的程序,但同时带来了体积急速膨胀的

一整套的任务管理机制,创建,退出,程序之间的交互,多任务(就是更方便使用,而不需要每个人都要专业知识才能应对,只需要记住几个简单的命令即可)

我们拿ARM,X86是拿来为了办公,为了休闲,查找信息,计算 控制用的,而不是为了显示几个图片;点几个灯的

好吧,这时你靠rtos就不行了,你要写文档,你要写报表,你要统计今年的销售额,写文档总得有个存放文档的地方吧,难到写个文档还要写一堆代码(还不如直接写在本子上呢),你要上网,总要有个显示器吧,总得有个键盘,鼠标,一个图片动Z几KB,几十M的,你喊我用几KB的机器给你加工处理

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1108843.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【脉冲通信】用于空间应用的飞秒脉冲通信的符号误码率模型研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

超声波清洗机有没有平价又好用的推荐、平价好用超声波清洗机总结

超声波清洗机以其高效、环保、节能等优点在日常生活中得到了广泛应用。无论是在珠宝首饰、眼镜等小物品的清洁方面,还是在医疗领域的清洁消毒方面,超声波清洗机都发挥着不可替代的作用。在购买超声波清洗机时,需要根据自己的具体需求选择合适…

“创新启变 聚焦增长”极狐(GitLab)媒体沟通会,共话智能时代软件开发新生态

10 月 18 日 北京 昨日,全球领先 AI 赋能 DevSecOps 一体化平台极狐(GitLab) 在北京举办了主题为“创新启变 聚焦增长”的媒体沟通会。极狐(GitLab) CEO 柳钢就“中国企业数字化转型、软件研发、技术自主可控等热点问题,以及 AI 大模型时代下&#xff0c…

逐字稿 | 2 MoCo 论文逐段精读【论文精读】

bryanyzhu的个人空间-bryanyzhu个人主页-哔哩哔哩视频 评价 今天我们一起来读一下 MOCO 这篇论文。 MOCO 是 CVPR 2020 的最佳论文提名,算是视觉领域里使用对比学习的一个里程碑式的工作。而对比学习作为从 19 年开始一直到现在视觉领域乃至整个机器学习领域里最炙…

数据可视化素材分享 | 数十图表、无数模板

很多人在后台求分享报表、源代码,其实何必这么麻烦,在奥威BI数据可视化平台上点击即可获得大量的可视化素材,如数十种可视化图表,适用于不同分析场景;又如大量不同主题的BI数据可视化报表模板,套用后替换数…

JAVA性能优化:n个小细节让你提升java代码的运行效率

目录 1、尽量指定类、方法的final修饰符 2、尽量重用对象 3、尽可能使用局部变量 4、及时关闭流 5、尽量减少对变量的重复计算 6、尽量采用懒加载的策略,即在需要的时候才创建 7、慎用异常 8、不要在循环中使用try…catch…,应该把其放在最外层 …

神经网络量化----为了部署而特别设计

引言:一般神经网络量化有两个目的: 为了加速,在某些平台上浮点数计算比较耗费时间,替换为整形可以加快运算为了部署,某些平台上只支持整形运算,比如在芯片中 如果是第1个目的,则使用常规的量化手…

在线课堂分销商城小程序源码系统 带完整搭建教程

大家好啊,今天来给大家分享一个在线课堂分销商城小程序源码系统,一起来看看吧。以下是部分功能实现的核心代码: 系统特色功能一览: 商品模块。包括实物商品、虚拟商品和电子卡密等,每种商品可以设置对应的商品分类。同…

购药不烦恼:线上购药小程序的快捷方式

在这个数字化时代,线上购药小程序的快捷方式正在改变着我们购药的方式。本文将介绍如何通过使用Python和Flask框架创建一个简单的线上购药小程序的原型,为用户提供购药的便利和快捷体验。 安装和设置 首先,确保你已经安装了Python和Flask。…

MATLAB中ss2tf函数用法

目录 语法 说明 示例 质点-弹簧系统 双体振荡器 ss2tf函数的功能是将状态空间表示形式转换为传递函数。 语法 [b,a] ss2tf(A,B,C,D) [b,a] ss2tf(A,B,C,D,ni) 说明 [b,a] ss2tf(A,B,C,D) 将方程组的状态空间表示形式转换为等同的传递函数。ss2tf 返回连续时间方程组…

C语言实现句子中的单词颠倒排序

一、运行结果 二、源代码 # define _CRT_SECURE_NO_WARNINGS # include <stdio.h> # include <assert.h>//实现逆转函数&#xff1b; void reverse(char* left, char* right) {//断言left和right都不能为空&#xff1b;assert(left);assert(right);//循环逆转字母…

电容笔好还是触屏笔好?便宜又好用的电容笔推荐

苹果的电容笔和其他平替的电容笔有很大的区别&#xff0c;那就是普通的电容笔没有重力的压感&#xff0c;只有一种倾斜的压感。但普通的电容笔也可以用于书写&#xff0c;和苹果的Pencil没有太大区别&#xff0c;而且大部分都要200元左右。目前&#xff0c;在我们国内内&#x…

开源Vue盲盒商城4.0源码/网页盲盒源码/前端uniapp后端thinkphp+安装教程/亲测

源码简介&#xff1a; 开源Vue盲盒商城4.0源码&#xff0c;它是打包小程序app的网页盲盒源码,亲测可用&#xff0c;它是采用vueTP5框架开发开源盲盒网站源码&#xff0c;附带了安装教程。 简单测试过了&#xff0c;可以使用&#xff0c;大家可以自测下。 前端uniapp后端think…

免费活动】11月4日敏捷武林上海站 | Scrum.org CEO 亲临现场

活动介绍 过去的几年里&#xff0c;外界的风云变幻为我们的生活增添了一些不一样的色彩。在VUCA世界的浪潮里&#xff0c;每一个人都成为自己生活里的冒险家。面对每一次的变化&#xff0c;勇于探索未知&#xff0c;迎接挑战&#xff0c;努力追逐更好的自己。 七月&#xff0…

超声波清洗机靠谱吗?实用性比较高的超声波清洗机推荐

超声波清洗机是否靠谱&#xff0c;这是一个有争议的问题&#xff01;但是先不妨先来了解了解超声波清洗机。 超声波清洗机通过高频振动波来清洁物品表面&#xff0c;这些振动波会在水中形成微小的气泡。气泡不断崩裂&#xff0c;产生强大的冲击力&#xff0c;从而将物品表面的…

网络安全是什么?一文认识网络安全

一、网络安全 1.概念 网络安全从其本质上讲就是网络上的信息安全&#xff0c;指网络系统的硬件、软件及数据受到保护。不遭受破坏、更改、泄露&#xff0c;系统可靠正常地运行&#xff0c;网络服务不中断。 &#xff08;1&#xff09;基本特征 网络安全根据其本质的界定&#…

《深入理解java虚拟机 第三版》学习笔记一

第 2 章 Java 内存区域与内存溢出异常 2.2 运行时数据区域 Java 虚拟机在执行 Java 程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域有各自的用途&#xff0c;以及创建和销毁的时间&#xff0c;有的区域随着虚拟机进程的启动而一直存在&#xff0c;有些…

智慧门牌管理系统:省市区县区划数据与国家级开发区共融

文章目录 前言一、行政区划数据的重要性二、支持国家级开发区的发展三、数据基础的重要性 前言 随着科技的飞速发展&#xff0c;我们的生活正在发生日新月异的变化。其中&#xff0c;智慧城市的概念正逐渐成为我们生活中的一部分。智慧城市&#xff0c;顾名思义&#xff0c;运…

PAM从入门到精通(七)

接前一篇文章&#xff1a;PAM从入门到精通&#xff08;六&#xff09; 本文参考&#xff1a; 《The Linux-PAM Application Developers Guide》 先再来重温一下PAM系统架构&#xff1a; 更加形象的形式&#xff1a; 五、主要函数详解 5. pam_strerror 概述&#xff1a; 描述…

App出海起量难?传参安装打开获客增长新途径

近年来&#xff0c;在App出海潮越发热烈的背景下&#xff0c;如何适应海外市场并实现“用户增长”与“提高转化”&#xff0c;已成为出海团队需要面临的重大挑战之一。 如何在海外市场短时间内快速起量&#xff1f;这个问题难倒了不少出海创业者&#xff0c;毕竟目前互联网环境…