That's not an easy question to answer, but if I were forced to give a short answer, it would probably be: no, you can't upgrade while running.
Here's why: do a thought experiment. Think about having a sheet of paper in front of you, and you begin writing. Then you deicde you would rather write on a different style of paper. Is it possible for you to replace that sheet of paper and never stop writing? I would doubt it. There would be a pause, no matter how short, where you have to stop writing to put the new paper in place. It's a similar situation for computers.
When you run a program, some (possibly all) of the program is copied into memory; the computer's sheet of paper so to speak. If only part of the program were loaded into memory, you run the risk of crashing the program (horribly I might add) by changing the program on the disk. At some point, the computer will need to read some more information from the program file, but it would no longer be coherent. That would be like reading War and Peace, stopping in the middle of a page, picking up Crime and Punishment, start reading at some random page, and expecting the transition to make sense/be coherent.
If all of the program is copied into memory, then you can upgrade the file on disk without crashing the program, but you still have a problem. The program you're running is the older copy. You won't get any new features or updates until you close the program and restart. Similarly, this would be like expecting an old copy of War and Peace to update itself when a new edition is printed with a new foreword, biographical information, or whatever.
This isn't a problem with Linux alone. All operating systems "suffer" from this.
Last edited by Dark_Helmet; 08-09-2004 at 12:42 PM.