The Raspberry Pi is a credit-card-sized single-board computer developed in the UK by the Raspberry PiFoundation with the intention of promoting the teaching of basic computer science in schools.The Raspberry Pi is manufactured in three board configurations through licensed manufacturing agreements with Newark element14 (Premier Farnell), RS Components and Eggman. These companies sell the Raspberry Pi online. Eggman produces a version for distribution solely in China and Taiwan, which can be distinguished from other Pis by their red coloring and lack of FCC/CE marks. The hardware is the same across all manufacturers.
In 2014 the Raspberry Pi Foundation launched the Compute Module, which packages a Raspberry Pi Model B into a SODIMM 200-pin module, to encourage its use in embedded systems.
The Raspberry Pi is based on the Broadcom BCM2835system on a chip (SoC), which includes an anARM1176JZF-S 700 MHz processor, VideoCore IV GPU,and was originally shipped with 256 megabytes of RAM, later upgraded (Model B & Model B+) to 512 MB. The system has Secure Digital (SD) or MicroSD (Model B+)sockets for boot media and persistent storage.The Foundation provides Debian and Arch Linux ARMdistributions for download. Tools are available for Python as the main programming language, with support for BBCBASIC (via the RISC OS image or the Brandy Basic clone for Linux), C, C++, Java, Perl, and Ruby.As of February 2014, about 2.5 million boards had been sold.
Level 2 cache is 128 KB, used primarily by the GPU, not the CPU. The Broadcom SoC used in the Raspberry Pi is equivalent to a chip used in an old smartphone (Android or iPhone). While operating at 700 MHz by default, the Raspberry Pi provides a real-world performance roughly equivalent to the 0.041 GFLOPS. On the CPU level, the performance is similar to a 300 MHz Pentium II of 1997-1999. The GPU provides 1 Gpixel/s or 1.5 Gtexel/s of graphics processing or 24 GFLOPS of general-purpose computing performance. The graphics capabilities of the Raspberry Pi are roughly equivalent to the level of performance of the Xbox of 2001. The Raspberry Pi chip, operating at700 MHz by default, will not become hot enough to need a heatsink or special cooling. The SoC is stacked underneath the RAM chip, so only it's edge is visible.
The LINPACK single node computes benchmark results in a mean single-precision performance of 0.065 GFLOPS and mean double-precision performance of 0.041 GFLOPS for one Raspberry Pi Model-B board.A cluster of 64 Raspberry Pi Model-B computers, labeled “Iridis-pi”, achieved a LINPACK HPL suite result of 1.14 GFLOPS (n=10240) at216 watts for c. US$4,000.OverclockingMost Raspberry Pi devices can be overclocked to 800 MHz and some even higher to 1000 MHz. In the Raspbian Linux distro, the overclocking options on boot can be done by a software command running “sudoraspi-config” without voiding the warranty, see note 9 below. In those cases, the Pi automatically shuttles the overclocking down in case the chip reaches 85 °C (185 °F), but it is possible to overrule automatic over-voltage and overclocking settings (voiding the warranty). In that case, one can try putting an appropriately sized heatsink on it to keep the chip from heating up far above 85 °C. Newer versions of the firmware contain the option to choose between five overclock (“turbo”) presets that when turned on try to get the most performance out of the SoC without impairing the lifetime of the Pi. This is done by monitoring the core temperature of the chip, and the CPU load, and dynamically adjusting clock speeds and the core voltage. When the demand is low on the CPU, or it is running too hot, the performance is throttled, butif the CPU has much to do, and the chip's temperature is acceptable, performance is temporarily increased, with clock speeds of up to 1 GHz, depending on the individual board, and on which of the turbo settings is used. Thefive settings are: None; 700 MHz ARM, 250 MHz core, 400 MHz SDRAM, 0 overvolt,Modest; 800 MHz ARM, 250 MHz core, 400 MHz SDRAM, 0 overvolt,Medium; 900 MHz ARM, 250 MHz core, 450 MHz SDRAM, 2 overvolt,High; 950 MHz ARM, 250 MHz core, 450 MHz SDRAM, 6 overvolt,Turbo; 1000 MHz ARM, 500 MHz core, 600 MHz SDRAM, 6 overvolt.In the highest (turbo) preset the SDRAM clock was originally 500 MHz, but this was later changed to 600 MHz because 500 MHz sometimes causes SD card corruption. Simultaneously in high mode, the core clock speed was lowered from 450 to 250 MHz, and in medium mode from 333 to 250 MHz.
On the older beta model B boards, 128 MB was allocated by default to the GPU, leaving 128 MB for the CPU. On the first 256 MB release model B (and Model A), three different splits were possible. The default split was 192 MB (CPU RAM), which should be sufficient for standalone 1080p video decoding, or for simple3D, but probably not for both together. 224 MB was for Linux only, with just a 1080p frame buffer, and was likely to fail for any video or 3D. 128 MB was for heavy 3D, possibly also with video decoding (e.g. XBMC).Comparatively, the Nokia 701 uses 128 MB for the Broadcom VideoCore IV. For the new model B with512 MB RAM initially there were new standard memory split files released( arm256_start.elf, arm384_start.elf,arm496_start.elf) for 256 MB, 384 MB and 496 MB CPU RAM (and 256 MB, 128 MB and 16 MB video ram). But a week or so later the RPF released a new version of start.elf that could read a new entry inconfig.txt (gpu_mem=xx) and could dynamically assign an amount of RAM (from 16 to 256 MB in 8 MB steps)to the GPU, so the older method of memory splits became obsolete, and a single start.elf worked the same for 256 and 512 MB Pis.
Though the Model A does not have an 8P8C (“RJ45”) Ethernet port, it can connect to a network by using an external user-supplied USB Ethernet or Wi-Fi adapter. On the model B the Ethernet port is provided by a built-in USB Ethernet adapter.
Generic USB keyboards and mice are compatible with the Raspberry Pi.
The video controller is capable of the following video resolutions: 640 × 350 EGA; 640 × 480 VGA; 800 × 600SVGA; 1024 × 768 XGA; 1280×720 720p HDTV; 1280 × 768 WXGA Variant; 1280 × 800 WXGA Variant;1280 × 1024 SXGA; 1366 × 768 WXGA Variant; 1400 × 1050 SXGA+; 1600 × 1200 UXGA; 1680 × 1050WXGA+; 1920 × 1080 1080p HDTV; 1920 × 1200 WUXGA. It can also generate 576i and 480i composite video signals for PAL-BGHID, PAL-M, PAL-N, NTSC, and NTSC-J.Real-time Clock The Raspberry Pi does not come with a real-time clock, which means it cannot keep track of the time of day while it is not running. As alternatives, a program running on the Pi can get the time from a network time server or user input at boot time.A real-time clock (such as the DS1307) with battery backup can be added via the I²C interface.
- Camera – On 14 May 2013, the foundation and the distributor's RS Components & Premier Farnell/Element 14 launched the Raspberry Pi camera board with a firmware update to accommodate. The camera board is shipped with a flexible flat cable that plugs into the CSI connector located between the Ethernet and HDMI ports. In Raspbian, one enables the system to use the camera board by the installing or upgrading to the latest version of the OS and then running Raspi-config and selecting the camera option. The cost of the camera module is 20 EUR in Europe (9 September 2013).
- It can produce 1080p, 720p, 640x480p video. The footprint dimensions are 25 mm x 20 mm x 9 mm.Gertboard – A Raspberry Pi Foundation sanctioned device designed for educational purposes, and expands the Raspberry Pi's GPIO pins to allow interface with and control of LEDs, switches, analog signals, sensors, and other devices. It also includes an optional Arduino compatible controller to interface with the Pi.
- Infrared Camera – in October 2013, the foundation announced that they would begin producing a camera module without an infrared filter, called the Pi NoIR.
- HAT (Hardware Attached on Top) expansion boards – Together with the model B+, inspired by the Arduino shield boards, were devised by the Raspberry PI Foundation. Each HAT board carries a small EEPROM (typically a CAT24C32WI-GT3) containing the relevant details of the board, so that the raspberry PI's OS is informed of the HAT, and the technical details of it, relevant to the OS using the HAT. Mechanical details of a HAT board, that use the four mounting holes in their rectangular formation, are here:  (https://github.com/raspberrypi/hats/blob/master/hat-board-mechanical.pdf).More info here:  (https://github.com/raspberrypi/hats)
The Raspberry Pi primarily uses Linux kernel-based operating systems (it is not possible to run Windows on the raspberry Pi). The ARM11 is based on version 6 of the ARM on which several popular versions of Linux no longer run (in current releases), including Ubuntu. The install manager for Raspberry Pi is NOOBS. The OSsincluded with NOOBS are:
- Archlinux ARM
- Pidora (Fedora Remix)
- Raspbmc and the XBMC open source digital media center 
- RISC OS – The operating system of the first ARM-based computer
- Raspbian (recommended) – Maintained independently of the Foundation; based on the ARMhard-float (armhf) Debian 7 ‘Wheezy' architecture port originally designed for ARMv7 and later processors (with Jazelle RCT/ThumbEE, VFPv3, and NEON SIMD extensions), compiled for the more limited ARMv6 instruction set of the Raspberry Pi. A minimum size of 2 GB SD card is required, but a4 GB SD card or above is recommended. There is a Pi Store for exchanging programs.
- The Raspbian Server Edition is a stripped version with other software packages bundled as compared to the usual desktop computer-oriented Raspbian.
- The Wayland display server protocol enable the efficient use of the GPU for hardware accelerated GUI drawing functions. on 16 April 2014 a GUI shell for Weston called Maynard (software) was released.
- PiBang Linux is derived from Raspbian.
- Raspbian for Robots – A fork of Raspbian for robotics projects with LEGO, Grove, and Arduino.
- Raspberry Pi Fedora Remix
- Slackware ARM – Version 13.37 and later runs on the Raspberry Pi without modification.The 128–496 MB of available memory on the Raspberry Pi is at least twice the minimum requirement of 64 MB needed to run Slackware Linux on an ARM or i386 system. (Whereas the majority of Linuxsystems boot into a graphical user interface, Slackware's default user environment is the textual shell /command line interface.) The Fluxbox window manager running under the X Window System requiresan additional 48 MB of RAM.
- FreeBSD and NetBSD
- Plan 9 from Bell Labs and Inferno (in beta)
- Moebius – A light ARM HF distribution based on Debian. It uses Raspbian repository, but it fits in a 1 GBSD card. It has just minimal services and its memory usage is optimized to keep a small footprint.
- OpenWrt – Primarily used on embedded devices to route network traffic.
- Kali Linux – A Debian-derived distro designed for digital forensics and penetration testing.
- Instant WebKiosk – An operating system for digital signage purposes (web and media views)
- Ark OS – Website and email self-hosting
- Minion – Dedicated operating system for mining cryptocurrency
- Kano OS http://kano.me/downloads
- Nard SDK (http://www.arbetsmyra.dyndns.org/nard/) For industrial embedded systems
Raspberry Pi can use a VideoCore IV GPU via a binary blob, which is loaded into the GPU at boot time from the SD-card, and additional software, that initially was closed source. This part of the driver code was later released, However much of the actual driver work is done using the closed source GPU code. Application software uses calls to closed source run-time libraries (OpenMAX, OpenGL ES or OpenVG)which in turn calls an open-source driver inside the Linux kernel, which then calls the closed source Video core IV GPU driver code. The API of the kernel driver is specific for these closed libraries. Video applications use OpenMAX, 3D applications use OpenGL ES and 2D applications use OpenVG which both in turn use EGL. OpenMAX and EGL use the open source kernel driver in turn.
Third party application software
- Mathematica – Since 21 November 2013, Raspbian includes a full installation of this proprietary softwarefor free. As of 1 August 2014 the version is Mathematica 10.
- Minecraft – Released 11 February 2013; a version for the Raspberry Pi, in which you can modify thegame world with code.
Reception and use
Technology writer Glyn Moody described the project in May 2011 as a “potential BBC Micro 2.0”, not by replacing PC compatible machines but by supplementing them. In March 2012 Stephen Pritchard echoed the BBC Micro successor sentiment in ITPRO. Alex Hope, the co-author of the Next Gen report, is hopeful that the computer will engage children with the excitement of programming. Co-author Ian Livingstone suggested that the BBC could be involved in building support for the device, possibly branding it as the BBC Nano.Chris Williams, writing in The Register sees the inclusion of programming languages such as Kids Ruby, Scratch, and BASIC as a “good start” to equip kids with the skills needed in the future – although it remains to be seen how effective their use will be. The Centre for Computing History strongly supports the Raspberry Pi project, feeling that it could “usher in a new era”. Before release, the board was showcased by ARM's CEO WarrenEast at an event in Cambridge outlining Google's ideas to improve UK science and technology education.
Harry Fairhead, however, suggests that more emphasis should be put on improving the educational software available on existing hardware, using tools such as Google App Inventor to return programming to schools, rather than adding new hardware choices. Simon Rockman, writing in a ZDNet blog, was of the opinion that teens will have “better things to do”, despite what happened in the 1980s.
In October 2012, the Raspberry Pi won T3's Innovation of the Year award, and futurist Mark Pesce cited a(borrowed) Raspberry Pi as the inspiration for his ambient device project MooresCloud. In October 2012, the British Computer Society reacted to the announcement of enhanced specifications by stating, “it's definitely something we'll want to sink our teeth into.”
The Raspberry Pi community was described by Jamie Ayre of FLOSS software company AdaCore as one of the most exciting parts of the project. Community blogger Russell Davis said that the community strength allows the Foundation to concentrate on documentation and teaching. The community is developing fanzines around the platform, such as the MagPi. A series of community Raspberry Jam events have been held across the UK  and further afield, led by Alan O'Donohoe, principal teacher of ICT at Our Lady's High School, Preston, and a teacher-led community from RaspberryJam has started building a crowdsourced scheme of work.
Use in education
As of January 2012, inquiries about the board in the United Kingdom have been received from schools in both the state and private sectors, with around five times as much interest from the latter. It is hoped that businesses will sponsor purchases for less advantaged schools. The CEO of Premier Farnell said that the government of a country in the Middle East has expressed interest in providing a board to every schoolgirl, in order to enhance her employment prospects.
The Raspberry Pi Foundation and Oxford, Cambridge and RSA Examinations launched a beta of the Cambridge GCSE Computing Online course or MOOC (Massive Open Online Course) based around the current GCSEComputing syllabus. The MOOC will consist of videos, animations and interactive tasks on every part of the curriculum presented by UK teachers. The beta is currently presented by Clive Beale who is the Head of Educational Development. All tasks will be supported by written materials and audio and text transcripts available for disabled students. The first MOOC will be linked to a formal GCSE qualification.
Oxford, Cambridge and RSA Examinations also provide resources to use with a Raspberry Pi for teachers who would like to use the device in their lessons including Getting started, Singing Jelly Baby and other features about the Raspberry Pi.
Source: Raspberry Pi