RTOS介绍

什么是RTOS?

RTOS(Real-Time Operating System),实时操作系统。实时性是其最大特征,实时操作系统中都要包含一个实时任务调度器,这个任务调度器与其它操作系统的最大不同是强调:严格按照优先级来分配CPU时间,并且时间片轮转不是实时调度器的一个必选项。
系统设计时所有的事件都可以在指定的时间内得到响应(时间确定性)。
具有及时响应高可靠性是RTOS的重要特征。

RTOS与普通操作系统的区别?

RTOS从调度器算法,到中断响应系统,到消息传递机制等所有的核心算法时间复杂度都是O(1),它表示系统的响应速度不依赖于系统任务的多少,负载的轻重,而只依赖于优先级的设计,就算当前系统满负荷运行,优先级高的事件发生后,系统仍将在指定的时间内立即响应事件。
而分时操作系统(如常见的Windows,Linux等)在负载严重的情况下不能保证事件的响应时间为确定值。
实时操作系统强调高优先级任务的及时响应,而分时操作系统则关心系统易用性、任务吞吐量等。

什么是硬实时,什么是软实时?

通俗来讲:

  • 硬实时:100%保证高优先级任务有一个确定的响应时间,且可以在这个时间内完成,不容差错。
  • 软实时:95%的情况下保证系统的实时性即可,容许偶然的超时情况发生。
    即,软实时只提供统计意义上的实时性。
    只有“非屏蔽中断+执行时间确定的ISR(中断服务程序)”才可以称为硬实时系统,因为这个系统明确告诉我什么时候完成操作。
阅读全文 »

Python笔记

杂项

列表遍历

1
2
3
4
5
# 整数步长
for i in range(1,10,2) # start,end,step
# 小数步长
for i in np.arrange(0,1,0.01) #start,end,step
for i in np.linspace(0,0.9,10) # 0-0.9的10等分

查看gpu情况

1
2
# 在命令行里
nvidia-smi
阅读全文 »

常用语法

注释

1
:: This line of code is commented out

开关回显

任何一条语句前面加@即不会回显;
echo off关闭后续回显;
@echo off即可关闭本行和后续的回显。

1
2
::关闭回显
@echo off

暂停

“请按任意键继续…”

1
pause
阅读全文 »

写于实习期结束在即,记录实习期间的一点点心得,分享给三个月前的自己与其他同样处境的小白。

5.13—8.15,结束了为期三个月的实习,参加了转正答辩,取得了不错的反馈。作为个人第一段企业实习,从刚进公司什么都不会到慢慢接触代码,配置开发环境,进行业务分析,期间经历了很多心态上的转变与能力上的提升。下面的内容不涉及复杂的专业知识,主要是心态与方法上的总结,期待在下一次实践中复用。

实习心得

入门——重视原理,分清主次

入门一个新领域最好的方式是什么?不论哪个细分方向,在刚来什么都不会的时候,都建议先从效果业务等与日常生活紧密相关的方面开始看。比如,对于影像领域来说,什么是自动对焦?什么是自动白平衡?这些知识一来平时经常接触,容易引起兴趣从而加深记忆,二来与晦涩的代码与xml文件相去甚远,不需要刻意下功夫就可以理解。

后面有机会更新一篇AE相关的内容,是我一个上午对着资料整理出来的学习笔记。

阅读全文 »

夜爬华山攻略

写于2023暑假,时效性有待确认。故事的起点,是一个恐高的赵老师…

准备

天气

微博“华山气象”每天播报未来三天天气:

根据天气,气温,日出观赏率,目前来看26号是个不错的选择。(呜呜,食言了)

阅读全文 »

基础命令

hexo s一键发布命令:

1
hexo clean && hexo generate && hexo deploy

本地部署:

1
2
hexo g && hexo s
hexo generate && hexo server

github部署:

1
2
hexo d
hexo deploy

创建新文章:

1
hexo new [layout] <filename>

推荐在obsidian中做相关配置后直接创建.md文件,更加方便。

阅读全文 »

快速运行

1
2
3
4
5
6
cd <your-project-name>
cd vue/vue
npm install
npm run build
// 或者
npm run serve

其中,build和serve是定义在package.json里的脚本命令,前者用于正式部署到服务器供用户使用,后者用于本地开发调试实时预览,支持热更新。

阅读全文 »
0%