why is there a “safe to eject” option for USB sticks?

508 views

After you’ve transfered all your data on/off, why cant you simply take out the stick? where’s the harm?

In: 252

30 Answers

Anonymous 0 Comments

It’s the equivalent to the light on floppy drives that indicates when data is being written or read from the drive. Just like you aren’t supposed to eject a floppy disk when the light is on, you also need to make sure the USB is not being written to when you remove it.

If you don’t know what a floppy disk is then you could probably post another eli5 to ask.

Anonymous 0 Comments

ELI5 answer – your PC can finish writing the file to the USB stick, but inside of the USB stick the file might not be “finished” saving. If you pull the power, the USB stick might lose that file, and maybe even other files too.

Anonymous 0 Comments

I’ve never used the “eject usb” sequence and literally never had an issue. I used to work in tech and would be running files from computers to machines 100s of times a day

Anonymous 0 Comments

Your computer does a trick to make USB drives feel faster than they are where when you copy a big file to the drive, the computer keeps track of what’s supposed to be on the drive and pretends to be done copying as soon as it knows everything that’s supposed to be there. Then it can quietly finish copying later, and it feels to you like your USB drive is really fast.

When you “eject safely” the computer finishes all the copying it was pretending to already have done, and then tells you it’s safe to remove your drive.

Anonymous 0 Comments

You can but most of the time you’ll end up loosing files.

The data transmission between Windows and an USB storage device has intermediaries.

I’m going to simplify it so it gets like this:

Your computer drive ( any kind, like SSD, HDD and so ) has a dedicated zone to buffer data. It is called *cache .* That zone is faster than the rest of the disk. Its purpose is to store data in advance for faster access later. The amount of data it can store is small. Let’s say for this example that it is 1 GB but it really varies a lot and it is tied to several factors.

So you want to transfer a vide from your computer drive to an USB drive. The video is 15GB. So you drag and drop the file from your “Video” folder to the USB. Windows informs the transfer to the HDD and it starts moving the file to its *cache* memory until its filled. Then starts moving the video file from the cache to the USB.

The ” transfer dialog” or progress of transfer will kick in immediately after you drop the file onto the USB. But the file actually will move to cache first making you believe it is already being stored on the USB drive.

So when Windows has passed the last piece of data to the disk cache, the transfer progress will stop showing. And because the disk cache is 1 GB, there is still 1GB left until the full video is on the USB drive. So if you just unplug the USB device immediately after the transfer progress dialog has disappeared , you’ll be preventing the transfer operation to complete.

Once the disk has finished transfer the file it will inform to Windows that the transfer operation is done. Then, if you have pressed the “safe eject” button, Windows will inform you that it is safe to extract the drive.

A couple of points:

* This happens because disk drives have their on *controllers* to handle data transfer. Nobody knows better how to transfer files than disk manufacturers so Windows let the device do its job.
* A disk can not be entirely cache ( in case you wonder ) because it is expensive. SSDs are some sort of cache like disks. They act very like RAM memory. That’s why they are faster
* Surely there is room form improvement on how and when Windows communicates with the disk so Windows can actually inform you better. Usually, transfers happen so fast that this is overlooked but there *are* some controllers that communicates with Windows drivers really well so the transfer progress dialog is actually accurate.

Anonymous 0 Comments

I dont even remember the last time I “safely ejected” anything. I just unplug when im done transferring. Never had any issues over the 10 years.

Anonymous 0 Comments

ELI5 without analogy:

Because most operating systems lie to you. They do not write the file to the disk immediately, they hold the file in the memory and write it at the speed of the disk. This way you can continue working. It is like printing. Applications say that they finished printing even before the first page printed out. Modern hard disks are very very fast so you do not even notice this delay, but most memory sticks are old and do not provide fastest speeds, because what is the point anyway? Your USB port will not be able to provide that fast speed either, so let’s keep things simple, cheap, and slow by extension. Eject option is added to force write operation to complete before you can safely write the files to the stick, so no file will be half written.

I’m not sure if printing thing is an analogy or just an example, sorry about that

Anonymous 0 Comments

When you insert the USB drive the operating system connects it as a readable file system so programs can open and close files on the drive. Most programs have separate tasks for opening, reading, writing and closing a file. If you pull the disk out during one of those operations you run the risk of corrupting the data on the drive. Now some operating systems have a buffer for file operations to make programs work faster. So your program is not directly reading or writing to the drive, it’s actually reading and writing to RAM temporarily and then the OS commits any changes to the drive. If you have a delayed write in memory that’s not been committed and you yank the drive you run the risk of corrupting the file on the drive and a very minimal chance at Operating system or application corruption for the failed write. You can change the delayed write settings but the trade off is speed. The risk to damaging your usb drive or computer is pretty low overall. I’ve only ever corrupted one drive this way in the last 20 years

Anonymous 0 Comments

Don’t care about it. If the copy window is not visible on the screen.

Nothing happens. No havocs… Have fun..

Anonymous 0 Comments

It is a final check that all apps have stopped using the drive. You might just be transferring some files, but a hidden OS app may be generating previews of images and files and saving an index to the drive, or you might have that report for your homework open on word which you edited directly off the drive and just forgot.

When you click eject, the xompiter checks if any apps are using files on the drive, and if so, it warms you that you shouldn’t eject it.

If you eject the drive anyway, ignoring the warning, then apps may crash because they don’t have the files they need, or files on the drive may not have the latest changes, or may be damaged if only half the file is updated.

Once you close down all the files and close the apps then the safe eject doesn’t do much. It just tells apps that the drive is no longer avaialable, so that they don’t try to use any more files. Once an app has finished saving a file and gets confirmation that the file is saved, it should be completely intact on the drive.

Apps won’t quit until they get the save complete message, so once you’ve closed down an app, then the data should be OK – although some apps do some tricks to make them look fast (they appear to save and close instantly, but actually just pretend they’ve finished and carry on working in the background).