西门子嵌入式学习笔记---(1)裸机和调度器开发

🌈个人主页: 羽晨同学

💫个人格言:"成为自己未来的主人~"

裸机和调度器开发的对比

嵌入式开发是为了特定目的而设计的计算系统编写软件的过程,这些系统通常会具有受限的资源(处理能力,、内存、能源等),并且需要可靠的执行任务。

与调度器开发相比,裸机开发式很简单的,并且是可预测的,这个是它的优点。

裸机开发是一条命令一条命令顺序执行的,当其中的一条命令没有执行完的时候,其余的命令也是不会继续执行的。

对于调度器开发而言,与逻辑开发相比,最大的不同点,就是调度器开发有了优先级的概念,会吧CPU分配给不同的任务,确保CPU资源得到最大的利用率。

裸机开发

裸机开发是直接在硬件上编程,代码直接控制硬件,按照严格的顺序执行。这样可以获得最佳的性能,不需要额外的调度器或操作系统的开销,然后执行时间是可以具体预测的,每次运行的结果都相同。

但是随着功能的增加,需求的增加,管理难度就会增加,并且难以处理多任务和并发,无法设立优先级,就算任务在紧急,也得当前任务完成。

调度器开发

调度器开发使用实时操作系统(RTOS)或任务调度器来管理多个任务的执行,调度器决定何时执行哪个任务,使并发和任务管理变得更简单。

调度器开发可以处理多个任务,重要任务可以优先执行,并且可以管理共享资源,新任务可以作为独立任务添加,不需要重构整个系统。

但是调度器本身需要消耗系统资源,就像交通管理系统需要额外设施。

复杂性也上升了嘛,需要理解调度机制,任务优先级和同步问题。

如何选择合适的开发方式

当遇到功能单一,实时性要求很高,功耗较低时选择逻辑开发

当遇到复杂性,需要灵活响应,团队写作开发,具有可拓展性,资源竞争管理,这个时候使用调度器开发。

好了,今天的内容就到这里,我们明天再见。

相关推荐
疯狂打码的少年4 分钟前
【数据库技术】SQL概述与数据定义(DDL:CREATE/DROP/ALTER)
数据库·笔记·sql·oracle
硬件yun14 分钟前
学功能安全
学习·安全·汽车
火眼金睛炼单词14 分钟前
图像记单词:视觉化学习能否破解英语记忆难题
学习
一条破秋裤17 分钟前
STM32 学习笔记:GPIO 输出原理与硬件设计
笔记·stm32·学习
andrsted19 分钟前
作业发布、课堂检测和错题讲评,用一个小程序完成
学习·微信小程序·小程序·学习方法
摇滚侠39 分钟前
《SpringBoot 3:入门与应用实战》第 9 章 使用 WebMvc 开发进阶 阅读笔记 24
spring boot·笔记·后端
摇滚侠1 小时前
《SpringBoot 3:入门与应用实战》第 9 章 使用 WebMvc 开发应用 阅读笔记 22
javascript·spring boot·笔记
Titan20241 小时前
HTTPS基础知识梳理
服务器·网络·c++·网络协议·学习·http·https
艾莉丝努力练剑1 小时前
【AI大模型接入SDK】SSE协议
c++·学习·面试·大模型·sdk
一条破秋裤1 小时前
STM32 学习笔记:OLED 调试工具与 Keil 在线调试
笔记·stm32·学习