huangqi412 / DoraOS

DoraOS

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DoraOS

DoraOS 是我个人所写的RTOS内核,结合FreeRTOS、uCOS, RT-Thread, LiteOS 的特性所写,取其精华,去其糟粕,本项目将持续维护,欢迎大家fork与star。

名字的由来:Dora 谐音为哆啦,我个人非常喜欢哆啦A梦,梦想有一天能将哆啦A梦2577集看完(可惜程序员太忙没时间).... OS则为操作系统 Operating System。

目前已实现M3内核的任务切换与调度。理论上支持无限多个优先级,采用bit map方式寻找最高优先级任务,支持时间片调度。

内存管理算法采用“最佳匹配”算法,每个内存块节点信息结构只需 8 Byte,在内存堆首部存在内存管理信息控制块,大小为 16 Byte。采用内存切割与合并管理,最大化降低内存碎片的产生。

文件目录如下:
DoraOS
├─cpu
│  ├─cortex-m3
│  │      cpu.c
│  │      port.c
│  │      
│  └─cortex-m4
│          cpu.c
│          
├─demo
│ 
├─include
│  │  list.h
│  │  task.h
│  │  
│  ├─config
│  │      debug.h
│  │      dos_config.h
│  │      dos_def.h
│  │      
│  ├─mem
│  │      mem.h
│  │      
│  └─port
│          port.h
│          
├─mem
│      mem.c
│      
└─src
        list.c
        task.c

About

DoraOS

License:GNU General Public License v3.0


Languages

Language:C 99.0%Language:C++ 0.3%Language:CMake 0.3%Language:Makefile 0.2%Language:Assembly 0.1%Language:Perl 0.1%Language:HTML 0.1%Language:Objective-C 0.0%