Mark-sweep, Operating System

Assignment Help:

The objects that a program can access directly are those objects which are referenced by local vari-ables on the processor stack, or by any global/static variables that refer to objects, or by variables in CPU registers. In the context of garbage collection, these variables are called the roots. An object is indirectly accessible if it is referenced by a ?eld in some other (directly or indirectly) accessible object. An accessible object is said to be live. Conversely, an object which is not live is garbage.

Note that heap objects which are live are indirectly accessible from the roots or other heap objects. The idea of mark-sweep is relatively straightforward. We start at the roots, and recursively visit every object accessible through pointers, marking them as live. At the end of the process, every thing not marked is considered garbage and will be deleted. Notice that mark-sweep can perform lazy garbage collection, in the sense that it does not necessarily need to remove the garbage immediately.

Note thatmark-sweep does not clean upmemory which is allocated, but simply never used. Also, periodically we have to visit all objects recursively, starting from the roots. For a large program, this will be slow. This is a problem with the traditional mark-sweep algorithm.


Related Discussions:- Mark-sweep

Write a note about directory structure with examples., Write a note about ...

Write a note about Directory structure with examples. The FreeBSD directory hierarchy is basic to obtaining an overall understanding of the system. The most significan

Multilevel queue scheduling, Explain multilevel queue scheduling and multil...

Explain multilevel queue scheduling and multilevel feedback queue scheduling #Minimum 100 words accepted#

Catalogue the design goals of windows xp, Q. Catalogue the design goals of ...

Q. Catalogue the design goals of Windows XP. Answer: Design goals comprise security and reliability and Windows and POSIX application compatibility with high performance and ex

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

What is graceful degradation, What is graceful degradation? In multipro...

What is graceful degradation? In multiprocessor systems, failure of single processor will not halt the system, but only slow it down by sharing the work of failure system by ot

Define seek time and latency time, Define seek time and latency time. T...

Define seek time and latency time. The time taken by the head to move to the appropriate cylinder or track is known as seek time. Once the head is at right track, it must wait

What is the purpose of system calls, What is the purpose of system calls? ...

What is the purpose of system calls? System calls permit user-level processes to request services of the operating system.

Explain the various database applications used in linux, Question 1 Descri...

Question 1 Describe about the shells of Linux operating system Question 2 Describe briefly about GNOME desktop Question 3 Write note on the following- Encryp

How does an operating system make multiprogramming possible, How does an op...

How does an operating system make multiprogramming possible by using single processor?

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