Basic Security – It’s an input thing

If I were to ask you what the most common type of hack is, you'd probably guess something like SSL Injection, or Buffer Overflow, or something of that nature. You wouldn't be entirely wrong, but there's a much more general answer that covers all those things: The most common attack is bad input When it boils

Linux + C – Pipes and Filters

We've seen how to pass arguments to programs, and we've seen how to write to files. Now we'll look at how that is done from the Terminal. Pipes A pipe redirects the standard output (stdout) from one program to the standard input (stdin) of another. It acts like a tunnel (or pipe) between two programs, which

Linux + C – File Pointers

Now that we have a basic understanding of pointers, we're ready to look at file I/O. Files A file is a collection of data which is stored in main memory (as opposed to registers, cache, or RAM). These files are capable of storing a tremendous amount of data, which we can retrieve and manipulate with our

CS 101 – Interrupting the Flow

We have already discussed the fact that a program is a series of instructions executed in a particular order. This is mostly correct, but it's a bit more complicated than that. Introducing I/O When we know that we already have all the data we need to execute our program, we can just run it in one

CS 101 – Get on the Bus

As we have discussed previously, computers operate as a huge array of switches, which operate in the on and off positions. What, we can reasonably ask, defines whether the switch is off or on? The answer: electricity. Buses: Wires connecting switches The average computer contains many hundreds of feet of wire, designed to carry electrical charges between

CS 101 – Basic Components

A computer can be loosely defined as consisting of three parts: the CPU, Memory, and Input/Output devices. We will be looking at these components today. CPU The Central Processing Unit, or CPU, is the brain of the computer. It handles all the logic and math that allows your computer to function. The ALU (Arithmetic-Logic Unit) performs arithmetic