Data Structures - Linked List, Stack, Queue, and Tree
An array is a simple data structure in which each element can be accessed directly. But what about storing an item whose size may vary? And what about removing an item if the relative positions of the remaining items must be preserved? In such situations other data structures may be needed. More ...
Basic Decoder Circuitry
A microprocessors is a circuit that reads and execute program instructions called opcodes. A decoder is a circuit that converts an opcode into signals tused to control the circuitry of the microprocessor to enable it to perform the instruction. 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 ...
How Computer Chips are Made
The oxygen is removed from silica by heating it with carbon. A tiny seed of silicon is then dipped into molten silicon. As the tiny crystal is slowly lifted out of the crucible silicon crystallizes around it. More ...
Binary Number Representation and Binary Math
Computers perform all of their amazing work with only two voltage levels, one representing binary 0, the other representing binary 1. This article describes how to perform binary addition and subtraction. More ...
Oscilloscope Required for Serious Digital Electronics Work
The oscilloscope is an instrument that displays digital signals on a line graph with time on the horizontal axis and voltage on the vertical axis. It will be difficult to do digital logic design without the use of an oscilloscope. More ...
Processor Affinity in Symmetric Multiprocessing
Processor Affinity refers to a process's tendency to continue running on the processor on which it is currently running. When a process executes on a CPU, that process's cache is populated with its most recently accessed data, if a process is moved to a different CPU, that second processor's cache must be populated with that data. More ...
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 ...
Intel Celeron D Processor
The Celeron processor is a budget processor offering moderate performance at an affordable price. The Celeron processor is suitable for use in notebook and desktop computers running home-office applications and providing access to the Internet. More ...
Basic Computer Architecture
Basic computer architecture refers to the structure of a computer system and comprises its hardware, firmware, and software. Hardware consists of the physical components in computer architecture. The main hardware components of the computer architecture include the CPU, memory, and bus. More ...
Logical Versus Physical Memory Addresses
Computers use logical and physical addresses to access memory locatiuons. The CPU generates logical addresses. At run-time the Memory Management Unit (MMU) maps logical addresses to physical addresses. More ...
Challenges of Programming Multicore Systems
Operating system designers must write scheduling algorithms that use multiple processing cores and application programmers, mustmodify existing programs and design new programs that are multithreaded. More ...