嵌入式RTOS面试题目

用过哪些嵌入式操作系统?使⽤RTOS和裸机代码开发有什么区别(优缺点)? 

之前的⼀个项⽬是采⽤裸机代码开发的,写起来还⾏,通过状态机来管理业务逻辑和各种外设。
但是随着外设的增加,任务之间的同步和并⾏处理的逻辑增加,写起来就会越来越麻烦,这时就引⼊了操作系统。写代码就变得容易很多。
操作系统的作⽤,⽅便管理任务,管理延时,管理内存,管理任务间通讯。

 

有移植过freertos吗?

有,移植过2022lts版本, 步骤是,下载源码,裁剪源码,解决config.h的依赖缺失,解决
systemcoreclock的问题,解决xxx_Handler的回调错误, 完成systick的delay。 就差不多移植好了。

FreeRTOS移植过程?

(内核源码,头文件,内存,接口)
1. 下载源码
2. 拉取 FreeRTOSv9.0.0\FreeRTOS\Source 的所有 .c 文件 =>> 内核源码
3. 拉取 FreeRTOSv9.0.0\FreeRTOS\Source\portable{\MemMang,\RVDS\ARM_CM3}
4. 拉取 FreeRTOSv9.0.0\ FreeRTOS\Source\include == 》头文件
5. 工程中 C++ 配置目录
6. 修改 FreeRTOSConfig.h 文件,堆栈空间问题,时间节拍
7. 修改服务中断函数, stm32f10x_it.c SysTick_Handler(void)
8. 注释掉 PendSV_Handler() SVC_Handler() 函数
Q: 嵌⼊式操作系统的硬实时和软实时如何理解
嵌⼊式操作系统问题
初始化:
- 定义历史样本数组 history ,⻓度为 FILTER_LENGTH, 初始值是 0
滤波过程:
- 对于每个新的输⼊值 newValue
- newValue 添加到历史样本数组的开头
- 如果历史样本数组⻓度超过 FILTER_LENGTH ,移除最旧的样本值
- 计算历史样本数组中所有值的平均值,并将结果赋给 filteredValue
返回 filteredValue 作为滤波后的输出值
1
2
3
4
5
6
7
8
9
10
Plain Text 8
A: 硬实时就像是,必须按时响应,或完成任务,否则会有⼤问题。软实时有截⽌⽇期,但稍微晚⼀点完
成也不会有太⼤麻烦,只要不太拖延就⾏。硬实时对时间要求⾮常苛刻,⽽软实时对时间要求相对灵
活。嵌⼊式系统需要根据具体任务来选择使⽤哪种⽅式。硬实时可以是硬件中断来实现,软实时可以是
CPU时间⽚轮转来实现。
Q: 操作系统中信号量和互斥量有什么区别?
A :互斥量是⼆进制的,同时只有1个task可以访问资源, 信号量是计数的,多个task都可以使⽤信号
量,根据数值进⾏不同的业务逻辑。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024CCPC郑州站超详细题解(含题面)ABFHJLM(河南全国邀请赛)

文章目录 前言A Once In My LifeB 扫雷 1F 优秀字符串H 随机栈J 排列与合数L Toxel 与 PCPC IIM 有效算法 前言 这是大一博主第一次参加xcpc比赛,虽然只取得了铜牌,但是收获满满,在了解了和别人的差距后会更加激励自己去学习,下面…

基于PHP高考志愿填报系统搭建私有化部署源码

金秋志愿高考志愿填报系统是一款为高中毕业生提供志愿填报服务的在线平台。该系统旨在帮助学生更加科学、合理地选择自己的大学专业和学校,从而为未来的职业发展打下坚实的基础。 该系统的主要功能包括:报考信息查询、志愿填报数据指导、专业信息查询、院校信息查询…

面向对象设计之套路——设计模式

1、总则 面向对象的分析设计编程思想,通过封装、继承、多态把程序的耦合度降低,用设计模式使得程序更加灵活,容易修改,并且易于复用。 让业务逻辑与界面逻辑分开,让它们的耦合度下降,只有分离,…

Tableau学习2.0版——复习

官网下载链接:https://www.tableau.com/zh-cn/support/releases 学生账户申请链接:https://www.tableau.com/zh-cn/academic/students。直接去学信网下载学籍在线验证作为申请证明。 目录 1、可视化原理 2、基础图表制作 2.1 对比分析(比…

windows打开防火墙指定端口(局域网访问本地项目)

windows打开防火墙指定端口(局域网访问本地项目) 本地运行了Vue前端项目,部署在5173端口,想让同事从局域网内访问项目,开放本机端口5173允许访问 在 Windows 上使用自带的防火墙,你可以按照以下步骤来允许局域网内其他设备对特定端…

视频素材哪里找?7个无版权视频素材网站

