Semispace, Operating System

Semispace works by maintaining two disjoint areas from which memory can be allocated. These areas are called the from-space and the to-space. At ?rst, the algorithm allocates memory only from the from-space, without ever worrying about garbage collection. Allocation then is typically performed using simple pointer bumping, which simpli?es the whole process a lot. When we ?nally run out of space in the from-space, we sweep through all allocated objects that can be somehow reached; those are the ones that are still live. We then move each of these live objects to the to-space, taking care to update all pointers to the live objects to point to its new location in the to-space. Hence semispace is called a copying collector. After having done all this moving, only live objects are in the to-space. From this moment on, we can start using the to-space to perform allocation. The process is repeated again when the to-space eventually runs out of space. Thismethod has as advantages the fact that it might "compact" objects in the memory, thus increasing locality and minimizing fragmentation. Also, when performing allocation from one of the spaces, it can use simple pointer bumping, which is very fast. However, this approach doubles the memory requirements.

Posted Date: 3/13/2013 2:57:31 AM | Location : United States

Related Discussions:- Semispace, Assignment Help, Ask Question on Semispace, Get Answer, Expert's Help, Semispace Discussions

Write discussion on Semispace
Your posts are moderated
Related Questions
Explain the Per Thread Scoping Thread-level programming introduces new twists for application-level variable scoping. Threads are commonly used in one of two ways. To ex

Question 1 Explain single Partition Allocation and Multiple Partition Question 2 What is PCB? What useful information is available in PCB? Question 3 Explain Preemptive and No

Define Page stealing    Page stealing is taking page frames another working sets

Compare user threads and kernel threads. User threads:- User threads are supported above the kernel and are executed by a thread library at the user level. Thread creation

Many-to-Many Model The many-to-many model- many user-level threads to many kernel-level threads avoids several of the limitations of the one-to-one model, although extending mu

Many-to-One Model (Green Threads) Implementations of the many-to-one model a lot of user threads to one kernel thread permit the application to create any number of threads tha

In a  p system each part (RAM, ROM, I/O) has a unique set of numbers. The allocation of these numbers is usually stated in the form of a memory map. This is a plot of data bus agai

The Most comman difference are given below System calls are heavy. While a procedure call can generally be performed in a few system instructions, a system call needs the c

Basic concepts When a process is to be changed in, the pager guesses which pages will be used before the process is changed out again. Instead of swapping in a entire process,