Recently, there is a growing tendency that very large files are heavily used on many new applications such as geometric information systems, digital libraries and internet services. Large files cause difficult problems in buffer cache management which can not be properly handled by traditional global LRU policy. In a recent study[2], new buffer cache management scheme, LRU-RS, was proposed to solve those problems.
In this paper, we implemented the prototype buffer cache management system that adopts the LRU-RS policy. File-based buffer cache management, segmenting and adaptive recycling were implemented by modifying NetBSD/i386 V1.2 file system. This paper describes in detail the problems in implementing them and the techniques to solve those problems.
We evaluated performance of the prototype system by comparing with that of the original NetBSD system, using the Bonnie benchmark. Our results show that the prototype system is more efficient on accesses to large files than the original NetBSD while the performance for files in the buffer cache was as good as that of the original NetBSD system.