QUESTION
(a) Compare the worker pool multi-threading architecture with the thread-per-request architecture.
(b) What thread operations are the most significant in cost?
(c) A file server uses caching, and achieves a hit rate of 80%. File operations in the server cost 5 ms of CPU time when the server finds the requested block in the cache, and take an additional 15 ms of disk I/O time otherwise. Clarifying any assumptions you make, estimate the server's throughput capacity (average requests/sec) if it is:
i) single-threaded
ii) two-threaded, running on a single processor
iii) two-threaded, running on a two-processor computer.
(d) A client makes RMIs to a server. The client takes 5 ms to calculate the arguments for each request, and the server takes 10ms to process each request. The local OS processing time for each send or receive operation is 0.5 ms, and the network time to transmit each request or reply message is 3 ms. Marshalling or unmarshalling takes 0.5 ms per message. Approximation the time taken by the client to generate and return from 2 requests
(i) if it is single-threaded
(ii) If it has two threads which can make requests concurrently on a single processor.