Comments

You must log in or register to comment.

IHOP_007 t1_jdi8pmo wrote

There are two types of memory volatile and non-volatile. Volatile means that it gets erased if it loses power and non-volatile means it stays if it loses power.

When your computer loads a program it loads it into volatile memory as it's a lot faster to access and make changes to. However, because it's making changes to it, it might do something weird that causes the program to mess up to either that specific program or something else that interacts with it.

By "turning it off and on again" you reset all of the volatile memory and reset it to its initial state, before it caused that issue for itself.

35

WeirdSysAdmin t1_jdiotok wrote

Adding to this, RAM in desktop computer is typically NOT error correcting. That is usually something we only put in server hardware due to cost.

Error correcting RAM basically has an extra storage chip on it that continually checks for memory corruption.

RAM is actually insanely sensitive to environmental changes. Something like an electrical fluctuation can cause values stored in RAM to change. This can even be caused by planetary scale things like solar flares or little things like temperature changes.

3

fede142857 t1_jdiw0cv wrote

> Something like an electrical fluctuation can cause values stored in RAM to change. This can even be caused by planetary scale things like solar flares or little things like temperature changes.

Relevant article I read years ago from Oracle Linux Blog: Attack of the Cosmic Rays!

3

SirWigglesVonWoogly t1_jdj2qge wrote

The fact that computers work consistently when bits are about the size of atoms is absolutely incomprehensible to me.

1

Boagster t1_jdje9ff wrote

I've been a computer geek my whole life - like, I learned the alphabet using the keyboard of my family's 1989 Dell and a passion for them just continued to grow from there.

Not only can I not fathom that they work consistently, I can't fathom how we ever figured out how to get semiconductors to perform logic equations. I've probably spent days worth of time trying to wrap my head around it and I just can't.

1

GoldenAura16 t1_jdjk4zc wrote

It drives me crazy that I can understand the HOW, but not the WHY of the thing. As an engineer I love knowing the how and the why, but with computers its just....static and frustration.

1

Boagster t1_jdjkem3 wrote

See, there's your problem. You mixed static with your computer.

2

GoldenAura16 t1_jdjkijk wrote

I thought I was mixing computer with my static....this explains everything!

1

Saporificpug t1_jdjzxim wrote

It's also worth mentioning that on newer versions of Windows, "shut down" does not reset your memory. You actually want to "restart". Because of Window's fast boot, it creates a snapshot and reloads it into memory when shutting down. Where as restarting refreshes it.

2

tmahfan117 t1_jdi8sh6 wrote

Because computers a really good at following instructions. They love following steps. But if something goes wrong and they get off of those steps it’s very hard for them to find their way back into them. But if you force the computer to start over at the beginning, chances are it will complete the steps just find as long as nothing goes wrong.

So turning something on and off again is essentially just saying “hey, you messed something up but you can do this, I’m gonna put you back at the start, try again.”

19

cdtoad t1_jdiaho2 wrote

Well, you see, it's all about the magical power of the "off" and "on" buttons. When you turn something off, you're essentially giving it a chance to take a breather and clear its head, so to speak. And when you turn it back on, it's like giving it a fresh start, a clean slate. It's like sending it off to IT rehab for a quick reset.

Plus, let's face it, sometimes the machines just need a good kick in the circuits to get them going again. And what better way to do that than by turning them off and on again? It's like a gentle reminder that they're not the boss of us, we're the boss of them.

Of course, it's not a cure-all for every IT problem, but for those pesky glitches and hiccups that seem to crop up out of nowhere, it's a tried-and-true method that never fails. So go ahead, give it a try. Turn it off and on again. You might be surprised at just how effective it can be.

Moss

3

WillShelbyOBE OP t1_jdiat5s wrote

Agreed! I think your comment is a well articluated version of my understanding. But I want to know the deep, deep rationale behind it. It seems so crazy to me that in our advanced technology world that the best troubleshooting is to turn it off and on again.

2

LARRY_Xilo t1_jdifi7b wrote

Its "the best" because its very fast, everyone understands what to do and you dont need to figure out what even went wrong or how to fix it. Most things could be fixed without a restart but it requires knowledge, time and access to the device. So why try to use valuable time from someone with knowledge if a restart also works.

3

Pilchard123 t1_jdimkav wrote

> everyone understands what to do

