An Overview of a Compilier-Part 2 and Run-Time Environments