Back to results

Computer Science

Garbage Collection for General Graphs

Abstract

dc:description.abstract

Garbage collection is moving from being a utility to a requirement of every modern programming language. With multi-core and distributed systems, most programs written recently are heavily multi-threaded and distributed. Distributed and multi-threaded programs are called concurrent programs. Manual memory management is cumbersome and difficult in concurrent programs. Concurrent programming is characterized by multiple independent processes/threads, communication between processes/threads, and uncertainty in the order of concurrent operations. The uncertainty in the order of operations makes manual memory management of concurrent programs difficult. A popular alternative to garbage collection in concurrent programs is to use smart pointers. Smart pointers can collect all garbage only if developer identifies cycles being created in the reference graph. Smart pointer usage does not guarantee protection from memory leaks unless cycle can be detected as process/thread create them. General garbage collectors, on the other hand, can avoid memory leaks, dangling pointers, and double deletion problems in any programming environment without help from the programmer. Concurrent programming is used in shared memory and distributed memory systems. State of the art shared memory systems use a single concurrent garbage collector thread that processes the reference graph. Distributed memory systems have very few complete garbage collection algorithms and those that exist use global barriers, are centralized and do not scale well. This thesis focuses on designing garbage collection algorithms for shared memory and distributed memory systems that satisfy the following properties: concurrent, parallel, scalable, localized (decentralized), low pause time, high promptness, no global synchronization, safe, complete, and operates in linear time.

Degree

thesis:*
Name thesis:degree_name
Doctor of Philosophy (PhD)
Level thesis:degree_level
Dissertation
Discipline thesis:degree_discipline
Computer Sciences
Grantor
Computer Science
Year dc:date.available
2016

Author and committee

dc:creator, dc:contributor.*
Author dc:creator
  • Krishnan, Hari

Subjects

dc:subject × 6

Rights

dc:rights
Statement dc:rights
  • withheld
  • Secure the entire work for patent and/or proprietary purposes for a period of one year. Student has submitted appropriate documentation which states: During this period the copyright owner also agrees not to exercise her/his ownership rights, including public use in works, without prior authorization from LSU. At the end of the one year period, either we or LSU may request an automatic extension for one additional year. At the end of the one year secure period (or its extension, if such is requested), the work will be released for access worldwide.

Identifiers

dc:identifier.*
OAI identifier oai:identifier
oai:repository.lsu.edu:gradschool_dissertations-1572

Chain of custody

source
Harvested from
Lousiana State University
Base URL
repository.lsu.edu/do/oai/
Last updated
2026-07-24
Source record
OAI-PMH GetRecord
citation

Krishnan, Hari. Garbage Collection for General Graphs. Dissertation thesis, Computer Science, 2016. https://doi.org/10.31390/gradschool_dissertations.573