抄録
In traditional operating systems such as UNIX, network protocol stacks reside in the kernel, and it processes the protocols in interrupt handlers. This strategy is suitable for time-sharing systems because of the high performance. On the other hand, this strategy cannot be applied to real-time distributed systems since packets are processed in a non-preemptable fashion. Thus, unbounded priority inversions that may violate timing constraints of packets occur. We have developed two user-level network subsystems for distributed real-time systems and show our network subsystems have many advantages over traditional network systems. This paper focuses on the effectiveness of user-level protocol stacks for distributed real-time systems and discusses how the protocol stacks affect the system structures. We present the implementation and performance evaluation results of our two different real-time protocol stacks, which are implemented on Real-Time Mach. The results show that respective architectures have different characteristics, and the selection of the architectures depends on the requirements of real-time applications. The paper can give a guideline that enables programmers to select suitable network subsystems for their application.
共有