There is no such thing as Cut in file management, on any platform (Windows included). When you think about it, that would simply be totally insane to implement.
Cut, the actual Cut, removes the content you're "Cutting" and moves it entirely to the clipboard, which is quite volatile. If you don't paste it, it remains in the clipboard until something else simply overwrites it. Data loss anyone ?
No, what "Cut & Paste" does exist in File Management is actually what is called a "Move" operation. This command is MOVE under DOS/Windows and mv under Unix. Other platforms use other names, but the theory is always the same.
And even then, "Move" operations are not actually moving files, that would simply be totally insane to implement.
Moving means reading in a block/inode/record from a file, deleting it, and writing it in the new destination file. If something happens to the computer while this is being performed, you're left with 2 completely corrupt files. Data loss anyone ?
So, what are we left it, how does file management actually do it if all other methods are just pure insanity ? First, it depends on a critical condition : Are we wanting to "move" these files accross file system boundaries ? If you answer NO to this, then we can do it in an easy step : Modify the filesystem entry for the file to place it in the new location rather than the old. This means the actual data stays in the same spot on the drive, it's just its metadata in the database known as the filesystem that makes it show up elsewhere to file managers. How this is done is entirely dependant on the filesystem on your drive, and this is kernel level stuff, determined by the VFS layer so that the userspace programmer does not have to bother with such details.
If the answer is YES, it becomes a 3 step process. Copy is the first step, where the actual source file is read into memory and stored. Paste is the second operation where the destination file is written from the buffer in memory (these 2 steps can be combined in case source and destination are specified from the get go). After the destination is written, then we can move on to the 3rd and final step, deleting the source. This will also usually be done at the VFS layer so that the userspace programmer does not have to bother with such details.
Now. Finder. Yes, it only does "Copy & Paste", but it can also do "Move". In Snow Leopard and prior, move could only be performed if you did not cross filesystem boundaries (ie, write to another volume) and the way to do it was to drag & drop files. The default behavior would then be to move the files. Accross file system boundaries ? A Drag & Drop results in a copy because frankly, moving accross file system boundaries by default would simply be totally insane to implement.
