Distinguishing Thread.start() and Thread.run() in Java
Invoking start() on a Thread instance initiates a new execution path, allocating a distinct system thread. Once scheduled by the operating system, this newly spawned thread independently executes the logic defined within the run() method. Repeated invocations of start() on the same Thread object trigger an IllegalThreadStateException, as the th ...
Posted on Fri, 06 Nov 2026 16:38:18 +0000 by cyrenity
Comprehensive Overview of Java Threading Concepts
Java Threading
Prior to JDK 1.2, Java threading was implemented using green threads, which are user-level threads that operate independently of the operating system. In this model, the JVM simulated multithreading behavior rather than relying on native OS capabilities. Green threads had limitations such as inability to utilize asynchronous I/O ...
Posted on Tue, 03 Nov 2026 16:28:54 +0000 by madhukar_garg
Java Virtual Machine Class Loading Mechanism
Java Virtual Machine Class Loading Mechanism
Class Loading Overview
The class loading mechanism in Java involves three main steps:
Loading class files into memory through the class loading subsystem
Creating corresponding runtime data structures in the method area
Generating a java.lang.Class object in the heap to serve as an entry poi ...
Posted on Fri, 30 Oct 2026 16:01:42 +0000 by yogicasey
JVM Class Loading Subsystem Overview
Class Loading Subsystem
Role of the Class Loader
Responsible for loading class files from file systems or networks
Class loading is distinct from execution, which is handled by the Execution Engine
Loaded class metadata is stored in the Method Area
Class Loading Process
Consider the following simple Java class:
public class HelloLoader {
...
Posted on Thu, 29 Oct 2026 16:10:12 +0000 by DaiLaughing
Core JVM Concepts Frequently Asked in Technical Interviews
JVM Memory Model
The Java Virtual Machine (JVM) divides its managed memory into distinct runtime data areas during program execution:
Shared across threads: Heap, Method Area
Thread-local: Program Counter Register, JVM Stack, Native Method Stack
Program Counter Register
A small memory space that acts as a pointer to the current bytecode instr ...
Posted on Sat, 24 Oct 2026 16:32:07 +0000 by nokicky
Comprehensive Overview of the Java Virtual Machine
Understanding the Java Virtual Machine
The Java Virtual Machine (JVM) is a pivotal component for Java developers, serving as an abstraction layer between Java bytecode and the underlying operating system. This overview provides a foundational understanding of JVM internals, essential for performance tuning and deep-level programming insights.
W ...
Posted on Thu, 22 Oct 2026 16:53:08 +0000 by hooch_au78
Tomcat Virtual Host Configuration, JVM Memory Management, and Memcached Session Clustering
To implement multiple virtual machines in Tomcat, follow these steps:
Modify the configuration file
[root@server conf]# pwd
/usr/local/tomcat/conf
[root@server conf]# vim server.xml
Add the following configuration within the section:
<host appbase="/data/webapps1/" autodeploy="true" name="webapp1.example.com&quo ...
Posted on Sat, 17 Oct 2026 16:25:17 +0000 by uniboy86
JVM Method Area Deep Dive: Architecture, Evolution, and Memory Management
Method Area Fundamentals
The Method Area serves as a shared memory region across all threads within the JVM, analogous to the Java Heap. It materializes during JVM startup and, like the heap, can occupy non-contiguous physical memory addresses. Administrators can configure either fixed or dynamically expandable sizing.
The capacity of this regi ...
Posted on Fri, 16 Oct 2026 16:39:37 +0000 by danzene
Tomcat JVM memory configuration and parameter explanation
In Java web development, correctly configuring Tomcat's memory is crucial for performance. Understanding this requires a grasp of JVM fundamentals, memory management, JVM parameters, and Tomcat-specific settings.
JVM memory management
When an application server starts, all referenced classes are loaded into memory via ClassLoader. JVM memory is ...
Posted on Thu, 15 Oct 2026 16:36:43 +0000 by benz862
JVM Class Loading Subsystem: Mechanism and Architecture
Overview of the Class Loading Subsystem
The JVM’s class loading subsystem is responsible for dynamically loading bytecode into memory, verifying its integrity, and preparing it for execution. It operates independently of the execution engine, which determines whether a class can be run. The subsystem does not handle object instantiation — that ...
Posted on Tue, 13 Oct 2026 16:41:05 +0000 by ruttiger