The Android Operating System
Android os is similar to Apple ios in that it is a layered stack of software that provides a rich set of frameworks for developing mobile applications. At the bottom of this software stack is the Linux kernal. 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 ...
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 ...
Introduction to Boolean Algebra
Boolean algebra is a system of mathematics in which the values of the variables can take on only one of two values, either 0 or 1. Similar to regular algebra, Boolean algebra can be used to simplify a mathematical expression. Since computer logic is also a system in which the values of the inputs and outputs can take on only one of two values, Boolean algebra can be used to simplify logic circuits. 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 ...
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 ...
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 ...
The Many Processes of Silicon Wafer Manufacturing
A silicon wafer is a thin, circular disc used in the manufacture of integrated circuits and semiconductors. The silicon wafer manufacturing process is interesting. 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 ...
Computer Video Display
If you view a computer as an input-processing-output machine, you can use a keyboard or removable storage device as the input, a program as the processing, but what can you use to retrieve the output? One way to acquire the output, be it text or graphics, is with a video display. More ...
Load Balancing Multiple CPUs in Symmetric Multiprocessing
On Symmetric Multiprocessing (SMP) systems it is important to keep the workload balanced among all processors. There are two approaches to accomplish this, push migration and pull migration. More ...
Priority 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 priority CPU scheduling. More ...