Book Image

Raspberry Pi Computer Architecture Essentials

By : Andrew K. Dennis, Teemu O Pohjanlehto
Book Image

Raspberry Pi Computer Architecture Essentials

By: Andrew K. Dennis, Teemu O Pohjanlehto

Overview of this book

With the release of the Raspberry Pi 2, a new series of the popular compact computer is available for you to build cheap, exciting projects and learn about programming. In this book, we explore Raspberry Pi 2’s hardware through a number of projects in a variety of programming languages. We will start by exploring the various hardware components in detail, which will provide a base for the programming projects and guide you through setting up the tools for Assembler, C/C++, and Python. We will then learn how to write multi-threaded applications and Raspberry Pi 2’s multi-core processor. Moving on, you’ll get hands on by expanding the storage options of the Raspberry Pi beyond the SD card and interacting with the graphics hardware. Furthermore, you will be introduced to the basics of sound programming while expanding upon your knowledge of Python to build a web server. Finally, you will learn to interact with the third-party microcontrollers. From writing your first Assembly Language application to programming graphics, this title guides you through the essentials.
Table of Contents (18 chapters)
Raspberry Pi Computer Architecture Essentials
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Building a Python web server


The Python programming language provides us with a number of libraries and frameworks for building robust web applications. This includes the ability to handle incoming HTTP requests, serve up content in a variety of forms including HTML and JSON, and retrieve data from a database and share it with a visitor.

In the first application we will write, we will display the directory structure of the python_programs folder.

Start by opening a new file called fifth_python_prog.py.

Python web server code

Let's start by adding the following block of code to the file and taking a look at what it does:

#!/usr/bin/python

import SimpleHTTPServer
import SocketServer

First, we include the shebang, and following this we import two libraries.

The first library is SimpleHTTPServer. As you may have guessed from the name, this library provides all the functions and tools necessary for processing and sending HTTP requests and responses.

The next library we include is the SocketServer library...