Conservative garbage collection, Operating System

Assignment Help:

Conservative GC can be used for languages such as C and C++, which were not explicitly designed for garbage collection. This is a non-copying technique. A conservative garbage collector is one that, instead of knowing the exact location of each object, discovers the set of live objects by scanning a region of memory, looking for areas that may be objects. Because C and C++ allow casting, anything that can hold a pointer could conceivably be a pointer, such as an unsigned long which is cast as a pointer, or a ?oating-point type which is cast as a pointer, etc. Conservative GC more or less uses the "duck test", paraphrased here as "if it looks like a pointer and acts like a pointer, it's probably a pointer". Starting from the roots, we can ?nd all objects which look like pointers, and the objects to which they would point if they were in fact pointers, and mark those objects as live. By doing this, we can provide garbage collection to languages which otherwise would not support it.

The possible objects found may or may not actually be objects, but we are ensured that all live objects referred to from that particular area are found by the garbage collector. Since we must discover the areas that might be objects, we also have to know how to identify pointers; usually, if something looks like a pointer, we assume it is a pointer. Then, conservative GC traces through those "pointers", marking everything that is still live.

Some of the drawbacks of this method are: 1) areas of memory that look like pointers to objects, but aren't, cause garbage objects to be retained as long as the fake pointer exists; this increases memory usage of the garbage collector, and can cause other limited resources to be exhausted; and 2) the methods of ?nding exactly which areas to trace aren't always portable.


Related Discussions:- Conservative garbage collection

Networking protocols, Modern networks are not implemented as a single piece...

Modern networks are not implemented as a single piece of software; that would render the task of dealing with multiple technologies and manufacturers virtually impossible. The solu

Explain how the system can deal with the starvation problem, Q. Can a syste...

Q. Can a system detect that some of its processes are starving? If you answer "yes," explain how it can. If you answer "no," explain how the system can deal with the starvation pro

What is an idle thread, idle thread The special thread a dispatcher wi...

idle thread The special thread a dispatcher will run when no ready thread is found. The primary purpose of the idle process and its threads is to remove what would otherwise b

Explain the beginthread function used in the netware, Explain the BeginThre...

Explain the BeginThread Function used in the NetWare example code BeginThread(MyThread Function, stack,size, arg) BeginThread creates a thread and places it on the NetWar

What is the purpose of the virtual memory in windows xp, Question: a) T...

Question: a) The following refers to optimization under Windows XP: i) Give five steps which could undertake to enhance overall system performance in a default Windows XP in

Explain process scheduling, Explain Process scheduling Process scheduli...

Explain Process scheduling Process scheduling consists of the subsequent sub-functions: 1.      Scheduling : Selects the process to be implement next on the CPU 2.      D

Producer-consumer using condition variables, Now let us present an implemen...

Now let us present an implementation of a producer-consumer system using condition variables. This implementation works. dequeue() lock(A) while (queue empty) { wait(A, C)

What is direct access, Normal 0 false false false EN-IN...

Normal 0 false false false EN-IN X-NONE X-NONE MicrosoftInternetExplorer4

What is internal fragmentation?, What is internal fragmentation? Consid...

What is internal fragmentation? Consider holes of 20k assume the process requests 18 bites. If we allocate accurately the request block, we are left with a hole of 2k. The over

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd