Font Size: a A A

Linux Real-time Signal-driven I / O Improvements

Posted on:2006-09-20Degree:MasterType:Thesis
Country:ChinaCandidate:Q HeFull Text:PDF
GTID:2208360152997528Subject:Computer system architecture
Abstract/Summary:PDF Full Text Request
As the fast development of network, the number of network users has been inflating tremendously. As the virtual providers of various network services, high performance network servers are one of the focuses. The performance of a network server first depends on the hardware platform on which the server is running. Confined to the limited way that the speed of the peripherals increases in, the poor I/O is still the main bottleneck hindering the overall performance of computers from improving. When network servers that serve thousands of users are running on these platforms, the contradiction stands out more obviously. On the other hand, the structure of the network server software itself decides on whether it can exploit the current hardware environment fully. The deficiency of the traditional server structures and I/O models is another factor that severely influences the performance of network servers. So, how to improve the outdated server structures and I/O models has become another entry. Research about event-driven I/O models is one of the hotspots in this field. Traditional UNIX/Linux systems provide select/poll, which implements the multiplexing I/O model based on event-driven mechanism. Unfortunately, due to faulty implementation, the scalability of select/poll is badly limited. Many researches are done aiming at the imperfection of select/poll, and alternative methods are put forwards on various platforms, including /dev/poll on Solaris, Kqueue on BSD, and epoll on Linux. Real-time signal driven I/O is also one of the powerful competitors. Benefiting from the full implementation of POSIX real-time signal on the Linux platform, its great value has been proved. However, deficiencies still exist and many improvements remain to be done. This paper first introduces the traditional server structures and I/O models on UNIX/Linux platforms, and explains why they are not fit for current network servers. After that, analysis is made on select/poll to show where the problems lie, and improvements in solutions listed above are presented, in which real-time signal driven I/O is given detailed illustrations and some of its advantages are shown. Then, some potential problems of current implementation are pointed out, and both the theories and practical implementations for solving them are given. Finally, tests on both reliability and performance are provided, and the results are analyzed. The tests show that this improved real-time signal driven I/O model is much more reliable, and has similar performance as other popular solutions, or even better.
Keywords/Search Tags:Server structure, I/O model, Event-driven, Real-time signal, Real-time signal driven I/O
PDF Full Text Request
Related items