The Basic Anatomy Of A Program And How It Can Take Over Your System

There is a big mystery when it comes to the world of programming and how a program actually operates.

If the person that you are trying to explain the system to is not a programmer then it is hard to put what is happening behind the scenes of the computer in abstract terms.

Even a lot of programmers have trouble digesting what is going on behind the scenes, especially if they work on a language that is several layers above the “metal”.

The “metal” is a term that is used when we are describing the hardware parts of the computer.

Usually this means the actual CPU and motherboard.

When a program runs on the computer, is actually going through several layers before it can execute.

I can give you a brief synopsis on how this works and then follow it up with an explanation of how this can lead into someone taking over your computer.

Execution

When you first start up a program, most of the time the data is just sitting on your hard drive.

We will think of it as “sleeping” on your hard drive.

Once you click on the button, you are waking the program up.

When you wake the program up, you are placing the data into the memory.

Another name for memory is ram.

Ram actually stands for Random Access Memory.

Once the data is there, it is stored and then released to the CPU.

But before it goes to the CPU, it must make a stop into two to three caches, depending on the quality of the motherboard.

The more caches, the better.

These caches are known as L1, L2, and L3.

The L3 cache is bigger than the L2.

The L2 is bigger than the L1.

The data goes through the caches and ends at L1.

Once there, it goes into a register and then to the actual CPU to be executed.

This may seem like a lot of processes for a single piece of data, but your computer is so fast that you will not notice.

The only time that you see a lag in the system is when there is a large amount of data trying this process at once.

Once it gets to the CPU, you then witness the magic on your screen.

Now that you know how the program executes, you might be wondering how a bad program can ruin this process.

Messing With The Memory

Well, there are many ways that this can happen but one of the more popular is by messing with the memory.

A talented black hat hacker can change the flow of the program by placing something in the memory that is not supposed to be there.

Usually this is extra data that causes the computer to skip to a part of memory that is not supposed to, giving a program permissions that it is not supposed to have.

These part of the memory that we are referring to is known as the “address”.

This is usually the more complicated of attacks.

Most attacks are not this complicated but do a lot less damage than this type can.

Hopefully I have given you a basic understanding of how your computer works and how the wrong program can do bad things.

Once a rogue program is in the memory, it can spell disaster.

About Lee Munson

Lee's non-technical background allows him to write about internet security in a clear way that is understandable to both IT professionals and people just like you who need simple answers to your security questions.

Trackbacks

  1. […] you want to be able to seriously create interesting programs or learn how to dissect software then you must understand how the computer interacts with […]

  2. […] This post was mentioned on Twitter by Lee. Lee said: The Basic Anatomy Of A Program And How It Can Take Over Your System http://bit.ly/dvSMfc […]

Speak Your Mind

*