PGOS是我个人独立编写的一套专门用于嵌入式系统的可剥夺的实时内核。PGOS主要面向仪器仪表,智能仪器,以及工业控制设备。PGOS将为这些设备提供强大的多任务支持。更重要的是,PGOS是一套开放源代码的RTOS。严格按照GNU/GPL协议发展。
目前PGOS最新的版本是v0.0.5 New Update。现在PGOS已经首先在i86架构上完成了移植。PGOS在编写时候注意到了可移植性的问题,PGOS可以很容易的移植任何处理器上去。目前正在进行针对ARM7TDMI的移植。
PGOS相对于著名的uC/OS-II,目前的优势(或者说不同点)如下 :
1) 信号量方面,允许用户自己选择队列选择算法,用户可以通过配置文件自己选择是FIFO方式(默认方式)选择还是PRIO方式选择。
2) 可选RoundRobin(时间片)调度支持。PGOS提供一种改进的时间片支持,用户可以自行设定每个任务的最大执行时间。当用户通过配制文件打开了PGOS RoundRobin支持后,系统将在预先(可以随时修改)的最大执行时间到后强行将当先的任务挂起,然后按照基于优先级的调度方法选择下一个就绪的任务执行。
3) PGOS提供一些判断函数,用户的可执行程序可以判断自己当前是运行与何种裁减模式下。
4) PGOS严格符合GNU/GPL版权协议。您可以选择将PGOS直接用于您的商业项目而不需要购买许可证。uC/OS-II在只有应用于教学时才是免费的。而配套的uC/GUI,uC/FS等更是价格昂贵。
目前PGOS只是v0.0.5版本,很多功能还在开发中。毕竟这是我个人的一点努力吧,发在这里,希望得到大家的支持,现在的PGOS还不成熟,也还不能直接应用于您的项目,但我想,只要大家都关心下,那么PGOS一定可以成熟起来。我现在大四,下个学期毕设不忙,我会全力更新PGOS的。
有关PGOS的信息,下载,评论,或者加入PGOS Team,请访问PGOS在GRO上的站点:
http://gro.clinux.org/projects/pgos/ |
|