{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,8,29]],"date-time":"2025-08-29T09:59:06Z","timestamp":1756461546875},"publisher-location":"Berlin, Heidelberg","reference-count":30,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783540254119"},{"type":"electronic","value":"9783540319856"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2005]]},"DOI":"10.1007\/978-3-540-31985-6_10","type":"book-chapter","created":{"date-parts":[[2010,7,11]],"date-time":"2010-07-11T18:53:19Z","timestamp":1278874399000},"page":"137-155","source":"Crossref","is-referenced-by-count":6,"title":["Optimizing C Multithreaded Memory Management Using Thread-Local Storage"],"prefix":"10.1007","author":[{"given":"Yair","family":"Sade","sequence":"first","affiliation":[]},{"given":"Mooly","family":"Sagiv","sequence":"additional","affiliation":[]},{"given":"Ran","family":"Shaham","sequence":"additional","affiliation":[]}],"member":"297","reference":[{"key":"10_CR1","unstructured":"Apache http Server Project, Available at http:\/\/httpd.apache.org"},{"key":"10_CR2","unstructured":"Lea, D.: A Memory Allocator, Available at http:\/\/g.oswego.edu\/dl\/html\/malloc.html"},{"key":"10_CR3","unstructured":"Microquill Inc., Available at http:\/\/www.microquill.com"},{"key":"10_CR4","unstructured":"openssl cryptographic library, Available at http:\/\/www.openssl.org"},{"key":"10_CR5","unstructured":"zlib compression library, Available at http:\/\/www.zlib.org"},{"key":"10_CR6","unstructured":"Aldrich, J., Sirer, E.G., Chambers, C., Eggers, S.J.: Comprehensive synchronization elimination for Java. Technical Report, University of Washington (October 2000)"},{"key":"10_CR7","unstructured":"Andersen, L.: Program Analysis and Specialization for the C Programming Language. PhD thesis, DIKU Univ. of Copenhagen., Copenhagen, Denmark (1994)"},{"key":"10_CR8","doi-asserted-by":"crossref","unstructured":"Berger, E.: Hoard: AScalable Memory Allocator for Multithreaded Applications. In: Architectural Support for Programming Languages and Operating Systems, Cambridge, Massachusetts, US, November 2000, pp. 117\u2013128 (2000)","DOI":"10.1145\/378993.379232"},{"key":"10_CR9","doi-asserted-by":"crossref","unstructured":"Berger, E.D., Zorn, B.G., McKinley, K.S.: Reconsidering Custom Memory Allocation. In: Conf. on Object-Oriented Prog. Syst., Lang. and Appl., Seattle, Washington, US, November 2002, pp. 1\u201312 (2002)","DOI":"10.1145\/582419.582421"},{"key":"10_CR10","doi-asserted-by":"crossref","unstructured":"Blanchet, B.: Escape Analysis for Object Oriented Languages. Application to Java. In: Conf. on Object-Oriented Prog. Syst., Lang. and Appl., Denver, Colorado, US, November 1999, pp. 20\u201334 (1999)","DOI":"10.1145\/320384.320387"},{"key":"10_CR11","unstructured":"Boehm, H.: Fast Multiprocessor Memory Allocation and Garbage Collection. Tech Report, HP Labs (December 2000)"},{"key":"10_CR12","doi-asserted-by":"crossref","unstructured":"Bogda, J., Hoelzle, U.: Removing unnecessary synchronization in Java. In: Conf. on Object-Oriented Prog. Syst., Lang. and Appl., Denver, Colorado, US, November 1999, pp. 35\u201346 (1999)","DOI":"10.1145\/320384.320388"},{"key":"10_CR13","doi-asserted-by":"crossref","unstructured":"Choi, J., Gupta, M., Serrano, M., Sreedhar, V., Midkiff, S.: Escape Analysis for Java. In: Conf. on Object-Oriented Prog. Syst., Lang. and Appl., Denver, Colorado, US, November 1999, pp. 1\u201319 (1999)","DOI":"10.1145\/320384.320386"},{"key":"10_CR14","doi-asserted-by":"crossref","unstructured":"Das, M.: Unification-based Pointer Analysis with Directional Assignments. In: SIGPLAN Conf. on Prog. Lang. Design and Impl., Vancouver, Canada, June 2000, vol.\u00a035, pp. 35\u201346 (2000)","DOI":"10.1145\/349299.349309"},{"key":"10_CR15","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"260","DOI":"10.1007\/3-540-47764-0_15","volume-title":"Static Analysis","author":"M. Das","year":"2001","unstructured":"Das, M., Liblit, B., F\u00e4hndrich, M., Rehof, J.: Estimating the impact of scalable pointer analysis on optimization. In: Cousot, P. (ed.) SAS 2001. LNCS, vol.\u00a02126, pp. 260\u2013278. Springer, Heidelberg (2001)"},{"key":"10_CR16","doi-asserted-by":"crossref","unstructured":"Domani, T., Goldshtein, G., Kolodner, E.K., Lewis, E., Petrank, E., Sheinwald, D.: Thread-local heaps for java. In: Int. Symp. on Memory Management, Berlin, Germany, pp. 76\u201387 (2002)","DOI":"10.1145\/512429.512439"},{"key":"10_CR17","unstructured":"Heintze, N.: Analysis of Large Code Bases: The Compile-Link-Analyse Model. Unpublished Report (November 1999)"},{"key":"10_CR18","doi-asserted-by":"crossref","unstructured":"Heintze, N., Tardieu, O.: Ultra-fast Aliasing Analysis using cla: A Million Lines of C Code in a Second. In: SIGPLAN Conf. on Prog. Lang. Design and Impl., Snowbird, Utah, US, May 2001, pp. 254\u2013263 (2001)","DOI":"10.1145\/378795.378855"},{"key":"10_CR19","doi-asserted-by":"crossref","unstructured":"Larson, P., Krishnan, M.: Memory Allocation for Long-running Server Applications. In: Int. Symp. on Memory Management, Vancouver, Canada, October 1998, pp. 176\u2013185 (1998)","DOI":"10.1145\/286860.286880"},{"key":"10_CR20","unstructured":"Lever, C., Boreham, D.: malloc() performance in a multithreaded linux environment. In: USENIX, the Advanced Computing System Association, San Diego, California, US (2000)"},{"key":"10_CR21","doi-asserted-by":"crossref","unstructured":"Michael, M.M.: Scalable Lock-Free Dynamic Memory Allocation. In: SIGPLAN Conf. on Prog. Lang. Design and Impl., Washington, US, June 2004, pp. 35\u201346 (2004)","DOI":"10.1145\/996841.996848"},{"key":"10_CR22","doi-asserted-by":"crossref","unstructured":"Rinard, M.: Analysis of multithreaded programs. In: Static Analysis Symp., Paris, France, July 2001, pp. 1\u201319 (2001)","DOI":"10.1007\/3-540-47764-0_1"},{"key":"10_CR23","doi-asserted-by":"crossref","unstructured":"Ruf, E.: Effective Synchronization Removal for Java. In: SIGPLAN Conf. on Prog. Lang. Design and Impl., Vancouver, Canada, June 2000, pp. 208\u2013218 (2000)","DOI":"10.1145\/349299.349327"},{"key":"10_CR24","doi-asserted-by":"crossref","unstructured":"Rugina, R., Rinard, M.: Pointer Analysis for Multithreaded Programs. In: SIGPLAN Conf. on Prog. Lang. Design and Impl., Atlanta, Georgia, US, May 1999, pp. 77\u201390 (1999)","DOI":"10.1145\/301618.301645"},{"key":"10_CR25","unstructured":"Sade, Y.: Optimizing C Multithreaded Memory Management Using Thread-Local Storage. Master\u2019s thesis, Tel-Aviv University, Tel-Aviv, Israel (2004)"},{"key":"10_CR26","doi-asserted-by":"crossref","unstructured":"Salcianu, A., Rinard, M.: Pointer and Escape Analysis for Multithreaded Programs. In: Principles Practice of Parallel Programming, Atlanta, Georgia, US, June 2001, pp. 12\u201323 (2001)","DOI":"10.1145\/379539.379553"},{"key":"10_CR27","first-page":"32","volume-title":"Symp. on Princ. of Prog. Lang.","author":"B. Steensgaard","year":"1996","unstructured":"Steensgaard, B.: Points-to Analysis in Almost Linear Time. In: Symp. on Princ. of Prog. Lang., St. Petersburg Beach, Florida, US, January 1996, pp. 32\u201341. ACM Press, New York (1996)"},{"key":"10_CR28","doi-asserted-by":"crossref","unstructured":"Steensgaard, B.: Thread-Specific Heaps for Multi-Threaded Programs. In: Int. Symp. on Memory Management, Minneapolis, Minnesota, US, October 2000, pp. 18\u201324 (2000)","DOI":"10.1145\/362422.362432"},{"key":"10_CR29","doi-asserted-by":"crossref","unstructured":"Wilson, R.P., Lam, M.S.: Efficient Context-Sensitive Pointer Analysis for C Programs. In: SIGPLAN Conf. on Prog. Lang. Design and Impl., pp. 1\u201312 (1995)","DOI":"10.1145\/207110.207111"},{"key":"10_CR30","doi-asserted-by":"crossref","unstructured":"Yang, S., Horwitz, S., Reps, T.: Pointer Analysis for Programs with Structures and Casting. In: SIGPLAN Conf. on Prog. Lang. Design and Impl., Atlanta, Georgia, US, May 1999, pp. 91\u2013103 (1999)","DOI":"10.1145\/301618.301647"}],"container-title":["Lecture Notes in Computer Science","Compiler Construction"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-540-31985-6_10.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,11,19]],"date-time":"2020-11-19T04:33:07Z","timestamp":1605760387000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-540-31985-6_10"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2005]]},"ISBN":["9783540254119","9783540319856"],"references-count":30,"URL":"https:\/\/doi.org\/10.1007\/978-3-540-31985-6_10","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2005]]}}}