Michael D. Kupfer
University of California at Berkeley
Porting Sprite to Mach was generally straightforward, though there were some difficulties. Many of the problems were related to asynchronous interactions between the Sprite server, Mach, and Sprite user processes. Others resulted from trying to maintain native Sprite's internal interfaces in the Sprite server.
The Sprite server is 22% smaller than an equivalent Sprite kernel, and it contains almost no machine-dependent code. These improvements should significantly simplify porting Sprite to new hardware platforms. Unfortunately, the Sprite server runs the Andrew benchmark at only 38% of the speed of native Sprite. None of the performance problems appears insurmountable, but they could require a long time to track down and fix.
Download the full text of this paper in POSTSCRIPT form (164,183 bytes).
To Become a USENIX Member, please see our Membership Information.