Operating System Boot
The procedure of starting a computer by loading the kernel is known as booting the system. On most computer systems, a small piece of code known as the bootstrap program or bootstrap loader locates the kernel loads it into main memory, and starts its execution. More ...
Arduino Microcontroller Development Platform
The benefit of the open source Arduino Microcontroller Development Platform is that the software is free and the hardware is cheap. This makes it one of the cheapest platforms on which to develop prototypes. More ...
Introduction to the Raspberry Pi
The Raspberry Pi is a tiny bare-bones computer motherboard. You can easily make it into a Linux PC by connecting your own keyboard, mouse, and display. More ...
First-Come, First-Served CPU Scheduling Algorithm
CPU Scheduling deals with the problem of deciding which of the processes in the ready queue is to be alocated the CPU. There are many different CPU scheduling algorithms. In this article we describe first-come, first-served scheduling. More ...
Pi-Top kit - Build Your Own Laptop
Computer hobbyists has been building their own desktop computers since the mid 1980's, but I know of no laptop kits, until now. The Pi-Top is a kit that lets you build your own laptop. More ...
Monolithic Kernel vs Microkernel vs Hybrid Kernel
An operating system consists of two parts, the kernel space which operates in privileged mode, and the user space which operates in unprivileged mode. More ...
Dynamic Loading of Program Routines and Dynamically linked libraries (DLLs)
In order to execute, it is not necessary for an entire program to be in physical memory. With dynamic loading, a routine is not loaded until it is called. More ...
The Fetch, Decode, Execute Cycle
The Fetch, Decode, Execute cycle is paramount to the functioning of a microprocessor. In this article I'll describe the Fetch, Decode, Execute cycle simplified to its bare-bones in a highly simplified fictitious microprocessor. More ...
Analog to Digital Convertion with a Microcontroller
Analog-to-digital conversion (or A/D conversion), is an electronic process that converts a continuously variable signal into a digital signal (expressed as a string of 1s and 0s). More ...
Binary Floating-Point Numbers
Floating-point numbers allow you to use the very large, and very small, numbers commonly found in scientific calculations. A binary floating-point number consists of three parts, the sign bit, the mantissa and the exponent. More ...
Microcontroller Registers
Registers are special small memory locations where the microcontroller can write data to or read data from. Special function registers help point to main memory locations, indicate the result of a mathematical operation, hold parts of an instruction or indicate the status of some operation or hardware feature. Some registers are general purpose and may be used by the programmer at their own discretion. More ...
Microcontroller's Parallel I/O System
The most common way for microcontrollers to interact with the outside world is the The digital I/O lines. More ...