ChromiumOS64 is an unofficial port of the original Google's Chromium OS project (when officially released in 2010, it will be called Google Chrome OS) to the x86_64 64-bit architecture. The original Chromium OS project does not support 64-bit platforms. This is because the majority of the netbooks in the market are based on Intel Atom processors, which are mostly 32-bit. It is highly anticipated that Google's Chrome OS will debut in 2010, based on the open source Chromium OS project, which is itself based on Ubuntu 9.10 Karmic Koala GNU/Linux. Ubuntu itself is derived from Debian GNU/Linux. In turn, Debian itself is derived from Linus Torvalds' Linux kernel.
Announcements
9 December 2009 Wednesday 1:46 P.M. SGT
Temporary Suspension of Downloads
I have temporarily suspended downloads as my hosting provider has notified me that the monthly bandwidth usage has been exceeded.
3 December 2009 Thursday 5:22 P.M. SGT
Announcing the Release of the World's First 64-bit Build of Google's Chromium OS with Xen Virtualization Support
I have integrated the open source Xen hypervisor 3.4.3 RC1-pre and Jeremy Fitzhardinge's pv-ops dom0-patched kernel 2.6.31.6 into my 64-bit build of ChromiumOS. With the integrated Xen virtualization support, you can now create and run virtual machines or guest operating systems in Google's Chromium OS. If you do not have a need to create virtual machines, you can simply run ChromiumOS64 as a Xen domU virtual machine.
To run Windows XP, Windows Vista, Windows 7, Windows 2000, Windows Server 2003 and/or Windows Server 2008 as a hardware virtual machine (HVM), you need to have a processor with hardware virtualization support, e.g. Intel VT-x or AMD Pacifica.
To enable PCI/PCI-e and/or VGA pass-through to HVM virtual machines, you need to have a motherboard with a supporting chipset capable of Intel Virtualization Technology for Directed Input/Output (VT-d). VGA passthrough is more involved and may require you to modify the code to properly support your specific PCI Express x16 graphics card and recompile the Xen hypervisor and Xen tools.
Download your copy now! Please note that this is a pre-alpha release.
30 November 2009 Monday 4:07 A.M. SGT
Announcing the Release of the World's First 64-bit Build of Google's Chromium OS
Over the past few days, I have ported the original 32-bit Chromium OS to the x86_64 64-bit architecture by patching the build scripts and development code of the original Google's Chromium OS project. ChromiumOS64 is still in the alpha development stage.
Downloads
Build enming.teo-3dec2009-0420hrs-sgt (pre-alpha release) with Xen virtualization support
To concatenate all the 7 parts you have downloaded into a single zip archive, execute the following command on a Linux or UNIX platform. If you are using Windows, you may want to install Cygwin. Cygwin is a linux-like environment for Windows. You can download and install it from http://www.cygwin.com/setup.exe.
You can then proceed to unzip the resulting zip archive to produce a VMware VMDK image file.
2. Using ChromiumOS64 as a virtual machine with the Xen hypervisor or VMware Server/Workstation/Player
To use ChromiumOS64 as a virtual machine under Xen environment, you have to convert the VMware VMDK image to Xen domU image. Please refer to the following link on how to perform the conversion.
If you are using VMware Server/Workstation/Player, no conversion is necessary.
Sun VirtualBox is currently not supported. If you can get it to work with VirtualBox, please let me know the details. Most likely, if you see a blank screen for a long time in VirtualBox during the boot process, X.org X server could not detect the virtual graphics card properly and complains about "screens not found". In that case, you may switch to the second virtual terminal by typing CTRL+ALT+F2. To fix the problem, remount the root filesystem in read-write mode, and reconfigure X server by invoking "sudo Xorg -configure".
3. Booting ChromiumOS64 from a USB thumb drive or USB external harddisk like a Linux Live CD/DVD/USB
It is not necessary to install ChromiumOS64 to your computer.
3.1 Windows instructions by marko from chromium-os-discuss Google group:
Download WinImage from: http://www.winimage.com/download.htm. Run the program and click DISK - "Restore Virtual Disk Image on physical drive", select a 16 GB (or larger) USB thumdrive or USB external harddisk from the list then open the chromiumos64.vmdk file. The file transfer will take a while.
Put the USB thumbdrive or USB external harddisk in your desktop or laptop and on boot, select the thumbdrive as the first boot device. Login as username "enming" with the password of "enming". This is an offline test user account in ChromiumOS64 OS. (You can login with your real gmail account later but this is not necessary.)
3.2 Linux instructions by myself:
Convert the ChromiumOS64 VMware VMDK image file you have downloaded to the raw harddisk image first. You have to install qemu before doing so.
On Fedora Linux systems:
# yum install qemu
On Ubuntu/Debian Linux systems:
# sudo apt-get install qemu
$ qemu-img convert -f vmdk chromiumos64.vmdk -O raw chromiumos64.img
With the resulting chromiumos64.img, proceed to transfer the raw harddisk image to your USB stick/thumb drive/flash memory/external harddisk.
# dd if=chromiumos64.img of=/dev/sdc
Assuming /dev/sdc is the device name of your USB stick/thumb drive/flash memory/external harddisk.
You can then plug in the USB thumb drive or USB external harddisk to your 64-bit computer and start booting, selecting the USB thumb drive or USB external harddisk as your First Boot Device.
Detailed Instructions for Using the Hybrid Xen 3.4.3-RC1-pre and 64-bit Google Chromium OS Live USB Image to Create a Fedora 11 Linux PV Virtual Machine/Guest Operating System/DomU
After you have transferred the ChromiumOS64-Xen VMDK image file to a USB external harddisk or an IDE/SATA/SCSI internal harddisk or a USB thumb drive/flash memory (let's say /dev/sdc in this tutorial) using WinImage, and assuming you still have plenty of free space on that same harddisk/thumb drive/flash memory, you may use that free disk space to store the virtual disk images for all of your virtual machines.
# fdisk /dev/sdc
Create a new primary partition. It will be partition number 4. The 64-bit Google Chromium OS will occupy the first 3 partitions on your harddisk.
Type "n" and press enter. Type "p" and press enter.
Press enter again.
Assuming you have 100 GB free space left on the harddisk, type "+100G" and press enter.
Type "w" and press enter.
# reboot
After rebooting, you need to create a filesystem on /dev/sdc4. In this tutorial, we will use the ext3 filesystem.
# mke2fs -j /dev/sdc4
After completing the above steps, you are now ready to boot into the Hybrid 64-bit Google Chromium OS + Xen 3.4.3-RC1-pre hypervisor Live USB.
After displaying the blue graphical login screen with "chromium os", press CTRL+ALT+F2 to switch to virtual terminal 2.
Login as username "chronos" with the password of "enming".
You are now ready to begin creating and running your very own virtual machines!
First, you need to remount the root filesystem (/) as read-write.
$ sudo mount -o remount,rw /
Uninstall the chromeos-connman package.
$ sudo dpkg -r chromeos-connman
Terminate the connmand and dhclient daemons/processes.
$ sudo kill -9 <process ID of connmand)
$ sudo kill -9 `pidof dhclient`
Start the xend daemon.
$ sudo service xend start
$ sudo xm list
You should see Domain 0 listed. In Windows Server 2008 R2 Hyper-V speak, it is referred to as the parent partition.
$ sudo mkdir /virtualmachines
We will need to mount the free disk space we created earlier to run our virtual machines.
$ sudo mount /dev/sdc4 /virtualmachines
$ cd /virtualmachines
Create a virtual harddisk space of 10G for the Fedora 11 Linux virtual machine.
Change the default firewall policy for the FORWARD and OUTPUT chains to ACCEPT.
$ sudo iptables -P FORWARD ACCEPT
$ sudo iptables -P OUTPUT ACCEPT
Start your virtual machine installation.
$ sudo xm create fedora11-pv
Using a laptop or another computer, vnc into the Fedora 11 installation using a vncviewer.
For example,
$ vncviewer <IP address of Dom0>:<Display Number>
During the Fedora 11 Linux virtual machine installation process, select HTTP or URL as the source of installation. Do not select CD/DVD or any other method.
E.g.,
http://<IP address of Dom0>/fedora11
After you have finished the Fedora 11 Linux virtual machine installation, you need to
$ sudo xm list
$ sudo xm destroy <domain ID of rebooted F11 guest operating system>
Edit the virtual machine configuration file *again*.
$ sudo vi /etc/xen/fedora11-pv
name="fedora11-pv"
memory=1024
disk = ['file:/virtualmachines/fedora11-pv.img,xvda,w' ]
vif = [ 'bridge=eth0' ]
vfb = [ 'vnc=1,vncunused=1,vncdisplay=0,vnclisten=<IP address of your Domain 0>,vncpasswd=' ]
vncconsole=0
bootloader = "/usr/bin/pygrub"
#kernel = "/virtualmachines/vmlinuz"
#ramdisk = "/virtualmachines/initrd.img"
vcpus=2
>
> You may now start your newly installed Fedora 11 Linux virtual machine.
$ sudo xm create fedora11-pv
You will need to VNC into your virtual machine again.
The above tutorial demonstrates the installation process for a Fedora 11 Linux virtual machine. However, you may also install Windows XP, Windows Vista, Windows 7, Windows 2000, Windows Server 2003, and/or Windows Server 2008 as a HVM virtual machine. Other Linux and UNIX guest operating systems are supported too.
Detailed Instructions for Installing and Running Windows XP HVM Virtual Machine on the Hybrid Xen 3.4.3-RC1-pre + 64-bit Google Chromium OS Live USB Image
After verifying that the installation and execution of Fedora 11 Linux PV virtual machine works with the hybrid Xen 3.4.3-rc1-pre + 64-bit Google Chromium OS, I proceeded to installing and running Windows XP as a HVM virtual machine.
Here are the exact steps:
Remount the root filesystem (/) in read-write mode.
$ sudo mount -o remount,rw /
Start the xend daemon.
$ sudo service xend start
Configure Xen networking.
$ sudo ifconfig eth0 up
$ sudo dhclient eth0
Check that the dynamic configuration of network interface eth0 works.
$ sudo ifconfig eth0
Check that the entries in the kernel routing table are correct.
$ route
Check that the domain name servers have been configured correctly by the DHCP protocol.
$ cat /etc/resolv.conf
Mount the disk partition containing disk images of all the virtual machines.
$ sudo mount /dev/sdc4 /virtualmachines
$ cd /virtualmachines
Create a 5 GB virtual harddisk for installing Windows XP as a virtual machine.
# Should be at least 2KB per MB of domain memory, plus a few MB per vcpu.
shadow_memory = 8 name = "winxphome32" vif = [ 'bridge=eth0' ] acpi = 1 apic = 1 disk = [ 'file:/virtualmachines/windows-xp.img,hda,w', 'phy:/dev/sr0,hdc:cdrom,r' ]
device_model = '/usr/lib/xen/bin/qemu-dm'
#----------------------------------------------------------------------------- # boot on floppy (a), hard disk (c) or CD-ROM (d) # default: hard disk, cd-rom, floppy
boot="cd" sdl=0 vnc=1 vnclisten="<IP address of domain 0>" vncdisplay=0 vncconsole=0 vncpasswd=''
serial='pty' usbdevice='tablet'
Start the Windows XP HVM virtual machine.
$ sudo xm create windows
You will need to use a VNC viewer on another computer or laptop to remote in on the Windows XP virtual machine installation.
For example,
$ vncviewer <IP address of domain 0>
or
$ xtightvncviewer <IP address of domain 0>
Follow through the Windows XP virtual machine installation and you are done. Using the same concept outlined above, you can also create Windows Vista, Windows 7, Windows Server 2003, and/or Windows Server 2008 virtual machines with the hybrid Xen 3.4.3-rc1-pre + 64-bit Google Chromium OS Live USB image.
Why 64-bit?
The current king of netbook processors is the Intel Atom. All the Intel Aton processors are 32-bit, with one exception. Intel Atom 300, which is a dual core 45 nm process technology, supports x86-64.
Both AMD Neo and Via Nano support x86-64 instructions.
You can use ChromiumOS64 with your Intel Core 2 Duo, Core 2 Quad, Core i5, Core i7, AMD Athlon 64, Ahtlon 64 X2, Phenom, Phenom II, and Athlon II.
Testing
ChromiumOS64 works on real physical hardware. I've successfully booted up ChromiumOS64 on my Intel Pentium Dual Core E6300 @ 2.8 GHz, Intel Desktop Board DQ45CB, 6 GB DDR2-800 memory and nVidia GeForce 8400 GS PCI Express x16 add-on external graphics card. It can't detect the Intel GMA4500 onboard graphics though. X.org X server complains "no screens found". To reconfigure X server to work with the IGD on the Intel DQ45CB motherboard, switch to the 2nd virtual terminal by pressing CTRL+ALT+F2, login, remount the root filesystem in read-write mode, and invoke "sudo Xorg -configure".
I am able to surf the world wide web and watch high defintion (HD) Youtube videos at the same time using my 64-bit port of Google Chromium OS (ChromiumOS64).
Hardware Compatibility List
All x86 64-bit platforms are supported. IA64, ARM, and PPC are not supported.
Hardware Not Compatible with ChromiumOS64
Intel Atom Z (32-bit)
Intel Atom N (32-bit)
Intel Atom 200 (32-bit)
Acknowledgements
Without the Chromium OS project, there will be no ChromiumOS64 project.