Garbage collection in java, JAVA Programming

Assignment Help:

The Java programming language is object-oriented and includes automatic garbage collection. Garbage collection is the process of reclaiming memory taken up by unreferenced objects.

Memory Management, Java and Impact on Application Servers

The task of memory management that was always challenging with compiled object-oriented languages such as C++. On the other hand, Java is an interpretive language that takes this memory management out of the hands of developers and gives it directly to the virtual machine where the code will be run. This means that for best performance and stability, it is critical that the Java parameters for the virtual machine be understood and managed by the Application Server deployment team. This section will describe the various parts of the Java heap and then list some useful parameters and tuning tips for ensuring correct runtime stability and performance of Application Servers.

Java Virtual Machines

The Java specification as to what is “standard” for a given release is written and maintained by the JavaSoft division of Sun Microsystems. This specification is then delivered to other JVM providers (IBM, HP, etc). JavaSoft provides the standard implementation on Windows, Solaris, and LINUX. Other platforms are required to deliver the code functionality but their JVM options can be different. Java options that are preceded with “-X” or “-XX” are typically platform-specific. That being said, many options are used on all platforms. One must read in detail the README notes from the various releases on various platforms to be kept up-to-date with the variations. This guide will mention the most critical ones and distinguish between those which are implemented on most platforms and those which are platform-specific.

The Java Heap

The Java heap is divided into three main sections: Young Generation, Old Generation and the Permanent Generation as shown in the figure below.

 

Also, not shown here, is another area called the Code Cache which is typically about 50Mb in Size.

 

HotSpot VM

 

The HotSpot VM is the garbage collector that comes with the JavaSoft virtual machine. Its specification is delivered to all JVM providers (HP, IBM, BEA, etc) and the standard implementation is deployed by JavaSoft on Solaris, Windows and LINUX.

 

Default Garbage Collection Algorithms

 

Scavenge Garbage Collection

 

Scavenge Garbage Collection (also known as a Minor Collection) occurs when the Eden Space is full. By default, it is single-threaded but does not interrupt the other threads working on objects. It can be parallelized starting at Java 1.4 but if too more ParallelGCThreads are specified than CPU cores where the JVM is running, this can cause bottlenecks. For this reason, it is suggested to be careful in when and where to use the parallel options. These will be discussed further on.

 

Full Garbage Collection

 

A Full Garbage Collection (FullGC) occurs under these conditions:

 

The Java application explicitly calls System.gc(). This can be avoided by implementing the -

 

XX:+DisableExplicitGC parameter in the startup command for all Application Server JVMs (Tomcat,Application Server JVM, etc.)


Related Discussions:- Garbage collection in java

What are commonsense guidelines to prevent viruses, What are Commonsense Gu...

What are Commonsense Guidelines to prevent viruses? Discuss about Antivirus as well. Commonsense Guidelines to avoid viruses are as follows: 1. Do not open attachment of unwant

Want a page to store emails when click as save, Want a page to store emails...

Want a page to store emails when click as save, then pass along to another page with the emails in the URL Project Description: I have a page that populates with listing; the

Program of declaration of variables in java, Program of Declaration of vari...

Program of Declaration of variables in Java Program for declaring variables in Java, I've been trying so many codes for this but those codes didn't work well. Please write the

I need crime management, I need Crime Management Project Description: ...

I need Crime Management Project Description: It is a web based project build in Oracle(back end) and J2EE(front end)  for peoples so they will register complaints online.

What is overriding, What is Overriding? When a class explains a method ...

What is Overriding? When a class explains a method using the similar name, return type, and arguments as a method in its superclass, the method in the class overrides the metho

Explain break statement in a loop, Explain break statement in a loop ? ...

Explain break statement in a loop ? A break statement exits a loop before an entry condition fails. For instance, in this variation on the CountWheat program an error messa

What are the basic different types of enterprise beans, Session Bean : is ...

Session Bean : is a non-persistent object that provides some business logic running on the server. Session beans do not provide system break down. There are two kinds of session b

Programming projects, Write a ComputePart class and a ComputerKit class(and...

Write a ComputePart class and a ComputerKit class(and a cliet class to test them) You should include the following methods: a method returning "expensive" if the total of the price

Android Development Project, Task I have an Android mobile app project tha...

Task I have an Android mobile app project that I''m trying to get profiles to transfer by connecting to a server at 23.23.175.213 port 1337. I have to send a json string to the se

What is preferred organizational structure for organization, What is the pr...

What is the preferred organizational structure for the organization? Preferred Organizational Structure for organization is hierarchal. Where there is various departments inter

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