Ok, I have been doing a lot of looking around as I am very interested in doing this myself.
Booting from a usb device definitely can be done as long as the mother board being used supports booting from usb.
Usually, say if you booted ubuntu linux from a live cd or usb device, files on the drives of the computer (main HDD's, other usb devices) can still be accessed easily but some or most programs will have to be re-installed into the drive that is being booted from.
So, for example I had a usb Hdd that was bootable and had windows xp installed on it (it would have to be a big Hdd - no smaller than 7-8 gigs depending on which os). Anyway, say that my mother board supported booting from usb, and i had selected usb as primary boot. If windows was installed correctly, the computer should boot normally.
Depending on how windows (or any operating sys such as linux) was installed and partitioned, the whole usb drive might be solely dedicated to boot, and have no extra space (this is the case with an ubuntu live cd). Or, the drive could be partitioned, with one partition for boot files, and the other for data. This means that you would be able to store data such as music, cookies, programs, on the drive, as well as being able to boot from it.
If you had the partitioned setup, and were running your computer solely from the usb drive, you could still access and of the other drives attached to that computer, providing the were no security restrictions on them. If, your case, with the two drives and yahoo messenger only being installed on one of them, you could easily access the messenger files but it would not work as it is installed to that specific drive - Not the drive that you are booting from. To get it to work, you would just have to install it to the drive that is being booted from.
You can access the data on all of the drives that are connected to the computer no matter which on you boot from. but only programs that are installed to the boot drive will work.
Now, back to getting an OS onto a usb device in the first place.
In your question, you asked if you could use a 512Mb or 1Gb flash drive. This depends on many things such as which operating system you use and how you install it. Generally speaking, you will need AT LEAST 1Gb of space.
For example, If you decide to download the Ubuntu iso file, and burn it too a disk, you will see that it takes up the whole disk, about 700Mb. But, if you decide to install Ubuntu from the disk and onto your primary Hdd, it takes up about 4Gb of space. So, you can either make a flash drive bootable (this is quite complicated) and tranfer the iso file onto it, using 700Mb, or install Ubuntu onto the flash drive (which automatically partitions and makes the drive bootable) and use 4Gb of memory. It all depends.
Personally, i would not use a flash drive of any size as a boot drive as flash drives have limited read and write cycles and much slower I/O speeds. I think that a usb Hdd is a far better alternative and cheaper per Gb or space as well.
I hope this helps and can people please correct me if any of this information is wrong.
Thanks.