rtCell ― 实时微内核(可用GCC 3.xx、visual C++ 及 watcom C++ 编译)
该内核借鉴了minix、windows NT、linux的部分原理,具有下列功能:
1.完全抢占的多任务实时微内核,任务调度、等待与唤醒操作均具有良好的确定性(与任务数目无关)
独立的内核栈,中断和系统调用均切换到内核栈执行;
2.256个优先级,254个可用优先级1~254, 0为最高优先级(系统保留),255为空闲优先级;
3.不同优先级可完全抢占,同优先级之间可按先进先出直到阻塞,或时间片轮转方式执行,
可在任务对象创建时选择其执行方式;
4.在一系统(定时器服务)任务中实现内核定时器,用于超时等待内核对象、周期性定时器、任
务延迟;此(定时器服务)任务的优先级由其客户任务的最高优先级驱动,随之动态改变,以
消除优先级隐式反转现象;
5.任何内核对象用一整数ID标识,而非指针,从而可避免用户任务空指针的副作用,内核对
象总数不超过32768(即32K);
6.提供任务(Task)、互斥信号量(Mutex)、计数信号量(Semaphore)、位域标志(Flag)、
周期性定时器(Timer)、优先级消息(Message)和环形队列消息(Ring buffer)内核对象;
7.互斥信号量同时提供优先级继承和优先级置顶协议,在创建时设置,且总是按优先级等待;
8.其它对象的等待方式有,优先级等待和先进先出等待(节省内存),在创建时设置;
9.内核数据的同步,除在任务切换,及任务和内核之间切换堆栈时暂时关中断外,其它地
方均以延迟过程调用机制(DPC)执行;
10.系统调用以陷阱指令(x86中int指令)实现,易于扩展到具有“内存保护”的分级模式;
11.在内核中提供一个简单的堆内存分配机制,用于内核对象的动态内存分配;
12.在内核中实现了中断的进出接口,支持中断嵌套,计数信号量(Semaphore)、位域标志(Flag)、
优先级消息(Message)和环形队列消息(Ring buffer)的唤醒操作可在中断中执行,用户处理中断
时只需编写标准的C函数,而不必关心有关中断底层处理的细节。
32位内核,在 windows 2000,mingwin 4.0(gcc 3.xx)和 visual C++ 5.0/6.0 下编译通过;
16位内核,在 windows 2000,Open watcom C/C++ 1.3 下编译通过。
rtCell_vc5_sources.rar ,rtCell_vc5.rar 是32位实时微内核rtCell32的库文件(含串行通信、磁盘及fat16文件操作等源代码),请用visual C++ 5.0/6.0编译。
watcom_C16.rar 是16位实时微内核rtCell的DOS库文件(仅适用于open watcom c/c++);
bochs.rar 中为 rtCell 在“虚拟机软件 bochs ”中的硬盘引导启动演示;
该演示中用 freedos boot loader 从 fat16 格式文件系统加载到 0x600 处执行。
16位rtCell编译后有 50 k 左右,包括静态分配的 4k 内核栈和4 k 有余的其它内核数据;
32位rtCell编译后有 87 k 左右,包括静态分配的 8k 内核栈和4 k 有余的其它内核数据。
32位 rtCell 在 P4 、1.7G、256 M 内存的“联想机器”上,
进行了连续10天的稳定性、可靠性测试。
E-mail:taowentao_twt@163.com
点击超连接下载文件:
附件 1: rtCell_vc5.rar (2005-12-16 05:38 PM, 127.07 K)
附件 2: bochs.rar (2005-12-19 10:00 AM, 849.1 K)
附件 3: rtCell_vc5_sources.rar (2005-12-19 10:04 AM, 127.07 K)
附件 4: watcom_C16.rar (2005-12-19 10:08 AM, 116.45 K)
真正的多任务、多(文本模式)窗口演示:
中断驱动的鼠标、键盘,事件驱动的多窗口,真正的多任务,完全抢占的实时微内核;
红色标题为活动窗口,蓝色标题为非活动窗口,非活动窗口可后台动态刷新;
其中一个窗口显示任务状态,另外两个窗口显示当前时间及“窗口”二字,桌面显示键盘输入;
可用鼠标移动、激活窗口、(窗口右下角)改变窗口大小。
“ctrl + z”键切换到任务状态窗口。
qemu_0.8_domo.rar 内是在windows下虚拟机软件qemu上的演示,解压缩后,执行rtCell.bat;
dos_demo.rar (demo.exe及demo_.exe)用于在纯dos(windows上无鼠标)下,用串行鼠标演示。
附件 1: qemu_0.8_domo.rar (2006-1-14 04:02 PM, 884.88 K,下载次数: 44)
附件 2: dos_demo.rar (2006-1-23 12:02 PM, 64.06 K,下载次数: 6)
更多内容请到:
http://www.cn-dos.net/forum/viewthread.php?tid=16538&fpage=0&highlight=&page=1
查阅。
[此贴子已经被作者于2006-2-20 11:21:51编辑过]
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |