完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
1.结构上,纯软件架构,并没有将一些过多的硬件外设编程放进去……扩展性很强。
2.数据封装格式上普遍采用枚举与结构体,这样清晰明了,很方便开发者阅读,其实在很多涉及操作系统的开发中枚举与结构体,这样可以提高开发者的软件水平和软件规范化. 3.采用指针结构,可以节省存储空间,动态灵活应用指针,可以简化程序,也可以提高MCU从业人员的软件水平。 4.非抢占式操作系统内核。消息处理机制比较简单,由于MCU尤其是51内部存储空间太小,不适合抢占式内核以及多任务并发处理,没有必要采用内存管理。 5.为了实现时间的精确性,满足实时性要求,具有软件定时器,可以模拟最多8个,这个软件定时器优点很大,可以做比如动画之类的东西,这样可以不受硬件定时器的数量限制,他是MS系统的标配,他的应用非常灵活,并且在MS3里面采用了两种软件定时器,一种是回调函数直接在中断里面处理,另外一种是在boot.c里处理,适合开销大的程序。甚至可以实现伪任务的概念。 6.采用了同步的消息传递进制,对任务的执行时间进行了精确的控制。 7.具有统一的按键处理,标准化了,并且软硬件费用最少,可靠性高。按键处理机制考虑了多种情况,按键扫描程序清晰简单,对长/短按键以及误按键都有良好的处理,并采用了按键映射方式。 8.多处采用了16bit的数据类型,可以有效地防止8bit下出现的一些问题,比如猜火车的情况,假如换成16bit的话临界点会到65536。 9.整体来说,作为一个操作系统更应该注重的是软件上的架构清晰,当然MS3有一些地方还是有一些混乱,但总体来说结构是很清楚,很容易让人明白的。另外作为51操作系统来说做到非抢占式内核就已经够了,没有必要对内存进行管理(尽管这个很高明),因为作为开发人员来说会尽量避免两个进程占用同一资源的情况。 10.其实如果从c51过渡到嵌入式以及手机软件开发(其实也是嵌入式),很多程序上的改变是软件架构,而非细节,细节可以慢慢学,整个软件架构的思想却是必须要养成的良好习惯,比如尽量多采用结构体、指针,使用动态指针,将数据分配在堆上有利于空间动态利用和回收,多用宏定义等。熟悉数据类型以及对编译器的要求的,熟悉Makefile,这才是关键。 这也是我这个MS系列操作系统从第一版本到现在MS3一直所强调展现的东西,清晰的软件架构,良好的编程风格,开源的精神,积极学习的态度,这是我们所推崇的。从大处着眼,小处动手,然后脱离出来总体审视上升到境界和层次,这才是做技术应该追求的! |
|
相关推荐 |
|
你正在撰写讨论
如果你是对讨论或其他讨论精选点评或询问,请使用“评论”功能。
938 浏览 0 评论
553 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-串口通讯编程示例之串口编写程序
1105 浏览 0 评论
STM32系列单片机可以让自己的GPIO去控制自己的RESET吗?有什么风险?可以规避吗?
1470 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-串口通讯编程示例之串口参数设置
895 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11590 浏览 31 评论
浏览过的版块 |
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-1 17:18 , Processed in 0.494794 second(s), Total 35, Slave 28 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号