Total power dissipation in the next-generation processors is projected to reach 200 W/cm2. Such high power densities coupled with complex integration of devices, results in high heat dissipation on-chip. Therefore, thermal management and temperature-aware computing techniques are critical in designing energy-efficient systems. In this tutorial, we present temperature modeling, floorplanning, design-time and run-time thermal management techniques to alleviate thermal hotspots. Accurate thermal modeling and prediction mechanisms are critical to invoke the right thermal management decisions. Design-time techniques focus on thermal-aware floor planning and thermal sensor placement. Run-time techniques have two primary goals: to reduce temperature and to maintain a uniform thermal profile by reducing power consumption. We introduce run-time mechanisms such as adaptive thermal management policies; modulating cooling mechanisms for heat balancing, and thermal design considerations for emerging technologies. This tutorial will consist of four parts that cover different aspects of the thermal management design paradigms, as presented below.