What you need to know about interrupts

If you are from my generation or older, you remember the wonderful days of manually configuring hardware by using jumpers and then connecting the hardware to the ISA bus on a computer. Before I got my first PC, I owned a more user friendly system(an Atari 65XE), so new hardware was magically configured. Well theContinue reading “What you need to know about interrupts”

User to hardware (part 2)

Disclaimer This post is not meant to be a precise description of how a device driver works or an accurate description of the hardware components and their interactions. This post is an introductory post for people that would like to know more about device drivers and hardware programming. Therefore some simplifications have been made. InContinue reading “User to hardware (part 2)”

User to hardware (part 1)

This is the first post in a two post series covering the trip from a running process all the way down to the hardware and back. In this post I will cover the software side, this means I will start from a running process and walk through the different pieces that are needed to talkContinue reading “User to hardware (part 1)”

What you need to know about the C Library

Many people have heard about the C Library and for most its name inspire awe and a magic aura. In short, the C Library is the library that implements the runtime for the C programming language. The C Library also provides an interface to manage the interaction between a process and the system. This isContinue reading “What you need to know about the C Library”

Computer memory from the ground up (part 3)

This is the third and final post in the series about computer memory. If you have not done it, I recommend you to read my two previous posts: Computer memory from the ground up (part 1) and Computer memory from the ground up (part 2). In this post I will go through how dynamic memory is managedContinue reading “Computer memory from the ground up (part 3)”

Computer memory from the ground up (part 2)

In my previous post I explained about the physical memory and how it is connected to the CPU. In this post I will talk about how the program file residing in permanent storage is loaded into the memory and executed. For the purpose of this post we will refer to a generic binary format andContinue reading “Computer memory from the ground up (part 2)”