laughs in IT support

3

jak0b345 t1_jdida1e wrote

it is not the best troubleshooting method we have, not by a long shot. but it is the easiest one that still is able to solve some (or even most) problems. because of that it is always the first go-to method before trying something more involved like deciphering logs or error codes to try and understand the source of the problem.

2

Alcoraiden t1_jdio6ir wrote

Let me give this a shot. I'm an electrical engineer, for context, so I'm more on the hardware than the software, but here goes.

Preface: In an ideal world, a computer would work the same way each time. That's what code and circuits are designed to do. However, obviously, that doesn't always happen.

Hardware answer: All your machines are made of circuits, as you know. The software is running on something. When you transmit data from point A to point B, like when you press keys on your keyboard and signals go flying out to the processor, things can go wrong. Some common issues in circuit design, some of which should be caught by engineers in design:

- Marginal voltages, where you barely have enough juice to run what you're trying to run and any sagging in the power will cause problems)

- Transistors overlapping their switching, where you get "shoot-through" where power connects to ground briefly, usually happens in motor drives,

- Overheating, where electronics change behavior sometimes drastically when hot, and can even melt/fuse

- Not enough static protection, so you can shock it with your finger when you touch it and change the voltages inside

There are so many more. Sometimes your traces on the printed circuit board are poorly matched, so high speed components will sometimes glitch out when they don't recognize a parallel data bus that comes in out of sync. Sometimes your power rails don't come up in the right order. I could write a list as long as my arm of issues that can cause intermittent bugs.

I had to restart my smartwatch once when I shocked it just right that it froze up -- presumably the sudden voltage spike, while taken care of by protective diodes, had caused enough chaos inside that the processor didn't know what to do. But once you drop the power rail and everything goes to 0V (roughly), you can start it up again and now it's fresh. It doesn't remember what went wrong unless you physically damaged a part.

The summary of all this is that there are many parts to a machine that are functioning marginally, such that small random events can determine when it works and when it doesn't. Restarting just clears out the negative effects of a bad run, can allow hardware to reset its voltages or cool off, and starts from scratch for another try. Good engineering will minimize the chance of these random events causing issues, but a few will always get through now and then.

Turning it off and back on again is a temporary solution. As an engineer, I am not allowed to just reboot and let a known bug through. It will show up again later. Bugs are almost never single events, even if it takes a while for them to reappear.

2

oam1989 t1_jdib94b wrote

Think of a grid-like city, and you have to go to the supermarket starting from your house, you follow directions to get there but one time you make the wrong turn, and you get lost therefore you can't arrive to your destination.

When you turn off and on, is like you're transported back to your house and you can start again to follow instructions to arrive at your destination. It's almost the same with computers and devices.

3

chrischi3 t1_jdidygm wrote

Simply put, there are constantly numerous processes running in the background on your computer that you probably aren't aware of. All of them constantly use your computer's memory to some extent. They read and write stuff in your computer.

Now, there are two types of memory on your computer, volatile, and non-volatile. Volatile memory gets deleted when you reboot your computer whereas non-volatile stays in place.

Generally speaking, your computer has two types of memory, ROM, which is your long term storage (though the term ROM, which is short for read only memory, is kind of inaccurate, as it implies that you can only read what is stored, but not write to storage, or in other words, you can access the file, but not modify it), and RAM, or random access memory, which is your working memory.

Now, ROM is always non-volatile, but RAM isn't. RAM is, however, faster than ROM, which is why both types are used. Sometimes, what you need is the ability to read and write quickly rather than the ability to store a file long term.

What's any of this have to do with these processes running in the background? Well, as they run, they may store data in your RAM that just doesn't get deleted. Afterall, even the most avid PC users rarely let their PC run continuously for more than maybe 12 hours, so leaving some files undeleted in a place that gets reset anyway after a few hours isn't a big deal.

However, in the odd situation where this does break something, you can just reboot your PC and that solves it. Same thing with many other software programs. They store various types of settings in RAM. Often times, these are settings are things you're not even aware exist, because they run in the background, without your computer ever letting you know they exist in the first place. If something goes awry, restarting the computer will often fix it for the same reason.

2

Slypenslyde t1_jdibz1n wrote

