pSOS简介 http://www.hudong.com/wiki/pSOS
pSOS操作系统介绍 http://www.docin.com/p-3295214.htmlpSOS和VxWorks的比较 http://soft1.icdown.net/flame060325188.pdf
pSOS简介 http://hi.baidu.com/greatthomas/blog/item/952bf05c5c291a4bfbf2c07f.html
pSOSystem 操作系统是一个高性能、高度模块化的实时操作系统,他完整的提供了基于开放系统标准的多任务环境,被广泛应用于嵌入式微处理器程序开发。pSOSystem实时多任务操作系统内核是以库文件方式存在,他有用于不同CPU的不同OS版本。提供给我们的编程语言接口是C/C++和汇编。像其他操作系统一样,pSOSystem操作系统有它的系统调用,让上层应用使用系统的功能。pSOSystem 操作系统的交插开发环境工具(包括编辑、编译和调试)可以驻留在UNIX或DOS主机上,他们通过串口或以太网同目标机建立通讯链接。
pSOSystem操作系统是一个模块化高度可配置的操作系统,整个系统的结构如上图:pSOSystem的内核及各个模块都是硬件独立的,不依赖于具体的硬件,不对硬件作假设。由用户提供或配置OS提供的具体的硬件相关的驱动程序或接口程序。在上图的整个系统中,深灰框内是系统内核及系统模块,只需对其按要求进行配置或为其提供驱动程序。在浅灰色框内的部分包括:用户任务(User Task)、中断处理程序(Interrupt Handlers)、设备驱动程序(Drivers)。这三个部分是由用户来做的,做BSP程序主要是编写中断处理程序和设备驱动程序,而编写上层应用程序是编写各个任务(Tasks)。宏观上多个Task是可以并行执行的,也就是说,一个Task在执行过程中可以被另一个Task所打断,存在多个Task都在执行,但是都未结束的情况。当然在微观上多个Task是串行的(对单个CPU)。在什么情况下会发生Task切换呢?只有在发生某一个系统事件的时候,pSOS+便检查现在该哪个Task运行了,如果不是当前Task,便会发生Task 切换。一般只有发生系统调用时才可能发生系统事件。
BSP(Board-Support Package)板级支持包,是完成用户硬件板功能的程序包,他包括目标系统硬件初始化代码、设备驱动程序和中断处理例程。在BSP里都是以原码(Full Source Code) 存放仅仅与板子硬件相关的程序,与上层有何应用毫无关系。这也是我们把程序加入BSP的一个准则,如果某个程序仅仅与硬件相关,与上层有何应用没有关系,就可以把这个程序放入BSP中。BSP中为上层应用提供了操作硬件的驱动程序及功能函数,BSP提供给上层应用的接口都是相同的,只是对不同的BSP它们的实现不同而已,这样有利于上层应用程序在不同的板间移植。
l pSOS+ 实时单处理器多任务操作系统内核模块
作为监控软件来提供应用程序要求的系统服务、调度、管理和资源分配,并且协调各种同步和异步操作。pSOS+的特点是小、快、完全可抢占、可重入。
pSOS+将应用程序抽象为:任务、I/O设备驱动程序和中断服务程序ISRs。pSOS+采用了基于优先级的、可抢占的和基于时间片的调度策略,并且每个任务可以有自己特殊的调度策略。
pSOS+是完全与硬件无关的,使得用户能在自己的硬件上使用pSOSystem。
l pSOS+m 实时多处理器多任务操作系统内核模块
是对pSOS+一些特性的扩展,使pSOSystem支持多处理器的操作,处理器间采用的是主从结构。
l pNA+ TCP/IP协议堆栈模块
是一个完全的TCP/IP协议组,包括网关路由协议、UDP、ARP和IGMP等。pNA+使用标准的socket接口,包括Stream、Datagram和Raw Socket。
l pRPC+ 远端过程调用库模块
提供了与SUN兼容的RPC和XDR服务,允许用户用熟悉的远程调用来构造分布式应用。
l pHILE+ 文件系统管理模块
可以通过它有效地访问各种不同的存储设备,支持四种文件格式:MS-DOS文件系统、 CD-ROM文件系统、pSOSystem特有的快速文件系统、NFS的Client和Server端
l pREPC+ 标准C库模块
l pROBE+ 调试/分析器
用户板加电或复位,首先运行ROM里的引导程序,该引导程序按以下次序处理:CPU初始化、板级初始化和运行OS内核,并把控制权交给pSOS内核。pSOS内核运行我们的应用程序(root任务,类似于main),在ROM里的版本程序包括了我们的支撑系统、文件管理应用和版本加载应用,进行RAM版本加载过程(该版本为OS+APP)。这当中要校验FLASH中的版本文件,如没有则要和后台进行同步,校验通过后将该版本加载到RAM中指定地址空间里后硬跳转到该地址处运行。