Windows 8.1 to 8 RT downgrade and recovery

Introduction

I'm lucky owner of ASUS VivoTAB TF600 and I would like to give some useful information about it. The main problem of Windows RT platform at the moment it stays significantly limited set of SW available in market. As a result people especially in IT area needs to deal with it somehow. I baught this device a long time ago (more than 1.5 year) but unfortunatelly I was totally unable to use it because of problem stated before. I did a few steps to make it a little more useful. Firstly I read materials regarding Jailbreak and did it. After this it started to be more friendly, but it was still hard to develop something useful. And I did second thing, I found that there is a simple ifdef which is limiting VS2013 from Desktop mode application development and I was able to make some simple Hello world like application. After a few month of usage I accasionally upgraded my tablet to 8.1, because I thought that it would opennew opportunities and finally some of big vendors can port their web browser on Windows RT, but it was a mistake and the platform still has not become so popular (espiacally taking into account that MS limiting access big vendors such as Google and Firefox from porting their browser to the platform).

I was at 8.1 but without Jailbreak... I decided to do downgrade, further you could find the description of how I did downgrade.

Downgrade from 8.1 to 8

The first step you would need to do is to download recovery image from here http://www.alexpatcas.com/vivort.rar or other place you know. Then you need co create recovery USB flash (in Windows 8/8.1 RT or download image from MS site). Copy the file "install.wim" (located under "sources" from your downloaded 8.0 recovery image to your 8.1 recovery USB flash. Boot your surface with the 8.1 recovery USB. Start a cmd session (after choosing "Troubleshoot" -> "Advanced options" -> "Cmd line"). Use diskpart to delete recovery partitions and the system partition. Take care if you delete additionally UEFI and Boot partition you would get problems. If you accasionaly did this please see next chapter for recovery details. Create a new partition and format it with NTFS Make it active and assign this partition a drive letter (for example W:) Close diskpart

Use dism tool to install the Windows 8.0 image to your drive (if you saved the "install.wim" from the Windows RT 8.0 image to your USB flash root dir, use this command: _ dism /apply-image /imagefile:D:\install.wim /index:1 /applydir:W:\ _

After applying the image use bootrec /fixboot you would also probably need _ fixboot /rebuildbsd _

Close cmd and restart your tablet

Finally you need to do _ bcdboot W:\Windows _

Recovery of the partition table

The procedure of recovery is very simple and not requires some tricks, only make the script recovery.cmd and put it on the flash drive for start.

  • rem These commands are used with DiskPart to
  • rem erase the drive and create five partitions
  • rem for a UEFI/GPT-based computer.
  • rem Adjust the partition sizes to fill the drive as necessary.
  • convert gpt
  • rem === 1. Windows RE tools partition ===========
  • create partition primary size=350
  • format quick fs=ntfs label="WinRE"
  • set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac"
  • assign letter="T"
  • gpt attributes=0x8000000000000001
  • rem === 2. System partition =====================
  • create partition efi size=200
  • rem *** NOTE: For 4KB-per-sector drives, change this value to 260
  • format quick fs=fat32 label="System"
  • assign letter="S"
  • rem === 3. Microsoft Reserved (MSR) partition ===
  • create partition msr size=128
  • rem === 4. Windows partition ====================
  • rem == a. Create Windows partition ===========
  • create partition primary
  • rem == b. Create space for recovery image ====
  • shrink minimum=3600
  • rem == c. Prepare the Windows partition ======
  • format quick fs=ntfs label="Windows"
  • assign letter="W"
  • rem === 5. Recovery image partition =============
  • create partition primary
  • format quick fs=ntfs label="Recovery Image"
  • set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac"
  • assign letter="R"
  • gpt attributes=0x8000000000000001
  • exit

Disable windows update

The final step I did to do not experience any problems with the system:

  • Navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Current Version\Windows Update\Auto Update
  • Change the DWORD AUOptions to 0×00000000

Reference

If you would like to find some additional information regarding Windows RT and applications for it please visit http://forum.xda-developers.com/

One more trip to China, Shenzhen

Some photos from the ferry boat station in HK international airport

Alt text here

Alt text here

Some city views

Alt text here

Alt text here

Alt text here

Alt text here

Alt text here

Alt text here

Alt text here

Alt text here

Alt text here

Alt text here

Some street art

Alt text here

Alt text here

City subway

Alt text here

Some highway (on the way to beach)

Alt text here

Alt text here

Alt text here

A few fotos from sandy beach

Alt text here

Alt text here

And yeah I was swimming there and the water is pretty nice nothing to compare with the wind outside...

Virtio VHOST

In this post I'd like to discribe the current situtation with Virtio based IO in KVM and give some ways of improvements. Firstly I'd like to explain what is Virtio and how it works.

Virtio is acronim from Virtualization Input Output. Virtio is a set of device drivers which implements paravirtualized logic for device representation. If virtio device attached to the virtual machine (VM), VM starts to now that it is running in virtual environment. The design of each virtio device is shown at the figure below. Alt text here

Virtio provides set of devices necessary for productive work: 1. PCI 2. Baloon 3. Console 4. Network 5. Block Logical block scheme is shown at the figure below. Alt text here

Lets discover the implementation of virtio stack. There are 2 options. First it is implemented through user space workflow over QEMU.Second is VHOST implementation which directly redirects calls from guest kernel to host kernel and reduce significant overhead due context swithces and global mutexes still existing in QEMU core. Block device scheme is shown at the figure below. Alt text here

Its not hard to see how much overhead reduced. The similar scheme is implemented for networking.

RedHat Enterprise Virtualization seminar

A few fotos from RH seminar. Alt text here Alt text here

Home← Older posts