首先,我们先问自己几个问题:
问:当前市场上有ucOS、freeRTOS、RT-thread 等内核、还有开源的linux等,为什么我们还要自己在开发一套内核呢?
ucOS 是商业收费的,freeRTOS 是一个免费的开源的内核,非常好用。RT-thread也是一款国产的实时内核,非常好用,强烈推荐大家使用 RT-thread。至于为什么还要自己开发一套实时内核呢?
一个是源于技术的追求。vnRTOS 是我大学的毕业设计,当时就觉得写内核是一件很 cool 的事情。接下来会有几篇文章详细讲解如何自己写内核,有兴趣的同学可以关注一波。
另外一个是技术的储备。我们写这个 vnRTOS 不是为了去取代 ucOS或者 FreeRTOS、RT-thread等。相反,我们觉得其它实时内核做得非常好,很值得我们去学习。而我们开发 vnRTOS 是为了将来有一天,当我们被别人卡脖子的时候(参考 某为 和 某米国的故事)。当我们没有内核可用时,我们有自己的技术,我们有自己的储备。
简而言之。。。这个 vnRTOS 就是个备胎。。。(不过备胎虽备胎,但是目前我们用这个 vnRTOS做了个物联网项目,目前还算稳定,比较适合一些微小型场合)
问:vnRTOS 开源吗?收费吗?
开源、免费。非常欢迎大家一起加入到内核的维护工作中去。
问:vnRTOS是实时操作系统吗?支持时间片调度算法不?
和目前主流的RTOS差不多。vnRTOS 支持任务优先级调度。系统总共有64个优先级。相同的优先级任务之间,采用时间片调度。可支持无限多个任务(内存够的话)
问:为什么叫 vnRTOS?有什么特别的含义吗?
vn 是 John von Neumann(冯·诺依曼)。John von Neumann是一位伟大的数学家。他设计的“冯·诺依曼架构”是计算机架构的一个经典。正是有了这个架构,才有了今天的计算机,也才会有了现今嵌入式系统中的核心——微控制器。为了向偶像致敬,故而暂时取名为 vnRTOS 。。。
问:如何获取源码
目前源码放在 gittee 上(github国内太慢了。。。)
https://gitee.com/qidiyun/QDos
自制国产实时内核——vnRTOS 所有文档: vnRTOS 文档