Q. What is the difference regarding module loading between Mage::run() and Mage::app()?
Mage::app() :: Get initialized application object. It provides all those required variables, objects which are required to access Magento functionalities out of magento bootstrap i.e. index.php.
Mage::run() :: Frontend entry point which means it loads the configuration files, modules configuration, load Database. This constructs all of the necessary XML data in configuration tree object.
Mage::app() – Initialize application without request processing.
Mage::run() – Run application. Run process responsible for request processing and sending response.