Not just computers, but most complex machines tend to have some kind of "memory". Stuff like jukeboxes could work way before we had computers, they used circuits we call "electromechanical" to basically accomplish what computers do with bigger, bulkier components.

Let's stick with a physical example. Some motors are very precise about how far they'll move if they recieve power for specific amounts of time. So robot arms and other things that need to do repetitive motions follow a "program" that's really just them applying power to the motors in specific patterns. But if something goes wrong and a gear slips, that can muck everything up. That means the arm didn't move as much as it should have, so from that point on the program's just a little bit wrong. If it keeps happening, the robot arm won't be doing what it's supposed to and is likely going to cause damage to something.

The startup process for these kinds of machines involves getting it into a "known state". For this kind of motor, it means there's usually physical barriers that stop the motor from turning too far in one direction. So to get it in a "known state", when the machine starts up it will turn the motor in that direction until sensors tell it that it has reached as far as it can go. (Or, it turns for an amount of time guaranteed to put it in that position.) Now the system "knows" where the motor is again and is safe.

(More sophisticated motors have more sensors and can tell where they are, but they cost more and don't make this explanation work so well.)

That's kind of what can happen with computers and more sophisticated machines, too. Their program or even the circuits may have tiny problems that cause tiny mistakes. Those mistakes may not be harmful for the first few hours, which is why the developers didn't notice them. But over time those tiny mistakes might add up and start causing the program to do weird things, sort of like how if the gear for the robot arm slips the program is now incorrect because the arm is not in the position it should be.

The reason you have to sometimes leave it off "for about 5 minutes" is interesting. NORMALLY a good computer should go through all of its memory and set it back to a safe state when it starts up. But that can take a long time so it's a step that might get skipped. But most memory doesn't "hold" its value for very long if the power is not on, and eventually ends up in the known state anyway. So if the program doesn't clear memory at startup (or if there's a bug that causes it to miss some memory), turning off the power for long enough to make ALL of the memory reset can fix that little issue.

So it's kind of like if after you turn off the robot arm, you manually manipulate it into the "safe" position before turning it on. That makes sure it's in the state the program expects.

1

aRoseBy t1_jdidnmh wrote

Sometimes you need to not only shut down, but yank the power cable.

After shutdown, some components may still get power, I would guess to keep them warm and ready for reboot.

I've seen router problems which persist after shutdown / reboot, but fixed by unplugging the power for a minute before reboot.

1

Burnsidhe t1_jdiyrgs wrote

Even after you shut down a computer or other device, there is still a residual charge left in the circuitry. To really reset to zero, that charge must be drained. This can be done by unplugging the device and waiting, or unplugging and holding the power button to try to turn the device on. Either way, the charge dissipates.

1

delocx t1_jdieo1t wrote

It's a very simple process to understand. Most powered devices are designed to automatically configure or arrange themselves in a way that prepares them to perform whatever work they're intended to do. They're also often designed to return to a state when turned off that allows them to do the work needed at startup to prepare for use.

That work often requires a sequence of steps or has a number of parallel steps that are intended to occur in an order to achieve the device's purpose. Sometimes things can happen the push those steps out of order or into conflict, and trying to go back and sort out what exactly went wrong, correct it, and then correct all the subsequent steps that may have been impacts is impractical.

When you turn the device off, it returns to that pre-startup state, and turning it back on restarts all those steps it automatically does to prepare for use, and as long as whatever set of circumstances caused the original problem don't happen again, the device can return to normal operation.

1

Misdirected_Colors t1_jdierad wrote

Imagine a computer like a person. As you get tired you start to make mistakes. The more tired you are, the more mistakes you make and those mistakes stack up and lead to other mistakes. Little brain facts, clumsiness, not paying attention, etc. Sleep is a good reset of your mind and you wake up well rested.

Computers are similar. They start to have little mistakes as temp memory gets filled up over time. A power cycle resets that temp memory and clears any junk. Gives the computer a good night's sleep.

1

equidamoid t1_jdiflt2 wrote

Well, it doesn't. Yes, it resets the state to the known good (see other comments), but it most likely doesn't fix the actual cause of the problem, but rather hides it.

1

LeafsWinBeforeIDie t1_jdijvxp wrote

Easiest way I have explaining it is it's like a zipper that went a little off track. Sometimes the only way to get that zipper right again is to undo the whole thing and start from scratch.

