This patch implements two new MI notifications, =library-loaded and =library-unloaded. There's just one point of note -- identifications of shared libraries. In order for frontend to maintain accurate list of shared libraries using notifications, there should be a reliable way of matching unloaded library, as reported by =library-unloaded, with a previously loaded library. Currently, GDB keeps two names associated with a library, so_original_name which is reported by the target and so_name, which is basically the name of the file where symbols are read from. All internal comparisons of libraries for equality uses so_original_name, so it makes sense that frontend use it too. However, it is technically possible to load the same shared library twice, so ideally we use something more unique -- but this is extra work. So, MI notifications output three fields - id (documented as opaque) - target name - host name presently, so_original_name is used for the first two, but in future, id might become numeric, or it might look like libfoo.so@2. Comments? Is solib.c change OK? Are doc changes OK? - Volodya