进程模型
大多数的操作系统会提供一种称为进程或者线程的抽象概念。
进程的运行很大程度上独立于其他进程,操作系统负责确保给当前的进程分配如地址空间和CPU周期这样的资源。
进程的抽象使得机器上并发的执行多个对象变得十分简单。
前者中,每个协议由一个独立的进程实现。
意味着当一条消息向协议栈的上方或者下方移动时,它被从一个进程/协议传送到另一个进程/协议,即实现协议i的进程处理这个消息。
把它传给协议i-1,依次类推。不好的是协议中的每一层都要求上下文切换,这是非常耗时的。
另外协议消息模型,就是把每一个协议当做是一段静态的编码并把进程和消息联系起来。
当一条消息从网络中到达时,操作系统就会调度一个进程,使之负责消息在协议图中移动。
在每一层中调用实现协议的过程,由此导致实现下一个协议过程,依次类推。 协议图在两个方向遍历一系列的的过程调用。
因为过程调用的效率比切换上下文的效率高一个数量级,所以进程消息模型更加有效。