1.一种光接入多用户居住单元嵌入式设备,所述的嵌入式设备中具有至少二块板卡,其特征在于,所述的每块板卡上均具有一个消息守候进程模块和至少一个功能进程模块,所述的各个板卡上的消息守候进程模块之间均建立有板间消息通信链路,且每个板卡上的消息守候进程模块与所在的相应板卡上的各个消息进程模块之间均建立有进程间消息通信链路,所述的每个功能进程模块中均具有一个消息线程单元、消息模块和至少一个功能线程单元,所述的消息线程单元通过消息模块与所述的各个功能线程单元相连接,其中所述的消息模块包括:消息槽,为进程内存储消息内容的内存单元,且进程内所有线程共享该消息槽;
消息槽表,存储所述的各个消息槽所对应的消息槽号,统一管理进程内所有的消息槽;
消息管道表,为缓存容纳消息实体所存储的消息槽信息的列表;
消息队列表,为进程内所有消息队列的集合,且每个消息队列均与一个消息管道表相对应;
该嵌入式设备进行消息发送处理操作包括以下步骤:
(1)发送消息的第一功能线程单元通过所述的消息槽表申请未使用的消息槽;
(2)该第一功能线程单元将需要发送的消息存储于所申请得到的消息槽中;
(3)系统判断第一功能线程单元的板卡标识CID与接收消息的第二功能线程单元的板卡标识CID是否一致;
(4)如果否,则通过该第一功能线程单元所在板卡上的第一消息守候进程模块和板间消息通信链路将该消息发送至第二功能线程单元所在板卡上的第二消息守候进程模块;且所述的第二消息守候进程模块将该消息通过所述的进程间消息通信链路发送至该第二功能线程单元所在进程中的第二消息线程单元中;并执行以下步骤(8);
(5)如果是,则系统判断第一功能线程单元的进程标识PID与所述的第二功能线程单元的进程标识PID是否一致;
(6)如果一致,则第一功能线程单元通过所述的消息线程单元根据第二功能线程单元的线程标识TID找到第二功能线程单元所对应的消息队列,并将该消息存入与该消息队列所对应的消息管道表中,完成消息发送处理操作;
(7)如果不一致,则通过该第一功能线程单元所在进程中的第一消息线程单元和进程间消息通信链路将该消息发送至该第二功能线程单元所在进程中的第二消息线程单元中;
并执行以下步骤(8);
(8)所述的第二消息线程单元根据第二功能线程单元的线程标识TID找到第二功能线程单元所对应的消息队列,并将该消息存入与该消息队列所对应的消息管道表中,完成消息发送处理操作;
该嵌入式设备进行消息接收处理操作包括以下步骤:
(11)所述的第二功能线程单元持续检测所述的消息管道表中是否有消息;
(12)如果否,则重复上述步骤(11);
(13)如果是,则取出该消息中的消息槽号;
(14)所述的第二功能线程单元根据所述的消息槽号从所述的消息槽中读取对应的消息内容;
(15)所述的第二功能线程单元通过所述的消息槽表释放所述的消息槽号所对应的消息槽,完成消息接收处理操作。
2.根据权利要求1所述的光接入多用户居住单元嵌入式设备,其特征在于,所述的消息槽表为堆栈,且通过对消息槽号的压栈操作释放该消息槽号所对应的消息槽,通过对消息槽号的出栈操作来占用该消息槽号所对应的消息槽。
3.根据权利要求1所述的光接入多用户居住单元嵌入式设备,其特征在于,所述的消息管道表为循环队列,且该循环队列的每个节点中均存储有消息槽号,记录消息的实际存储位置。
4.根据权利要求1所述的光接入多用户居住单元嵌入式设备,其特征在于,所述的消息队列表中每个节点中存储有消息队列类型信息和消息队列句柄信息。
5.根据权利要求4所述的光接入多用户居住单元嵌入式设备,其特征在于,所述的消息队列类型包括板间消息队列ICC、进程间消息队列IPC和线程间消息队列ITC。
6.根据权利要求4所述的光接入多用户居住单元嵌入式设备,其特征在于,所述的消息队列句柄信息为指示消息队列的关键字。
7.根据权利要求1所述的光接入多用户居住单元嵌入式设备,其特征在于,所述的消息队列表的长度不小于进程内最大线程数的两倍,且该消息队列表的前半部分对应异步消息队列,后半部分对应同步消息队列。
8.根据权利要求1至7中任一项所述的光接入多用户居住单元嵌入式设备,其特征在于,所述的板间消息通信链路为套接字socket通信链路。
9.根据权利要求1至7中任一项所述的光接入多用户居住单元嵌入式设备,其特征在于,所述的进程间消息通信链路为进程间通信IPC消息通道。
10.根据权利要求9所述的光接入多用户居住单元嵌入式设备,其特征在于,所述的进程间通信IPC消息通道为进程间共享内存或者进程间有名文件管道。
11.根据权利要求1至7中任一项所述的光接入多用户居住单元嵌入式设备,其特征在于,所述的各个功能线程单元均具有全局唯一标识。
12.根据权利要求11所述的光接入多用户居住单元嵌入式设备,其特征在于,所述的全局唯一标识中包括板卡标识CID、进程标识PID和线程标识TID。
13.根据权利要求12所述的光接入多用户居住单元嵌入式设备,其特征在于,所述的板卡标识CID的位长为4,进程标识PID的位长为12位,线程标识TID的位长为16位。
14.一种基于权利要求1所述的光接入多用户居住单元嵌入式设备实现多任务通信方法,所述的各个功能线程单元均具有全局唯一标识,所述的全局唯一标识中包括板卡标识CID、进程标识PID和线程标识TID;
其特征在于,所述的方法包括消息发送处理操作和消息接收处理操作,所述的消息发送处理操作,包括以下步骤:(1)发送消息的第一功能线程单元通过所述的消息槽表申请未使用的消息槽;
(2)该第一功能线程单元将需要发送的消息存储于所申请得到的消息槽中;
(3)系统判断第一功能线程单元的板卡标识CID与接收消息的第二功能线程单元的板卡标识CID是否一致;
(4)如果否,则通过该第一功能线程单元所在板卡上的第一消息守候进程模块和板间消息通信链路将该消息发送至第二功能线程单元所在板卡上的第二消息守候进程模块;且所述的第二消息守候进程模块将该消息通过所述的进程间消息通信链路发送至该第二功能线程单元所在进程中的第二消息线程单元中;并执行以下步骤(8);
(5)如果是,则系统判断第一功能线程单元的进程标识PID与所述的第二功能线程单元的进程标识PID是否一致;
(6)如果一致,则第一功能线程单元通过所述的消息线程单元根据第二功能线程单元的线程标识TID找到第二功能线程单元所对应的消息队列,并将该消息存入与该消息队列所对应的消息管道表中,完成消息发送处理操作;
(7)如果不一致,则通过该第一功能线程单元所在进程中的第一消息线程单元和进程间消息通信链路将该消息发送至该第二功能线程单元所在进程中的第二消息线程单元中;
并执行以下步骤(8);
(8)所述的第二消息线程单元根据第二功能线程单元的线程标识TID找到第二功能线程单元所对应的消息队列,并将该消息存入与该消息队列所对应的消息管道表中,完成消息发送处理操作;
所述的消息接收处理操作,包括以下步骤:
(11)所述的第二功能线程单元持续检测所述的消息管道表中是否有消息;
(12)如果否,则重复上述步骤(11);
(13)如果是,则取出该消息中的消息槽号;
(14)所述的第二功能线程单元根据所述的消息槽号从所述的消息槽中读取对应的消息内容;
(15)所述的第二功能线程单元通过所述的消息槽表释放所述的消息槽号所对应的消息槽,完成消息接收处理操作。