首页
论坛
电子技术基础
模拟技术
可编程器件
嵌入式系统与MCU
工程师职场
最新帖子
问答
版主申请
每月抽奖
商城免费换礼
社区有奖活动
博客
下载
评测
视频
文库
芯语
资源
2025泰克杭州测试论坛
2025中国低空经济产业创新发展大会
【直播】芯片设计工艺仿真全解析
西门子数字化工业软件资源中心
嵌入式设计资源库
智能楼宇/家电控制应用全解析
在线研讨会
EE直播间
小测验
白皮书
行业及技术活动
杂志免费订阅
免费在线工具
厂商资源中心
论坛
博文
电子工程专辑
电子技术设计
国际电子商情
资料
白皮书
研讨会
芯语
文库
登录|注册
登录
雁塔菜农
修改
文章:
1274
阅读:
4958270
评论:
678
赞:
9057
俺是农民俺怕谁???
好友
私信
个人主页
俺是农民俺怕谁???
文章
1274
原创
0
阅读
4958270
评论
678
赞
9057
原创
菜农心目中之OS即对HotOS系列之展望和安全意识
2009-2-22 08:38
2728
7
7
分类:
MCU/ 嵌入式
hotpower
发表于 2009-2-22 08:25
侃单片机
←返回版面
2楼:
哈哈~~~警告:看帖者自戴墨镜
hotpower
发表于 2009-2-22 08:24
侃单片机
←返回版面
楼主:
菜农心目中之OS即对HotOS系列之展望和安全意识
随着HotTasm51之研究和编写的进展,以及嵌入式专家吴旭光教授屈尊地加盟
HotPower的农会组织,俺久久不能入睡,真可谓“彻夜难眠”~~~
和吴教授的多次探讨,更让俺增强了信心和“胆量”。
首先,我选定了从51开始俺的HotOS系列的“开始旅程”,在DSP的54系列上
俺也进行了85%的研究,但是那时可以C/C++,他们的构架和资源差距很大,
再者,俺心里也选中了AVR,因为小芯片的记得有个汇编级源码的OS.
也想在ARM7的LPC213X/LPC214X上开刀~~~至少俺在其“防御系统”上实现
了突破~~~
在OS的编写上,有些代码是要用汇编才能实现的,这不单单是速度的问题,
实际速度并非重要,而是限于C语言有些对方根本访问不到,也限制了发挥。
一般所有的编译器都可以嵌入汇编代码,但Keil C51还要设置几个地方,虽然
不难,但总觉得别扭~~~
对于机器级来讲,代码和数据是很难区分的:
当机器运行过的地方,肯定是代码(当然也可用于加密校验及防止改写代码)。
否则,代码的可能性少点,应该认为是数据。
所以,由于汇编代码的不同,导致了OS的不同~~~
若是用汇编数组又如何呢???
所以俺在HotTask51上使用了汇编数组并计划将其用COM接口来封装。
再进一步将HotTask51用COM接口封装,那么不就和微软在DLL越发不可收拾时
推出COM接口来进行对DLL的再封装,这样就实现了不需将DLL用C++来编写
即可达到C++之效果~~~
若是COM技术的早几年的推出,我们的PC机里就不会出现居多的DLL文件~~
所以,菜农对COM技术进行了深入研究和在CVI和DSP上进行了实验并成功实现。
那么若能在51上实现又能如何呢???
都是C语言,都有结构及指针,以及位域和联合,所以51也能从COM接口中
完成更强的功能~~~
目前的OS特别是能在MCU上运行的,菜农说心里话都不满意,理由:
1. 满世界的全局变量及宏定义让人“眼晕”~~~简直是A人之举~~~
无任何封装的概念~~~也难怪那些“OS的先烈们”了~~~
2. 神秘的内核让人“心醉”,华丽的外衣让人更想“裸了才爽”~~~
51十分紧张的资源使那些“爱美的人们”不得不放下那“皇帝的外衣”
3. 现在是“拇指一代”了,任务的创建和配置,都很晕~~~
由于编译器软件厂家的OS虽然和环境无缝连接,但天文数字的费用实在
不能接受~~~想学习学习也要背个“D人”之名,难呀~~~
4. 开源OS之病在于原作者和厂家有很大之不同~~~
首先是与环境的链接,当然像uCOS-II嵌入在IAR内固然很好,但~~~
再者小容量MCU各在不同的干扰环境下的表现也不同,所以,这些应用
群体的硬件上都有硬件看门狗之类的防护,虽然不盼着狗咬,但没人
敢在设计上将狗遗忘~~~至少俺没这个胆量~~~
所以在开工HotTask51之决定时,狗任务那是排第一的~~~
综合以上所述,故俺要PK~~~至少俺有“唐吉珂德之精神”~~~
在起点上,定调已把俺“雷翻”~~~
首先在Keil C51环境下,实现脚本文件的嵌入,这样可对任务及硬件的配置
实现“傻瓜设置”,即在编译前即搞定之,故最后决定放弃初始化任务中的
动态装载任务,改由对静待装载的确认,为使核占用资源更小,将凡涉及任务
指针、永不改写的参数都移入FLASH中,并像在LPCARM中应用很成功的防御体系
之中的精华---将中断向量表的地址改为中断号管理,这样虽说散转稍慢些,
但它可以捕捉错误,并保证中断、事件及任务程序入口的安全~~~
如何保证呢???这要追述到“中断喂狗”和“主程序喂狗”之争来了~~~
后者即“中断喂狗”的反对者观点大概如下:
“主程序飞但中断还在喂狗!!!”,所以结论是:不能在中断中喂狗。
反方的强烈支持者和俺自称是“狗论的缔造者”的菜农答曰:
正方自己打嘴巴~~~他承认了中断比主循环更安全,程序即使飞了下次还能
进入运行~~~
哈哈~~~因为中断的地址是固定的,不可改写的,是有很规律的地址表格,
即中断向量~~~虽然有2种代表方式,即指针或跳转地址。
所以,中断比主循环更安全~~~即使错几次,他总要回来,这是硬件的中断
机制所造成的~~~
所以菜农要将没一个任务和事件变成“中断机制”,将它们的地址用51的4组
中断向量表来填入,即所有任务函数都用真的中断函数来声明~~~
因为这次是针对52系列,它的中断源不会超过24个,故Keil C51允许使用4组
的情况下,HotTask51用了后16个,其中8个为任务,另8个作为其他中断的后台
处理任务。
故在菜农的心目中,把OS的组级别分成了:
1.中断
在HotTask51中,占用了T2定时器,主要是它能自动装载。特别是它的中断标志
TF2不能像T0/T1一样不能被自动清除,真可谓是天天生了“一副OS的模样”~~
一样这样就可分清是节拍定时中断,还是其他中断及事件和任务软中断。
哈哈~~~老天都在祝俺~~~谁就早知道TF2是OS专门不清零TF2的请举手~~~
2.事件
菜农俺无文化,说不出规范之语,故在HotTask51中是这样定义的:
当硬件中断紧急事务处理结束后,应该立即退出,而且必须在每个节拍之内
处理结束,否则应该进行“中断隐身”:
即上半身为“前台”,用于处理紧急事务,级别为特权级,它的级别有硬件设定。
下本身为“后台”,即做“中断隐身”操作后,级别降为“事件”,它比任何
任务的级别都高,但HotTask51私自规定:“狗”的权利归农会~~~
3.任务
在HotTask51中,任务包含了任务与OS有关和无关的事务~~~
任务由节拍中断触发同步,也可由高级别中断退出或隐身软中断异步进入。
也可由同级任务主动弃权后的软中断再入。
所以,HotTask51将问题简单化并有同一节拍中断的隐身转由节拍“事件”
来处理任务的优先级,节拍的申请及其他中断的“事件”等多复杂操作。
故HotTask51只承认三种形式的请求:中断-->事件-->任务。
而且它们的中断地址都为51的中断地址:N*8+3.
它们可以最多4组(51硬件决定),故管理只需5个位来管理
其中2位作为4组的组号管理,它可以用来做4种区分:
中断,保留中断,事件,任务。
另3位用来做组内具体为哪个中断、保留中断、事件和任务。
故“红色之脑浆”用5位来PK中断向量表中的4(组)*8(个)*16位(地址位长)
最不太“精妙”,也未让人享受到其“防御体系之威力”,但数的概念
总能知道此回合应该判菜农“胜出”~~~
再者,狗任务是所有事件中的最高级别,也就是说它在节拍中断时间片里,
它永远排第一~~~因为它要先“排雷”“安检”及“验票”~~~
HotTask51的核即节拍事件,它采用高速数字处理中的预测处理算法,它能
在任务就绪后立即做出切换操作!!!
所以,HotTask51在设计的理念上还是够新潮的~~~因为它被菜农在理论
上设计为强实时的具有霸权的OS~~~
菜农在吴教授的解释和提醒下,记得见过对强实时的定义,估计无终论。
所以俺想在强实时和零耗时任务切换上都来个“红杏出墙”玩玩~~~
也好早给《keil c51红杏出墙记》找个“好婆家”嫁了算了~~~
不能老让它总是《Keil C51红杏出墙记》节选~~~
但愿这次搞成,俺一定写个搞笑的《Keil C51红杏出墙记》终结篇~~
HotPower农会主席 菜农 HotPower@126.com 2009.2.22 论道于小白菜基地
keil c51红杏出墙记
写原创有奖励!2025面包板原创奖励正在进行中
最新发表
推荐阅读
明星博主
原创博文
年度排行
博文排行
博文评论
FPGA/CPLD
MCU/ 嵌入式
模拟
电源/新能源
测试测量
通信
智能手机
处理器与DSP
PCB
汽车电子
消费电子
智能硬件
物联网
软件与OS
采购与分销
供应链管理
工程师职场
EDA/ IP/ 设计与制造
无人机
机器人/ AI
医疗电子
工业电子
管理
写博文
点赞(
7
)
收藏
分享到:
上一篇:
俺不雷翻一大片,“天理都难容”~~~
下一篇:
HotC51正式提交选美参赛计划书
PARTNER CONTENT
换一换>
更多>
ST移动安全解决方案:构建全场景安全连接生态
赵明灿
2025-05-12
文章评论
(
0
条评论)
登录
后参与讨论
您需要登录后才可以评论
登录
|
立即注册
发布
雁塔菜农
修改
文章:
1274
阅读:
4958270
评论:
678
赞:
9057
俺是农民俺怕谁???
好友
私信
个人主页
俺是农民俺怕谁???
文章
1274
原创
0
阅读
4958270
评论
678
赞
9057
最新评论
更多
https://www.historycouncilvic.org.au/barbara12/lufthansa_tel_fono_mexico_c_mo_puedo_hablar_con_una_persona_en_lufthansa ...
用户1749147 ...
评论博文
2025-6-6
万豪“嫁”美团:老牌酒店的“中国变身” ...
https://www.historycouncilvic.org.au/barbara12/lufthansa_tel_fono_mexico_c_mo_puedo_hablar_con_una_persona_en_lufthansa ...
用户1749147 ...
评论博文
2025-6-6
10. ESP32开发之LED闪烁和呼吸的实现 ...
https://www.historycouncilvic.org.au/barbara12/lufthansa_tel_fono_mexico_c_mo_puedo_hablar_con_una_persona_en_lufthansa ...
用户1749147 ...
评论博文
2025-6-6
深入解析Wi-Fi 7 Multi-Link Operation (ML ...
最新
博文
天猫精灵打响智能音箱AI装备战,行业 ...
深入解析Wi-Fi 7 Multi-Link Operatio ...
技术干货 | ADC静态参数全解析:从偏 ...
资料下载
本周热帖
一些LED灯的3D模型
PCIe563XD系列多功能数据采集卡 说明 ...
几个Micro USB接口的3D模型
Altium 自带的电子元件库
Altium 自带连接器封装
【资料下载-第一季】开关电源、KiCad ...
【Milk-V Duo 开发板】+初用体验 ...
E币兑换迟迟未兑现
保障电路安全:稳压二极管并联应用技 ...
解读LED车灯因高温引起的光衰问题 ...
最新资讯
芯语最新
为什么边缘计算和6G智能将继续成为“ ...
低空经济赋能未来:成都领航产业创新 ...
低空经济赋能未来:成都领航产业创新 ...
筑牢安全性能双基石,守护万亿低空通 ...
10BASE-T1S以太网:连接物理世界和数 ...
两大芯片巨头联手!剑指滤波器国产新 ...
湖南:全力打造北斗规模应用引领区 ...
我国成功发射卫星互联网低轨卫星 ...
快手可灵AI月度付费金额连续两月破1亿 ...
微软CEO称与OpenAI的关系正在调整 ...
EE直播间
更多
常用电测仪表的校准展示
直播时间: 06月20日 10:00
Keysight World Tech Day 线上直播-AI 驱动的超高速传输测试分论坛
直播时间: 06月26日 13:30
材料介电常数的精确表征和测试
直播时间: 07月03日 10:00
在线研讨会
更多
ADI人形机器人解决方案
ST 在大功率热管理系统中的电机控制系统方案(AI 数据中心/暖通空调/电池储能系统/变频制冷)
Mercury基于展频技术的医疗时钟EMI抑制方案
AI 巨型芯片,性能越强,测试越难,如何破局?
热门
推荐
万亿市场风口怎么抓?5场研讨会解锁3D IC设计“通关秘籍”
工程师速看!测介电常数,赢取豪华大礼!
这个被忽视的环节,竟然是提升工作质量的关键!
工程师救星!超快处理器,高清屏,轻松搞定测量,速抢演示!
我要评论
0
7
分享到微信
分享到微博
分享到QQ
点击右上角,分享到朋友圈
我知道啦
请使用浏览器分享功能
我知道啦
关闭
站长推荐
/2
2025第1期拆解活动:赢示波器、运动相机、热像仪等!
示波器、影石运动全景相机、大疆无人机、高清红外热成像仪;树莓派5等等
【2025面包板社区内容狂欢节】发帖/回帖赢25万E币!
活动时间:即日起——2025年全年(发完20万E币为止!)
首页
论坛
电子技术基础
模拟技术
可编程器件
嵌入式系统与MCU
工程师职场
最新帖子
问答
版主申请
每月抽奖
商城免费换礼
社区有奖活动
博客
下载
评测
视频
文库
芯语
资源
2025泰克杭州测试论坛
2025中国低空经济产业创新发展大会
【直播】芯片设计工艺仿真全解析
西门子数字化工业软件资源中心
嵌入式设计资源库
智能楼宇/家电控制应用全解析
在线研讨会
EE直播间
小测验
白皮书
行业及技术活动
杂志免费订阅
免费在线工具
厂商资源中心
帖子
博文
返回顶部
×
文章评论(0条评论)
登录后参与讨论