Showing posts with label opensource. Show all posts
Showing posts with label opensource. Show all posts

Tuesday, May 27, 2014

Virtual Machine on ARM CPU

The 2 virtual machine software (VMWare and Virtualbox) that I know runs on Intel x86 architecture. This sounds reasonable, as most popular operating system software runs on x86. Windows, Linux, Mac OS X (10.5), Solaris are all available on x86 cpu architecture platform. Simulator for ARM like armware is in working process, new virtual machine software for ARM should be coming soon too.

What is a virtual machine? What is it use for? Virtual machine (VM) is a software platform which simulate the computer hardware (cpu, memory, hardware storage and I/O etc.), to allow different operating system running at the same time on the same machine. VM simulate as many standalone computer hardware on a single machine, as long as you have enough hardware resources to support it.

Simulation software are normally slow and use a lot of resources. As hardware technology improve, and price getting cheaper and cheaper, a newer personal computer machine is much more powerful than an older server.

As virtual machine software technology improve from time to time, the performance of the software running on virtual machine is closer to the software performance running on native platform. The using of the virtual machine software came with many advantages.

There are many advantages with using virtual machine. With virtual machine, you can run a different operating system software on the same machine. For example, you can setup 2 operating system on the same machine, 1 for development, another 1 for testing. You can easily setup the software environment on the virtual machine by backup, copy and restore the VM image. With virtual machine, testing and server management are much easier.

Current iOS and Android runs on ARM cpu platform. As mobile environment getting more popular, ARM cpu are getting more powerful and more popular too, improve with multi-core and moving to 64 bits. Apple is pushing its mobile cpu to 64 bits with A7 cpu, other competitors like Samsung and Qualcomm will follow as well.

AMD is trying very hard to include ARM cpu in their hardware platform (read here), not sure AMD is pushing ARM into their server platform. There are rumors that Apple is testing ARM cpu for their notebook actively.

CPU performance is not the only benchmark, power consumption is the area where ARM cpu out perform the Intel cpu. Apple notebook will equipped with ARM cpu, sooner or later, then a virtual machine for ARM will exist.

Saturday, December 18, 2010

Arduino, the open source hardware

Arduino is an open source hardware micro-controller board. The open source idea is from open source software. I know of this Arduino board first introduced by a friend from open source group.

The Arduino (website arduino.cc) board came with a 8 bit RISC micro-controller chips with build in flash memory, an usb socket to transfer program and supply the power.


You will be surprised what you can do with Arduino. There is a youtube video here showing how to use a Wii Nunchuck to control a robot.

The Arduino came with a free software kit available on Windows, Linux and Mac OS X platform. You can program the Arduino with C/C++ like language using this Arduino software kit.

The Arduino is popular because is simple, cheap, open, and yet expandable. A pre-build Arduino board cost about 20-25 Euro (about RM100 to RM150, depends on exchange rate). You can program it easily with code similar with C/C++. There are some ready made expandable module available, which turn the Arduino into a robot controller, mini game console, LED display board and many other applications.

For the software part, to program the Arduino is easy, it has 2 functions:

1. setup()
2. loop()

The setup use to initialize setting, the loop function will repeat the job or action.

There is a good hardware and software introduction at youtube here.

Wednesday, October 27, 2010

Ubuntu will split from Gnome

There is an interesting post from CNET, Has Ubuntu exceeded the Ben & Jerry's hippie threshold?, after Mark Shuttleworth announced that Ubuntu will use their Unity graphic user interface rather than the Gnome from the community.

Gnome is an open source desktop environment for the Linux (and unix) operating system, an alternative to KDE.

Ubuntu has been doing well since they was started, they have improved user experience with Linux operating system generally. From the installation procedure, online update system and now towards the graphic user interface.

I was impressed by Ubuntu 10.4 netbook edition, when I first installed it. It is light weight, boot up fast and has a nice interface. I believe Ubuntu is on the right track, and they know what users want. I write a step by step tutorial on how to install the ubuntu 10.4 netbook edition, but the latest version is Ubuntu 10.10.

Saturday, August 14, 2010

Tutorial: Install ubuntu net 10.4 on virtualbox

I just want to try out the Ubuntu Linux net version. It is a slim down version of the Ubuntu desktop version, suitable to install on netbook. I just install it on Sun Virtualbox (now owned by Oracle) to have a try.

I am using Virtualbox 3.1.2, Ubuntu net 10.4.

The system requirement for Ubuntu net is 4Gb hard disk, 512Mb ram.

The following are the procedure to install Ubuntu net 10.4 on Sun Virtualbox:

Step 1: Create a new virtual machine

Hard disk 3.2Gb
Ram 512 Mb
Video ram 4Mb

I just created a 3Gb hard disk for Virtualbox and name it ubuntu-net. This can be done when create a new virtual machine from Virtualbox main menu.

Step 2: Configure the virtual machine to boot from Ubuntu ISO installer file.

Virtualbox - virtual machine - Settings - Storage - IDE controller - CD Rom. Choose the ubuntu ISO file that downloaded from the ubuntu website, for CD/DVD device.

Select Ubuntu installer ISO as the CD/DVD Device

Step 3: Select timezone and keyboard layout.

Step 4: Prepare disk space.
The easiest way is use "Erase and use the entire disk", then goto step 6.

Since I have some Linux installation experience before, I try to partition manually:
256Mb for swap.
The remaining storage for system.

Step 5: New partition table. Select "free space", the "Add...".

Create the main partition

I partition the main storage, so it left about 250Mb for swap, remember to choose root ("/") as the mount point.

Create the swap partition, Primary or Logical is ok.

Swap partition is 250Mb. Since I have less than 4 partition (1 root, 1 swap), I can choose primary or logical. 

After partition. 1 main, 1 swap.

Note: One hard disk can have 4 primary partition, If you have more than 4 partition, just make one of the primary partition as logical partition. You can create more than 4 using logical partition.

Step 6: Create username and password. Start installing...

The installation will take a while

The Ubuntu for netbook has a nice looking interface

This ubuntu net version is one of the best Linux netbook version I ever saw. Nice interface, easy installation and update process, it even came with OpenOffice as well.

If Ubuntu can add in a few more features like the Asus Express Gate, fast system recovery from Xandros (found in EeePC Linux version by pressing F9), that will be good.

Monday, June 28, 2010

Nokia retire Symbian and prefer MeeGo

According to CNet, Nokia will dump Symbian and use MeeGo to compete with Apple iPhone and other smartphones.

Symbian is a smartphone OS, the symbian is back up by few major mobile player include Sony Ericsson and Nokia. Nokia acquired Symbian in year 2008 and release the Symbian OS as an open source platform.

As a user and a developer, I am worried on Nokia strategy. Is just 2 years time, Nokia has change from a strong supporter of Symbian, to abandon Symbian.

MeeGo is a Linux-base OS. It is a join effort of Nokia Maemo and Intel Moblin project. Nokia has explored on Linux since at least 5 years ago (the Nokia Internet Tablet 770). I am in doubt with Nokia Linux strategy too, how long it will last and how well it will be supported.

OpenHand (acquired by Intel), Maemo, Moblin, MeeGo are all Linux-base platform, the application may not be compatible on all these platform. Software developer may know how to port the application from one platform to the other, but as a user how easy I upgrade my mobile device to the later software platform?

May be the Nokia smartphone or internet table platform will became a hacker's only platform.