Fixing file descriptor leaks
Name
219706931-MIT.pdf
Description
Full printable version
Size
3.44 MB
Format
Adobe PDF
Checksum (MD5)
ac03aa4c968963bd2258b288f71ecf83
Author(s)
Dumitran, Octavian-Daniel
Advisor(s)
Dorothy Curtis.
Alternative Title
Fixing FD leaks
Date Issued
2007
Publisher
Massachusetts Institute of Technology
Abstract
We design, implement and test a tool for eliminating file descriptor (FD) leaks in programs at run-time. Our tool monitors FD allocation and use. When the allocation of a new FD would fail because a process's entire pool of FDs is already in use, our tool "recycles" (forcibly closes) an FD. The FD to be recycled is chosen according to three simple rules: 1) do not recycle FDs used within the last second, 2) do not recycle "persistent" FDs (FDs allocated at sites that allocate few FDs) and 3) recycle the FD that was least recently used. We tested our tool with nine applications (HTTP/FTP servers, proxies and clients) that make extensive use of FDs. We first simulated massive leaks by disabling all calls to close. Without recycling (and in the presence of leaks), all applications malfunctioned. With FD recycling, applications continued to execute normally despite massive FD leakage. Throughout our tests, our tool has never attempted to close an FD that was still in use.
Description
Thesis (M. Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2007.
Includes bibliographical references (p. 89).
Subjects
Electrical Engineering and Computer Science.
MIT Department
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
Terms of Use
M.I.T. theses are protected by
copyright. They may be viewed from this source for any purpose, but
reproduction or distribution in any format is prohibited without written
permission. See provided URL for inquiries about permission.
copyright. They may be viewed from this source for any purpose, but
reproduction or distribution in any format is prohibited without written
permission. See provided URL for inquiries about permission.
Persistent DSpace Link