Learn Assembly Language Programming on Raspberry Pi 400
One of the easiest ways to learn assembly language programming is on the Raspberry Pi 400. The Raspberry Pi 400 is a complete personal computer built into a compact keyboard. More ...
Operating System Process Control Block
An Operating System Process is a program in execution. It includes the value in the program counter and in the processors registers. A process also includes a stack, data section, and a heap. Although two processes may be associated with the same program, they are considered two separate execution sequences. More ...
Multilevel Queue CPU Scheduling Algorithm
With many CPU scheduling algorithms, all processes are placed in a single queue, and the scheduler selects the process to run. In practice, it is often easier to have separate queues for each priority, and the scheduler simply selects the process in the highest-priority queue. More ...
Operating System Processes
An Operating System Process is a program in execution. It includes the value in the program counter and in the processors registers. A process also includes a stack, data section, and a heap. More ...
CPU Process Memory Address Binding
For a program to run on a CPU it must be brought from files in long-term, non-volatile storage to main memory. Addresses in the source program must be mapped to addresses in main memory. More ...
Operating System Memory Paging Hardware Support
Paging is a memory management scheme that involves breaking physical memory into fixed-sized blocks and breaking logical memory into blocks of the same size called pages. When a process is to be executed, its pages are loaded into any available memory blocks. More ...
Basic Computer Architecture
Computers today, even that PC on your desk are unbelievably complex. You can't understand computers without an understanding of the basics. In this article I explain basic computer architecture in simple, basic terms. More ...
Using The I2C Bus
The I2C bus is used for communications between individual integrated circuits located on the same PCB. The I2C protocol supports multi-master, multi-slave communication, which means you can add a lot of functionality to your design. 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 ...
AMD's Phenom II Processor
Phenom II is AMD's family of 45 nm multi-core processors and is the successor to the original Phenom. In the Phenom II, the shared L3 cache increased from 2MB to 6MB. The chip has an integrated, dual-channel memory controller that supports DDR3 RAM, and 4000MHz HyperTransport technology. More ...
Processor Interrupts
An interrupt is a signal to the processor indicating an event has occurred that needs immediate attention. When an interrupt occurs, the processors normal path of execution is interrupted in order to run a routine to service the interrupt requester. More ...
Operating System Memory Paging - Page Table Structure
One method of memory management is to break physical memory into fixed size blocks and break logical memory into same sized blocks called pages. The physical location of pages is tracked by a page table. More ...