这篇文章为那些正在学习视频剪辑的新手提供了一份宝贵的资源清单,介绍了7个可以找到高质量且免费可商用的视频素材网站。每个网站都有其独特的资源库,可以帮助用户找到适合各种项目的视频素材,从生活vlog到专业旅行记录,都可以在这…

48.乐理基础-音符的组合方式-休止符

休止符 音乐中总有一些停顿的地方,一次停顿多久是创作人固定好的,休止符就是用来表示每一次停顿多久 需要停顿的位置就用 0 来表示,数字 0 就是简谱中的休止符 音符有全音符、二分音符、四分音符、八分音符、十六分音符、三十二分音符等&…

Amesim基础篇-热仿真常用模型库-Electrical Basics/Electric Storage

前言 在动力电池仿真中中我们不免会用到该元件库中的模型,该库中包含基本的电路元件与电池模型。具体的相关模型介绍如下: 1 电压源、电流源、功率源、接地 如图,分别为电压源、电流源和功率源,其中功率源在仿真中经常用到&…

音视频开发3 视频基础,图片基础

1.RGB彩色原理 2.YUV 3.像素,分辨率,位深,帧率,码率,Stride跨距 ◼ 像素 : 像素是一个图片的基本单位, pix 是英语单词 picture的简写,加上英 语单词“元素element”,就…

从Python整数变量内存大小占用28字节谈起

实验结果 本机环境64位Python 3.12 内存布局图 0 4 8 12 16 20 24 28 |----------|----------|----------|----------|----------|----------|----------| | ob_refcnt | ob_type | ob_digit | …

Llama3-Tutorial(Llama 3 超级课堂)-- 笔记

第1节—Llama 3 本地 Web Demo 部署 端口转发 vscode里面设置端口转发 https://a-aide-20240416-b4c2755-160476.intern-ai.org.cn/proxy/8501/ ssh -CNg -L 8501:127.0.0.1:8501 rootssh.intern-ai.org.cn -p 43681参考 https://github.com/SmartFlowAI/Llama3-Tutorial/b…

分享5个免费AI写作软件

在数字化时代,人工智能(AI)正以惊人的速度渗透到我们生活的方方面面,而写作领域也不例外。AI写作工具的出现,不仅改变了传统的写作流程,更在创意表达、文本生成、语言校正等方面展现了其独特的优势。这些工…

Pyhton专题学习资料包,Python从入门到精通全套学习资料[30G]

资源概览 百本Python学习书籍大礼包百本前端学习书籍大礼包微专业-数据挖掘分析之Python篇小甲鱼零基础入门学习Python(全96集) 资源获取 🧑‍💻【Pyhton专题资料】【30G】 百本Python书籍## 百本前端书籍 微专业-数据挖掘分析之Python篇 预备课【先…

安全测试|常见SQL注入攻击方式、影响及预防

SQL注入 什么是SQL注入? SQL注入是比较常见的网络攻击方式之一,主要攻击对象是数据库,针对程序员编写时的疏忽,通过SQL语句,实现无账号登录,篡改数据库。 SQL注入简单来说就是通过在表单中填写包含SQL关键…

【爬虫之scrapy框架——尚硅谷(学习笔记one)--基本步骤和原理+爬取当当网(基本步骤)】

爬虫之scrapy框架——基本原理和步骤爬取当当网(基本步骤) 下载scrapy框架创建项目(项目文件夹不能使用数字开头,不能包含汉字)创建爬虫文件(1)第一步:先进入到spiders文件中&#x…

缓存菜品操作

一:问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大。 二:实现思路 通过Redis来缓存菜品数据,减少数据库查询操作。 缓存逻辑分析: 每个分…

Windows远程桌面实现之十四:实现AirPlay接收端,让苹果设备(iOS,iPad等)屏幕镜像到PC端

by fanxiushu 2024-05-04 转载或引用请注明原始作者。 这个课题已经持续了好几年,已经可以说是很长时间了。 实现的程序是 xdisp_virt, 可以去github下载使用:GitHub - fanxiushu/xdisp_virt: xfsredir file system 一开始是基于测试镜像驱动的目的随便开…

【数据库原理及应用】期末复习汇总高校期末真题试卷05

试卷 一、选择题 1.( )是存储在计算机内有结构的数据的集合。 A.数据库系统 B.数据库 C.数据库管理系统 D.数据结构 2.数据库的三级模式结构中,数据库对象—视图是( ) A.外模式 B.内模式 C.存储模式 D.模式 3.在下列关于关系表的陈述中,错误的是(…

idea无法识别加载pom.xml文件

有时idea无法识别加载pom.xml文件,直接打开pom.xml文件,然后添加到maven就行

8种常见的CMD命令

1.怎么打开CMD窗口 步骤1:winr 步骤2:在弹出的窗口输入cmd,然后点击确认,就会出现一个cmd的窗口 2.CMD的8种常见命令 2.1盘符名称冒号 说明:切换盘的路径 打开CMD窗口这里默认的是C盘的Users的27823路径底下&#xf…