Project Documentation says.. Both are invoked even for cached page views. hook_boot says
This hook is run at the beginning of the page request. It is typically used to set up global parameters that are needed later in the request.
Only use this hook if your code must run even for cached page views. This hook is called before the theme, modules, or most include files are loaded into memory. It happens while Drupal is still in bootstrap mode.
Perform cleanup tasks.
This hook is run at the end of most regular page requests. It is often used for page logging and specialized cleanup. This hook MUST NOT print anything because by the time it runs the response is already sent to the browser.
Only use this hook if your code must run even for cached page views. If you have code which must run once on all non-cached pages, use hook_init() instead. That is the usual case. If you implement this hook and see an error like 'Call to undefined function', it is likely that you are depending on the presence of a module which has not been loaded yet. It is not loaded because Drupal is still in bootstrap mode.
Interested to know during which bootstrap phases hook_boot & hook_exit getting invoked so that it will be helpful in cases where above hooks can be used....