The little errors in software are like pubes getting stuck in your fly. Sometimes the zipper or software still kinda work, sometimes everything will be off by a bit, and sometimes it just fails completely and you have to start again.

1

ShadeBaron t1_jdikkoa wrote

When things run for a while they can have mess ups

Most startup processes on most items have a startup process which runs a very basic start of default services or actions.

By simply just turning the power on and off it allows the startup to run again and essentially reset and have no issues because it starts up correctly using the basic default startup parameters.

1

freecain t1_jdim9jf wrote

  1. wipes the temporary memory (volatile). A program may have hit a loops (tried to follow instructions, but got lost and is now going in circles looking for a line of code that doesn't exist). If you shut it down, all those processes stop running, and the system starts each program over from scratch so the program knows "where" it is.

  2. Most modern computers have a bunch of software dedicated to checking both software and hardware problems when it starts up. It can fix a lot of these.

  3. Sometimes the issue is the user, not the system. Restarting it gets you back at the beginning of your task, and maybe you'll pay closer attention and get it right this time.

  4. some updates don't apply until after a restart happens - these updates may fix your issue.

  5. it kills all running program. You might have started something in the background that is taking up a ton of resources and causing the problem that you aren't even using. restarting will shut that down and let the programs you want to run have the resources it needs.

1

thegooddoktorjones t1_jdimbbs wrote

Software has logical ‘states’ that work best when they flow into each other as planned. If you have a bug and get into a weird state, powering down and up sends you back to the known initial state, from which things should progress as expected.

A lot of effort in embedded software goes into not getting into bad states and if you do, recovering, but sometimes mistakes are made, or management cheaps out and bugs remain.

1

Certified_GSD t1_jdireqn wrote

Sometimes you have a bad day. Maybe you got a flat tire on the way to work or maybe you tore your favorite shirt. Then you find out that your crazy Uncle Bob is in jail again and that is going to mess with family plans, your friends cancel last minute on you, your randoms in your game of League are dogshit, etc etc.

Sometimes there's no saving a bad day. Sometimes, all you can do is go to sleep and start over fresh the next day.

1

zero_z77 t1_jditwv8 wrote

When your computer first starts up, it initializes to a known good state. A lot of problems that happen in software are a result of things ending up in a bad state. By turning it off and on, you return to that original good state.

Take a game of chess for example, when you start, all the pieces are in known positions and you can start playing the game (good state). Now, say halfway through a game, someone bumps the table, and scatters all the pieces around (bad state). You don't know exactly where everything was, so the only fair thing to do is clear the board (turn off), and start a whole new game (turn on), thus returning the pieces to their starting positions (good state).

1

less_unique_username t1_jdj00d1 wrote

In addition to the other insightful comments, tech support often recommends turning it off and back on for a much simpler reason: the device in question could have been powered off in the first place. But if they ask it directly, “is it powered on?”, in all likelihood they are going to get a snarky “of course it is, who do you think I am”. Instead they ask for some placebo procedure like blowing on the power cable, and in a not insignificant portion of the cases the caller is going to realize who they actually are but will say “OK, that helped, thanks” without losing face.

1

cthulhu944 t1_jdj23l3 wrote

I think the best way to answer this is to understand what is going wrong. What's causing the device to go wrong is that some sort of glitch--like a software bug, a hardware bug, an environmental glitch (power spike or drop), etc. has caused the system to be in a state that doesn't work. For example a software bug has overwritten the variable that tracks the number of players. or a hardware glitch where if the power drops for a millisecond or two, the DAC loses some sort of initial configuration.
So how do you fix that? Just turn the power off, then back on and the device will start back up in the initial, pristine configuration.

1

TomChai t1_jdj5cpb wrote

Because that's not real troubleshooting, instead it just lets you revert back from a known good state, the starting state.

Real software troubleshooting is not only expensive, but also out of regular user's capability to collaborate.

1

Flair_Helper t1_jdjsjgr wrote

Please read this entire message

Your submission has been removed for the following reason(s):

  • ELI5 requires that you search the ELI5 subreddit for your topic before posting. Users will often either find a thread that meets their needs or find that their question might qualify for an exception to rule 7. Please see this wiki entry for more details (Rule 7).

If you would like this removal reviewed, please read the detailed rules first. If you believe this submission was removed erroneously, please use this form and we will review your submission.

1