ckOSv1.1.2
所属分类:单片机开发
开发工具:C/C++
文件大小:39KB
下载次数:20
上传日期:2008-04-20 00:51:34
上 传 者:
bryan feng
说明: 一个用在51单片机上的调度器
后续版本将出现可占先式调度
(A single-chip microcomputer 51 used in the scheduler will be follow-up version of Preemptive Scheduling)
文件列表:
ckOS v1.1.2\CPU\8051\OS_CPU.c (2943, 2008-02-01)
ckOS v1.1.2\EX_LED\LED_Flash.c (722, 2008-01-30)
ckOS v1.1.2\EX_LED\LED_Flash.h (386, 2008-01-21)
ckOS v1.1.2\EX_LED\main.lst (2844, 2008-01-29)
ckOS v1.1.2\EX_LED\main.obj (3329, 2008-01-29)
ckOS v1.1.2\EX_LED\LED_Flash.Uv2 (2361, 2008-01-29)
ckOS v1.1.2\EX_LED\LED_Flash.Opt (2122, 2008-02-04)
ckOS v1.1.2\EX_LED\LED_Flash_Uv2.Bak (2361, 2008-01-29)
ckOS v1.1.2\EX_LED\LED_Flash.plg (401, 2008-02-04)
ckOS v1.1.2\EX_LED\LED_Flash.lnp (116, 2008-02-04)
ckOS v1.1.2\EX_LED\LED_Flash.M51 (13155, 2008-02-04)
ckOS v1.1.2\EX_LED\LED_Flash.hex (1535, 2008-01-29)
ckOS v1.1.2\EX_LED\STARTUP.A51 (6376, 2005-03-22)
ckOS v1.1.2\EX_LED\STARTUP.LST (14049, 2008-02-04)
ckOS v1.1.2\EX_LED\STARTUP.OBJ (749, 2008-02-04)
ckOS v1.1.2\EX_LED\OS_core.lst (9272, 2008-02-04)
ckOS v1.1.2\EX_LED\OS_core.obj (6091, 2008-02-04)
ckOS v1.1.2\EX_LED\OS_CPU.lst (6337, 2008-02-04)
ckOS v1.1.2\EX_LED\OS_CPU.obj (4372, 2008-02-04)
ckOS v1.1.2\EX_LED\LED_Flash.LST (2234, 2008-02-04)
ckOS v1.1.2\EX_LED\LED_Flash.OBJ (2211, 2008-02-04)
ckOS v1.1.2\EX_LED\cKOS.lst (2697, 2008-02-04)
ckOS v1.1.2\EX_LED\cKOS.obj (3245, 2008-02-04)
ckOS v1.1.2\EX_LED\LED_Flash (14928, 2008-02-04)
ckOS v1.1.2\EX_LED\LED_Flash_Opt.Bak (2118, 2008-02-01)
ckOS v1.1.2\CORE\OS_core.c (4755, 2008-01-31)
ckOS v1.1.2\CORE\cKOS.c (1183, 2008-02-01)
ckOS v1.1.2\INC\OS_core.h (1633, 2008-01-30)
ckOS v1.1.2\INC\IO_Port.h (830, 2008-01-29)
ckOS v1.1.2\INC\OS_CPU.h (1259, 2008-01-30)
ckOS v1.1.2\INC\OS_cfg.h (947, 2008-01-30)
ckOS v1.1.2\CPU\PIC (0, 2008-01-31)
ckOS v1.1.2\CPU\AVR (0, 2008-01-31)
ckOS v1.1.2\CPU\8051 (0, 2008-01-31)
ckOS v1.1.2\CPU (0, 2008-01-31)
ckOS v1.1.2\Debug Info (0, 2008-01-31)
ckOS v1.1.2\EX_LED (0, 2008-01-31)
ckOS v1.1.2\CORE (0, 2008-01-31)
ckOS v1.1.2\INC (0, 2008-01-31)
... ...
ck/OS
作 者:冯耿超
联系方式:QQ:344512941 / E-mail:fgc8586@126.com
版 本:V1.0
发行日期:2008-01-01
声 明:ck/OS代码完全开源,可以被任何人合法使用,包括商用(直到原创作者声明商用条件为止)。使用人只要把修
改后的内核发给作者作为后续版本升级使用即可。(后续升级的作者会添加修改内核超过50%的笔者名字并作为第二作者)
ck/OS是一个非占先式调度法也称合作型多任务,各个任务彼此合作共享一个CPU。中断服务可以使一个高优先级的
任务由挂起状态变为就绪状态。但是中断服务以后控制权还是回到原来被中断了的那个任务,直到该任务主动放弃CPU的使
用权时,那个高优先级的任务才能获得CPU的使用权。非占先式内核的一个特点是几乎不需要使用信号量保护共享数据。运
行着的任务占有CPU,而不必担心被别的任务抢占。
非占先式内核的最大缺陷在于其响应高优先级的任务慢,任务已经进入就绪状态,但还不能运行,也许要等很长时
间,直到当前运行着的任务释放CPU。内核的任务响应时间是不确定的,不直到什么时候最高优先级的任务才能得到CPU的控
制权,完全取决于应用程序什么时候释放CPU。
解决非占先式内核的这一缺陷的一个方法是,从任务的运行时间入手。假如,系统被Tms中断一次,刷新一次系统
时标。系统有4个任务,任务1的执行时间为T1ms,任务2的执行时间为T2ms,任务3的执行时间为T3ms,任务4的执行时间为
T4ms。当T1+T2+T3+T4 < T 时可以解决这一缺陷,使得高优先级的任务能够及时得到CPU的使用权。
ck/OS专注于单片机的软件设计上,主要应用在片上存储器小的器件上,省去扩展ROM和RAM的麻烦,并且能够稳定
、实时的管理运行任务。后续版本将把内核改为占先式。
文件内容如下:
1、INC文件夹 存放了内核头文件,移植时只需对里面的OS_CPU.H和OS_port.H进行相应的修改。
2、core文件夹 存放着与CPU无关的代码,全部用C语言编写,可以全部移植到具体的MCU上,而不必进行修改。
3、CPU文件夹 存放着与MCU紧密相关的文件,移植时需要对OS_CPU.C这个文件进行相应的修改。
4、EX_LED文件夹 为任务代码,用户只需要把自己编写的代码存放在指定的文件夹里,然后覆盖此文件夹即可。
5、Debug Info 文件夹为调试输出文件,包括HEX BIN文件等等。
近期下载者:
相关文件:
收藏者: