According to the source code of wp-admin/includes/class-wp-upgrader.php
Single plugin update:
add_filter('upgrader_pre_install', array(&$this, 'deactivate_plugin_before_upgrade'), 10, 2);
add_filter('upgrader_clear_destination', array(&$this, 'delete_old_plugin'), 10, 4);
It’ll deactivate the plugin before upgrade and you need to re-activate it manually after upgrade.
No maintenance file generated
Bulk Pluigns Update
add_filter('upgrader_clear_destination', array(&$this, 'delete_old_plugin'), 10, 4);
// Only start maintenance mode if running in Multisite OR the plugin is in use
No deactivation before upgrade. The plugin status will be as what it was. So, if it is activated now, it’ll still be activated after upgrade.
And maintenance file will be generated if running in Multisite OR the plugin is in use.
I urge you to read the source code yourself in case if I’m wrong.