this file were transferred. Table 1 contains statistics about the transfer times recorded in seconds. For all the tests except for the THR priority 8, a normal priority spinning thread was executing in parallel with the file transfer.
The 2ms/8ms and 1ms/4ms reservations (25% CPU) behaved almost identical to the INT and the DPC version, whereas the 1ms/8ms (12.5%), 3ms/16ms (18.75%) and 2ms/16ms (12.5%) either needed a longer amount of time for transfers or were accompanied by occasional modem disconnections.
Table 1 – File transfer time (seconds) of 200,000 bytes
First, signal processing in interrupt context is not only unnecessary, but also detrimental to the predictability of any coexisting activity.
Second, the DPC version has some of the same predictability drawbacks as the vendor version. Both the vendor and the DPC versions do not correspond to the PC 99 set of recommendations for the Windows NT driver writers [Intel & Microsoft 98].
Third, the NT scheduled thread version helps alleviate some of these problems. We found that the soft modem driver functions well when the signal processing thread has high real-time priority and no competition.
Fourth, we conclude that other threads are less interfered with when the modem is scheduled using the real-time CPU Reservations abstraction. In particular, this abstraction allows us to control the amounts of time that the modem interferes with other time-sensitive computations while still meeting its needs.
In summary, this study will make the detailed performance characteristics of a popular soft modem available to the industry. We believe that this data should prove useful for informing ongoing work on providing predictable execution on consumer and general-purpose operating systems.
[Jones & Regehr 99] Michael B. Jones and John Regehr. CPU Reservations and Time Constraints: Implementation Experience on Windows NT. In Proceedings Third USENIX Windows NT Symposium, Seattle, WA, pages 93-102, July 1999.
[Intel & Microsoft 98] PC 99 System Design Guide – A Technical Reference for Designing PCs and Peripherals for the Microsoft Windows Family