Raspberry Pi will roll with Android 4.0

Raspberry Pi will roll with Android 4.0
(Phys.org) -- Broadcom developer Naren Sankar is porting Android 4.0 (Ice Cream Sandwich) over to the little $35 computer from the Raspberry Pi Foundation, and so far the two coexist nicely, though with more work ahead. To demonstrate how far along the Android 4.0 Ice Cream Sandwich port has come for the Raspberry Pi platform, Sankar has published a YouTube video that demonstrates all the action. The Foundation credits him with having made “great progress.” (The chip at the heart of the Raspberry Pi is the Broadcom BCM2835.)

Up to now, the device, which functions as a computer with Ethernet, HDMI, and USB ports and SD card slot, has hosted Linux as the choice OS: “We recommend Debian as our default distribution,” according to the FAQ sheet on the Foundation site, along with the recently announced. optimized Debian port called Raspbian. Released in mid-July. Raspbian, specifically optimized for the Pi computer’s hardware specs, was crafted in order to bring faster performance to the device.

While Raspbian is a beef-up, Android 4.0, say Pi fans, could make the device even more of a draw with wider audiences. The original vision of the Raspberry Pi foundation was to see the Pi off as a tool for students to explore the fundamentals of computer science; the Android ICS would appeal to users excited about hooking up their devices to TVs and home networks for Android-run content.

The Android port has support for hardware-accelerated graphics and video playback; work remains, though, to add AudioFlinger. Reports say developers are working on other issues too. The port uses its own customized Linux kernel and not the Linux kernel version maintained by the Pi Foundation. Raspberry Pi ‘s work ahead is to converge the two before publishing the source code.

“This implementation uses a different kernel and VideoCore binary image from the one available on GitHub, which is why we’ve been keeping quiet about it so far,” said a Foundation post. “We’re investigating the feasibility of converging the two code lines to produce a single common platform as soon as we can, at which point we hope to release the sources for you to play with.”

Images and video playback seem adequate, but those watching the demo video of the ICS in action would no doubt agree with a comment on Ars Technica: ’s performance and responsiveness on the are obviously not as good as they would be on a higher-end device, though it appears to work relatively well.

Explore further

Raspberry Pi gets customized OS called Raspbian

More information: www.raspberrypi.org/archives/1700

© 2012 Phys.org

Citation: Raspberry Pi will roll with Android 4.0 (2012, August 2) retrieved 19 April 2019 from https://phys.org/news/2012-08-raspberry-pi-android.html
This document is subject to copyright. Apart from any fair dealing for the purpose of private study or research, no part may be reproduced without the written permission. The content is provided for information purposes only.

Feedback to editors

User comments

Aug 02, 2012
Vendicar, I've been doing asm for an awfully long time (~40 yrs) and if you are even mildly competent in C you aren't going to see that kind of acceleration. It even allows you to inline assembly if you need it. Now if you are talking about C , heck yes, you can get that kind of return due to drop-kicking the abstraction crap it brings in even when unnecessary. I'm of the philosophy that operating systems should never be written in object-oriented code. Everything you need can be found in Knuth's works and Tannenbaum's works, with a bit of algorithmic goodness from a few other sources.

Reinventing the wheel so you can 'look good' to the universe just ain't my kind of thang. I don't need validation that I'm a genius ;-). Do what works, reliably, even when Murphy shows up.

Aug 02, 2012
Wow. I know one man, who has done assembler programming for living. This is one task for man, that has to be computerized. Like slavery. Just make a computer program to do it.

Aug 02, 2012
Potentially, he is doing it mostly right the first time round.

Aug 03, 2012
It wasn't serious, bloke.

I'm no programmer but I could be a groupie for one and even I know that assembler is realms faster than C which is mostly much faster than interpreted languages --- assuming equal programming skills in all abstractions & no 'shortcuts'. TMK, the main appeal of higher level languages is convenience and comprehension by plebs like me.

What was the point of showing that 'potentially assembler' code? Is there any code that simply *cannot* be done in assembler?

Aug 03, 2012
It is a pity that all of the software is written in C, which optimizes so poorly. Writing the code in portable assembler has the potential to speed the code up by a factor of 4 to 10.

Hardware advancements optimizes even the worst code in any language.
Just run your current code in tomorrows processors and it will run faster.
Assembler language is not portable but C language is ( through a recompile ); the same app in C code can be compiled and run on many processors and this is why Linux is so popular.

Aug 03, 2012
The point of this exercise is to see how much operating system can be squeezed into the device? And don't forget the JVM. Sounds like serious overhead. Is there any room left for applications? I'd be more interested in seeing something Minix-like ported.

Aug 03, 2012
Regarding optimization: I'd guess that among the people and groups involved in Linux kernel development, there are a bunch that profile the code. Critical bits and bottlenecks are identified and optimized, perhaps some in assembly.

Honestly, though, in my experience it's hard to identify big-O dependent algorithms that can't be efficiently expressed in C. The only ones to mind are multi-precision and encryption related.

Gcc (for instance) is skilled at optimizing. Sometimes I'll compile a suspect bit of code to assembly output. What comes out looks very nice.

It's possible to write sufficiently bad C code that it optimizes poorly. But in the same vein, it's possible to write bad assembly.

Aug 03, 2012
Much of software engineering is trading off between efficiency and convenience, certainly raw assembly in the hands of a skilled engineer is going to be more efficient than C from a relative novice but the C code will be easier to understand and debug.

Aug 03, 2012
@VD: I have programmed real time embedded systems in assembly and C as well. Once upon a time I used to count microcycles on PDP-11 hardware.

Yes, there is a speed increase, but to see factors 4 to 10 times better, you must be working with some really brain dead C programs and awful C compilers.

That is not to say that assembly routines for certain heavily used functions aren't warranted. But writing an entire app that way is lunacy.

And then when you're done, what do you have? Oh yes, you have a piece of code tied to a hardware platform. Now someone else has to rewrite it for another platform, or throw your code in the trash and start over. The latter is usually what happens.

Aug 03, 2012
As an occasional coder who's looked at many languages I tend to regard them in the same way I would my tool chest. Use the right tool for the job. Sometimes you need a precision screwdriver to tweak something, sometimes you just want to hammer a piece of metal into roughly the right shape. My take on the diff between (say) asm and VB :)

Aug 04, 2012
Quite impossible. But among the ignorant and foolish, magical thinking is all the rage these days.

You are an imbecile.

Aug 05, 2012
My penis is smaller and faster than yours! Oh, wait...

Please sign in to add a comment. Registration is free, and takes less than a minute. Read more