ACHIEVING LOW-LEVEL ARCHITECTURE IN JAVA: A DETAILED EXPLANATION