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 ...
Direct Memory Access (DMA)
In early computers, all data transfers required the processor to read and write single words from memory until the entire transfer is complete. With DMA, the DMA controller takes control of the system buses to move data between the device and main memory. More ...
Capacitors in AC Circuits
In an AC circuit capacitors exhibit a property similar to resistance called reactance and cause a phase shift between votage and current. The vector sum of resistance and reactance in an AC circuit is called impedance. 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 ...
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 ...
Program Flow Charting
Depending upon the language used, program code my be difficult for humans to read and understand. However, one type of programming that is very easy to understand is flow charting. More ...
Digital Logic Transfer Characteristics
In the real world, gates don't transfer logic levels instantaneously. The time it takes for electrons and holes to move through the semiconductor material (called propagation delay) in CMOS are less than 100 ps (pico seconds), but there are other delays caused by resistance, capacitance, and inductance. More ...
Intel's Sandy Bridge Micro-Architecture
"Sandy Bridge" is Intel's code name for a new cpu core microarchitecture. It introduces a few new or improved features. The memory controller, the PCI Express controller, and video circuitry are all located within the processor die and the new ring architecture uses a Last Level Cache between the CPU and graphics cores. More ...
Operating System Memory Page Sharing
In a paged environment sharing of memory among processes provides numerous benefits including sharing non-self-modifying reentrant code and interprocess communication. More ...
Difference between Stack, Heap, and Queue
Stack, heap, and queue are ways that elements are stored in memory. Stack elements are added to the top of the stack, and removed from the top of the stack. The mnemonic LIFO is used to describe a stack (Last-In-First-Out). With a queue, the first one in is the first one out. The mnemonic FIFO is used to describe a queue. A heap is an area of memory where elements can be stored and removed in any order. More ...
Multicore Programming
A recent trend in system design is to place multiple computing cores on a single chip. Each core appears as a separate processor to the operating system. We call these multicore or multiprocessor systems. More ...
Network on a Chip (NoC)
NoC (Network on a Chip) is a method of placing a much larger number of processors on a multi-core chip. Much like a regular network, NoC has multiple point-to-point data links that are interconnected by routing switches. More ...