A network scheduler for real time applications is described. The network
scheduler supports scheduling of network packets in a multi-threaded
operating system to insure correct scheduling order and to preclude kernel
preemption of active threads. The network scheduler resides between a
kernel (and device drivers) and multiple sessions at the user-level. The
network scheduler uses input/output control primitives such as HOLD and
RELEASE to control servicing of the queues of packets at the kernel or
network device driver. The control primitives serve as a middleware
interface to the underlying kernel or network device driver. The network
scheduler functions as a proxy scheduler to manage the queues of packets
at the kernel or network device driver.
Ένας χρονοπρογραμματιστής δικτύων για τις εφαρμογές πραγματικού χρόνου περιγράφεται. Ο χρονοπρογραμματιστής δικτύων υποστηρίζει το σχεδιασμό των πακέτων δικτύων σε ένα πολύπλοκο λειτουργικό σύστημα για να ασφαλίσει τη σωστή διαταγή σχεδιασμού και για να αποκλείσει το δικαίωμα προτίμησης πυρήνων των ενεργών νημάτων. Ο χρονοπρογραμματιστής δικτύων κατοικεί μεταξύ ενός πυρήνα (και των οδηγών συσκευών) και των πολλαπλάσιων συνόδων στο χρήστης-επίπεδο. Ο χρονοπρογραμματιστής δικτύων χρησιμοποιεί τους εισαγμένους/πρωτόγονους ελέγχου παραγωγής όπως η ΛΑΒΗ και η ΑΠΕΛΕΥΘΕΡΩΣΗ για να ελέγξουν τη συντήρηση των σειρών αναμονής των πακέτων στον οδηγό συσκευών πυρήνων ή δικτύων. Οι πρωτόγονοι ελέγχου χρησιμεύουν ως μια διεπαφή υλικολογισμικού στον ελλοχεύοντα οδηγό συσκευών πυρήνων ή δικτύων. Ο χρονοπρογραμματιστής δικτύων λειτουργεί ως χρονοπρογραμματιστής πληρεξούσιου για να διαχειριστεί τις σειρές αναμονής των πακέτων στον οδηγό συσκευών πυρήνων ή δικτύων.