Skip to content
Antonizoon edited this page Nov 10, 2012 · 1 revision

What is a Computer?

Computers permeate every part of our lives, but many do not know the

Software

Software is defined as the programs, apps, and operating systems that make the computer work.

Software is divided into multiple levels

Binary Code

The computer can only work with binary code, which is made up of "ones" and "zeros".

This binary code is usually generated with assembly code, which is easier to work with for human programmers.

Binary code built for one processor platform is incompatible with another. For example, ARM binaries do not run on x86 processors.

Assembly Languages

Code that works with an assembler to create binary code. Assembly languages are unique to each processor.

High-level Languages

High-level languages, such as C, C++, and Pascal attempt to abstract away the quirks and specific design of each processor's assembly language. This allows programmers to write a program that can be compiled to work with any supported processor.

High-level languages (in theory) allow the programmer to worry more about universal logic than the unique quirks of each processor. Most programs are written in high-level languages.

Scripts/Interpreted Languages

Some languages work at an even higher level than high-level languages.

Interpreted languages, such as Java, Python, and C#, are designed to abstract away the quirks of operating system, allowing programmers to create programs that work on all platforms (in theory, anyway).

Unfortunately, abstraction often comes at the cost of speed and efficiency. Programs written in interpreted languages are notorious for memory leaks, slow speeds, and other issues, though most of these can be sidestepped by a good programmer.

The Von Neumann Architecture

The Processor

There are two types of processors used on the market. While each has it's pros and cons, and differences in design require incompatible assembly code, they both do the same job.

  • x86 - The Intel Processor. Usually used by desktops, laptops, and netbooks for it's raw power and compatibility with the past. This power comes at the cost of power usage, a major barrier to it's implementation in mobile devices (although the Atom family has attempted to rectify the issue). AMD also makes Intel processors.
  • ARM - The Acorn Processor. Used by mobile devices and small computer units for it's low power usage and simple design. The simple design makes calculations more roundabout and slower than x86 processors, but some types of ARM processors have attempted to sidestep that issue.

The Memory

Computer Memory is analogous to a

This is often confused with Computer Storage, which has a similar role, but stores data for a longer period of time.

The Storage

Storage

BA Logo

Bibliotheca Anonoma

Android Development Codex

Note: All non-Android projects have moved to the BASLQC Wiki.

Introduction

  • Introduction - A quick intro to the rationale and ideals of this guide, and smartphone modding in general.
  • General Setup - Learn how to install and run the tools you need to succeed.
  • Device Guides - Customized, fully decked out guides for rooting each and every device we could find.
  • General OS Customizations - General customizations that work on all devices of a specific OS.

Content Guidelines

  • General Guidelines - The ideals that you should uphold while working with and editing this guide.
  • Device Guide Templates - Templates and general guidelines for creating customized guides for a device.
  • Linux - Run a full desktop OS on your little mobile device; research is being made to make it comfortable to use in the mobile space.

Reference

  • Glossary - Contains all the crazy acronyms and word soup that you'll need to wade through when using this guide.
  • Android Buying Guide for Modders - While modding can fix up an outdated device, it will make your life easier to buy the right device from the start.
Clone this wiki locally