免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2741 | 回复: 9
打印 上一主题 下一主题

16/32位实时微内核真正的图形模式多窗口演示 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-12-26 13:20 |只看该作者 |倒序浏览
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函数,而不必关心有关中断底层处理的细节。

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++);

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   

bochs.rar 中为 rtCell 在虚拟机软件 bochs 中的演示。

关于鼠标(ps2普通串口鼠标)、键盘源代码请到
FreeDOS-32 release 0.0.5(http://umn.dl.sourceforge.net/so ... 2-0.0.5-src.tar.bz2)下查阅。

详细说明请进:http://linux.insigma.com.cn/devb ... p;ID=213&page=1
              或 http://www.cn-dos.net/forum/viewthread.php?tid=16538&fpage=1

点击超连接下载文件:

附件 1:  
rtCell_vc5.rar (2005-12-16 05:38 PM, 127.07 K)
http://www.cn-dos.net/forum/atta ... 9e88&download=1

附件 2:  
bochs.rar (2005-12-19 10:00 AM, 849.1 K)
http://www.cn-dos.net/forum/atta ... 4727&download=1

附件 3:  
rtCell_vc5_sources.rar (2005-12-19 10:04 AM, 127.07 K)
http://www.cn-dos.net/forum/atta ... 9e88&download=1

附件 4:  
watcom_C16.rar (2005-12-19 10:08 AM, 116.45 K)
http://www.cn-dos.net/forum/atta ... 474c&download=1

     真正的多任务、多(文本模式)窗口演示程序:

   中断驱动的鼠标、键盘,事件驱动的多窗口,真正的多任务,完全抢占的实时微内核;

   红色标题为活动窗口,蓝色标题为非活动窗口,非活动窗口可后台动态刷新;

   其中一个窗口显示任务状态,另外两个窗口显示当前时间及“窗口”二字,桌面显示键盘输入;

   可用鼠标移动、激活窗口、(窗口右下角)改变窗口大小。

   “ctrl + z”键切换到任务状态窗口。

附件 1:  qemu_0.8_domo.rar内是在虚拟机上的演示,解压缩,执行rtCell.bat后,鼠标点击窗口;
下载连接:
http://www.cn-dos.net/forum/atta ... 72c0&download=1

附件 2:  dos_demo.rar (demo.exe及demo_.exe)用于在纯dos(windows上无鼠标)下,用串行鼠标演示。
下载连接:
http://www.cn-dos.net/forum/atta ... 2353&download=1

[ 本帖最后由 taowentao 于 2006-10-5 11:20 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2005-12-26 15:10 |只看该作者
楼主真是利害,小弟受用了;up up up!!!

论坛徽章:
0
3 [报告]
发表于 2005-12-26 16:12 |只看该作者
楼主自己写的吗?钦佩中……

论坛徽章:
0
4 [报告]
发表于 2005-12-26 17:25 |只看该作者
rtCell 的内核程序有 7200 余行,全部是我自己设计并编写的;

鼠标、键盘、文件、串口等设备驱动程序借鉴了一些开源os源代码,其驱动方式符合实时应用规则:中断过程收集数据后发送到任务,由任务接受并处理数据。

16位rtCell编译后有 50 余 k,包括静态分配的 4k 内核栈和4 k 有余的其它内核数据;
32位rtCell编译后有 87 k 左右,包括静态分配的 8k 内核栈和4 k 有余的其它内核数据。

bochs.rar 中为 rtCell 在“虚拟机软件 bochs ”中的硬盘引导启动演示;
该演示中用 freedos boot loader 从 fat16 格式文件系统加载到 0x600 处执行。


32位 rtCell 在 P4 、1.7G、256 M 内存的“联想机器”上,
进行了连续10天的稳定性、可靠性测试。

[ 本帖最后由 taowentao 于 2006-1-14 10:22 编辑 ]

论坛徽章:
0
5 [报告]
发表于 2006-01-14 10:21 |只看该作者
真正的多任务、多(文本模式)窗口演示程序(有2秒钟的等待时间):

红色标题为活动窗口,蓝色标题为非活动窗口,非活动窗口可后台动态刷新;

其中一个窗口显示任务状态,另外两个窗口显示当前时间,桌面显示键盘输入;

可用鼠标移动、激活窗口。

“ctrl + z”热键,切换到任务状态窗口。


附件 1:  qemu_0.8_domo.rar内是在虚拟机上的演示,解压缩,执行rtCell.bat后,鼠标点击窗口;
下载连接:
http://www.cn-dos.net/forum/atta ... 72c0&download=1

[ 本帖最后由 taowentao 于 2006-1-23 12:44 编辑 ]

论坛徽章:
0
6 [报告]
发表于 2006-01-14 10:32 |只看该作者
Good job!

论坛徽章:
0
7 [报告]
发表于 2006-01-14 16:44 |只看该作者
真正的多任务、多(文本模式)窗口演示程序:

中断驱动的鼠标、键盘,事件驱动的多窗口,真正的多任务,完全抢占的实时微内核;

红色标题为活动窗口,蓝色标题为非活动窗口,非活动窗口可后台动态刷新;

其中一个窗口显示任务状态,另外两个窗口显示当前时间及“窗口”二字,桌面显示键盘输入;

可用鼠标移动、激活窗口、(窗口右下角)改变窗口大小。

“ctrl + z”键切换到任务状态窗口。

附件 1:  qemu_0.8_domo.rar内是在虚拟机上的演示,解压缩,执行rtCell.bat后,鼠标点击窗口;
下载连接:
http://www.cn-dos.net/forum/atta ... 72c0&download=1

附件 2:  dos_demo.rar (demo.exe及demo_.exe)用于在纯dos(windows上无鼠标)下,用串行鼠标演示。
下载连接:
http://www.cn-dos.net/forum/atta ... 2353&download=1

[ 本帖最后由 taowentao 于 2006-1-23 12:21 编辑 ]

论坛徽章:
0
8 [报告]
发表于 2006-10-05 11:18 |只看该作者

真正的图形模式多窗口演示

真正的图形模式多窗口 - 全部源代码(C 语言)不到六千行,具有下列功能:

1. 完善而精巧的多视口裁剪和消隐处理,与实时微内核rtCell紧密结合;

2. 真正的事件(或消息)驱动的多窗口技术,且支持顶层窗口和透明窗口;

3. 当前支持Label、Edit、Botton、Slider和Checkbox控件,其中的Edit控件支持剪切、复制和粘贴;

4. 支持窗口的平移、缩放,和窗口系统按钮,及窗口和控件的过程回调;

5. 内存需求小(不到64K),窗口和控件所耗内存很小,因此实用性强,包括rtCell、鼠标、键盘及图形驱动,在DOS下也仅 100 多 K 字节。


        演示方法:解压缩gui_Test.rar,在windows下(双击)执行gui_Test.bat,
                  
                  或在纯dos下直接执行bc_gui.exe(在windows的dos窗口中无鼠标)。

        注意:本演示中由于包含一个说明性位图而使得bc_gui.exe比较大。

下载地址:http://zhenlove.com.cn/cndos/fileup/files/gui_Test.rar

论坛徽章:
0
9 [报告]
发表于 2006-10-06 13:46 |只看该作者
你这个还得交由专业机构测试吧
且用了QENU,可能最多是内核管理及调度,不知MM管理怎么样?还有文件系统/网络层呢?GUI层呢?
代码量决定了肯定没有通信组件层,不过这种精神可佳,值得称道。

如果以后有机会,我成立了Media Studio,可以与我联系。

OBrire@gmail.com

[ 本帖最后由 obrire 于 2006-10-6 13:53 编辑 ]

论坛徽章:
0
10 [报告]
发表于 2007-01-02 14:53 |只看该作者
rtCell 真正的图形模式多窗口 - 用 Borland C 编写,具有下列功能:

1. 完善而精巧的多视口裁剪和消隐处理,与实时微内核rtCell紧密结合;

2. 真正的事件(或消息)驱动的多窗口技术,且支持顶层窗口和透明窗口;

3. 当前支持Label、Edit、Botton、Slider、Listbox、TreeView和Checkbox控件,其中的
    Edit控件支持剪切、复制和粘贴(ctrl+x,ctrl+c,ctrl+v);

4. 支持窗口的平移、缩放,和窗口系统按钮,及窗口和控件的过程回调;

5. 内存需求小(不到64K),窗口和控件所耗内存很小(全部采用直接读写显存技术,没有内存设备),
    因此实用性强,包括rtCell、鼠标、键盘及图形驱动,在DOS下也仅 100 多 K 字节。


        演示方法:解压缩gui_Test.rar,在windows下(双击)执行gui_Test.bat,
                  
                  或在纯dos下直接执行bc_gui.exe(在windows的dos窗口中无鼠标)。

        注意:本演示中由于包含一个说明性位图而使得bc_gui.exe比较大。

下载地址:
http://zhenlove.com.cn/cndos/fileup/files/bc_gui.rar
http://zhenlove.com.cn/cndos/fileup/files/bc_gui.zip

邮件地址: taowentao_twt@sohu.com , taowentao_twt@163.com

[ 本帖最后由 taowentao 于 2007-1-2 15:11 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP