I know we can get Top of Atmosphere Reflectance from Landsat. But can we get Bottom of Atmosphere Reflectance data from image? If possible, how to do the process?
If you acquired Level-1 Landsat data, these are indeed "top-of-atmosphere" radiance measurements. But you can request Level-2 surface reflectance measurements, which are derived from the Level-1 data. This process, often (incorrectly) called "atmospheric correction", consists in discriminating between the surface and the atmospheric contributions to the total observations made on-board the satellite.
This is a complex undertaking, as the atmosphere is present everywhere and affects all spectral bands, to a varying degree, due to the absorption and scattering of solar light by air molecules (Rayleigh scattering), aerosols such as dust and smoke (e.g., Mie scattering), and the ubiquitous presence of clouds. It is complex because the atmosphere and the underlying surface also interact between themselves, so there is a component of multiple scattering that involves both media. Furthermore, the measurements also depend on the relative angular positions of the Sun and the observing instrument with respect to the 3-D situation (e.g., the position of clouds in the scene and the local topography, as well as the influence of local sources of pollution).
The bottom line is that the separation of atmospheric and surface contributions is an imperfect process. If you are specifically interested in working on this topic, you should study the theory of radiation transfer in the atmosphere and its interaction with the surface. You will find further information on this matter by searching the Web for these keywords as well as "atmospheric correction".
On the other hand, if you are interested primarily by terrestrial (or oceanic) applications, you should use Level-2 surface reflectance products that have already been "corrected" by specialists. See, for instance:
As I understand, there is no difference between the terms 'Bottom of Atmosphere' (BoA) Reflectance and Surface Reflectance. BoA is the same term to describe atmospherically corrected Landsat data. Therefore, either ENVI or other GIS Software can be used to derive BoA Reflectance of Landsat manually using atmospheric correction models or Surface Reflectance products of Landsat can be ordered for free from ESPA USGS. Take your pick.