Opinions

How Full Windows 10 running on ARM CPU will affect computing future

So it finally happened! I have been predicting x86 emulation on ARM CPU ever since Intel stopped product development for Atom for mobile SoC.


@WinHEC 2016, Microsoft showed Windows 10 running on ARM

A few major things happened over the year to make this happen.

  1. Windows 10 Mobile Continuum
  2. Intel ending development of Atom SoC
  3. Qualcomm adding virtualisation support for SnapDragon SoC
  4. Various bridges for developers to easily port their apps to Windows 10
  5. Windows 10 Common Core (or why there’s no 64bit mobile Windows 10)
  6. Some special sauce from the brains @Xamarin
  7. Microsoft letting go of the last vestiges of Nokia

Let’s look at this point by point.

First point. Windows 10 Mobile Continuum feature has always been this dream of making your smartphone act more like a PC when connected to a large display + keyboard/mouse. However, people quickly notice far too many icons don’t work because the developer hasn’t written their app in Universal Windows Platform (UWP) format or their mobile app isn’t optimised for a larger display yet.

Rather than waiting for mobile developers to get around to adding UWP support, why not ask PC developers to scale their apps down? And at the same time, support legacy Windows program through the Desktop to UWP bridge so it’s possible for Windows 10 to run these UWP on ARM64 SoC.

Second point. (This is my speculation.) Intel has made a terrible mistake in ending Atom SoC development. They pushed Microsoft to seek an alternate SoC and they are the probably the reason Qualcomm added virtualisation support. I don’t remember Google/Android asking for x86 capability.

Third Point. Despite how fast Snapdragon (SD) SoCs are, the Atom X7 can keep up with it easily & in fact outperform it, albeit using slightly more power. The reason is every core of Atom can process SIMD (DSP) SSE instructions which gives it an advantage in terms of mathematical calculations. The letdown of Atom is in the GPU. Unlike Qualcomm, Intel obviously doesn’t want to put a flagship class GPU to compete with their Core CPU.

Recently, Qualcomm announced DSP & Virtualisation support for their next-gen SD835 SoC with an even faster GPU. This allows Microsoft to enable many of the desktop class features that required DSP to accelerate their functions. Many of Windows 10 Mobile functions like its User Shell & Cellular functions will be integrated into full Desktop Windows 10 as shown in the video. Finally, full Windows 10 can compete with IOS & Android for Tablets.

Fourth point. Microsoft is a software company at its core. Their oldest and strongest products are their OS and Visual Studio development environment. It comes as no surprise they can create conversion tools to directly take other platform codes and make it work on theirs. It’s also no surprise when you consider the fact that Windows NT (which Windows 10 is based on) was created to run on multiple CPU architectures.

Fifth point. For the longest time, Windows Phone fans had been wondering why Microsoft refused to create a 64-bit version of Windows 10 Mobile. I have always argued that mobile platforms don’t need 64-bit at all because no single mobile app will ever use 4GB of memory. Now we know the reason is because Microsoft has been concentrating in making full Windows 10 even more mobile.

We already know that Windows 10 shares the same kernel & some of the hardware stacks between PC, Xbox, Mobile, Hololens and IoT. However, what most people don’t realise is Microsoft has been breaking their Service Stacks into smaller and smaller pieces with every new revision of Windows 10.

Just look at your Services manager in Computer Management, there’re more and more Services running in the background. However, RAM usage hardly increase. The reason is to allow more services to be compartmentalised so Microsoft developers can pick the services relevant to that particular platform and reuse as much code as possible. This isn’t possible if the services are large and monolithic in nature.

My prediction is, instead of emulation, Windows 10 will run natively in ARM64 mode. Not surprising since Surface RT IS running an ARM version of Windows 8. This means all (desktop) Windows 10 services AND first-party apps will run at full speed since they’re compiled for ARM64.

All UWP apps can run in either native ARM or virtualised x86 mode depending on the developer. Also not surprising because when you run a 32-bit program in 64-bit Windows, Windows will launch the program in Windows on Windows 64-bit mode (WoW64). So now, instead of apps running in an x64 sandbox, it’s a Windows app running in an ARM64 sandbox.

Sixth point. I bet the brilliant minds at Xamarin had been cross-pollinating with the minds at Visual Studio to create the most powerful x86/x64/ARM cross-compiling toolkit possible! I’m guessing these are the people convincing Qualcomm to add virtualisation support for the latest SD. The power of software!!!

Seventh point. I’m guessing former Microsoft staff of formerly Nokia mobile division still have a static mindset about the future of mobile and smartphones. It’s probably good they’re let go to work on other worthwhile projects like the new Nokia-branded smartphones ODM by the China firm that bought over from Microsoft, or SailFish for the Russian bloc.

However, we also know that certain key ex-Nokian went to work at Microsoft Research. I wouldn’t be surprised if these are expert in camera and cellular tech.

The future. This part is my speculation about Microsoft’s strategy moving forward.

If Intel had continue to invest in Atom SoC, we’ll probably have the mythical “Surface Phone” by now that can run UWP & Legacy programs through Continuum.

Qualcomm seem to have fill that gap but I’m still skeptical over the emulation performance. However, if the Adobe Photoshop presented by Terry Myerson in the video is running in emulation mode and the video wasn’t edited, then I’m cautiously optimistic. The “Surface Phone” can now get back on track but don’t expect it to ship until end of 2017.

This is also the first time desktop Windows 10 gain cellular radio stack and mobile-context specific features related to voice calls and sms. The Skype Preview app is already hinting at the direction Windows 10 is taking so it’s more proof of mobile features added to Windows 10, rather than more desktop features added to Windows 10 mobile. Microsoft is moving in the opposite direction as IOS & Android.

With a Cellular stack built into Windows 10, Windows will finally become a full fledge mobile OS. With ARM’s more simple RISC architecture, power management should be easier to manage and Windows 10 should have much better standby time. Intel Atom (Enhanced SpeedStep) has great running time but the standby time still lacks far behind Qualcomm’s Snapdragon high/low-power cores. It’ll be interesting to note how Windows 10 handles the ‘big.LITTLE’ Kryo 28x Cores.

Windows 10 Continuum will also have a combined dual-shell or a morphable shell (called CShell) that switches interface depending on the screen (not device) context. Maybe now we’ll finally have a Landscape mobile Start Screen, and of course, multi-screen is naturally supported. It better support dock-able Windows for larger 5-7″ screens too!

Ultimately, the “Surface Mobile” can be your only computing devices. So what kind of a device is this Surface Mobile? Well I think it’ll be running a SD835 clocked at 1.9Ghz on battery, and 2.45Ghz when plugged into the Microsoft Display Dock. It should have 4GB of RAM and has a 5.5″ – 6″ display to allow adequate space for heat spreading. A 1440P display is good enough, a 4K display will be a waste of battery and GPU cycles. Now, Windows 10 requires a lot of space, so 64GB of eMMC 5.1 Storage is required.

Where does that leave Intel or even AMD? Well, Intel has abandoned Atom because they have probably figured out how to make a Core series based SoC hit the 2W TDP but their 10nm fab is having yield issues, which is why CannonLake is postponed. AMD has also announced new APU that can step through the clock at 25Mhz increments thus providing more aggressive power management but being fab on a 28nm process, I reckon power consumption will be higher than KabyLake.

What this means is, Intel is trying to make their Core m CPU fit into a mobile environment so the CPU wouldn’t fry your smartphone. And AMD new Ryzen CPU isn’t ready for mobile.

Qualcomm just released information on their latest Snapdragon 835 SoC.

Based on the information released, SD835 supports new 3D audio processing and enhanced camera image processor. It looks like a future Microsoft Hololens 2 could be powered by the SD835! The Surface 4 could also be based on a SD835!

In the meantime, you can check up my past predictions which has come true below.

How Windows Phone 8 & Windows 8 can share software

OEMs can’t do it, so Microsoft DID IT!

Samsung losing patent case is Good for consumers!

Update 03 Feb 2017: Updated with the product codenames for future Windows features I have corrected predicted, like CSHELL and clearer explanation of CPU terminology.

Advertisements
Solutions

Solving Contact/Calendar sync issue in Windows 10 Mobile

If you’ve recently upgraded your Windows Phone 8.x to Windows 10 Mobile, you may encounter some lag in synching your contact and calendar with your Outlook or Outlook.com. The lag may be a few hours to never. I’ve even read the Microsoft Support forums of people hard resetting the phone to solve this problem.

This problem seems to be especially pervasive if you’re like me and your primary Microsoft Account is NOT a Microsoft domain like Hotmail.com, MSN.com or Outlook.com.

In Windows 8.x, all we needed to do was to go to Settings -> EMail account and long-tap to Sync the account manually. However, in Windows 10 Mobile, this is not possible anymore.

I’ve just discovered the reason and the solution. It’s actually very simple, but it may cost some battery life in the short-term.

As you can see from the screen caps, my primary Microsoft Account has an alias to a now defunct domain. This means that I don’t receive ANY email to this email account anymore.

By default, your email accounts (& by extension, Microsoft Account), is set based on your usage as shown in the 3rd screen cap.

If you regularly send and receive email, Windows 10 Mobile will internally set your Sync frequency to “as item arrive”, so whenever you receive an email, it is automatically pushed to your phone or tablet immediately.

However, if you don’t receive ANY email and only occasionally change items in your Contact or Calendar, Windows 10 Mobile will try to save battery by toggling the Sync frequency to “daily” or less.

All you need to do is to go to Settings -> Accounts -> Your email and accounts -> Tap <your primary Microsoft Account> or any other accounts where you’ve chosen to sync Contacts and/or Calendar -> Manage -> Change mailbox sync settings -> Download new content -> change to “as item arrive” -> Done -> Save.

Windows 10 Mobile will immediately sync your Contacts & Calendars, and will continue to do so immediately when you make any changes in Outlook or Outlook.com.

Note that your battery life may suffer a little so if you have less active accounts, you should set those to “based on my usage”.

All comments and questions are welcome. Be sure to like this article if it’s useful and share it with your friends and family, or colleagues who can benefit from it! Buttons are all over my website just waiting for you to click them! :)

Click the Follow Button button at the bottom right to receive more Tech related article written by me! Or follow me on Twitter to see what I’m reading and writing.

Solutions

Malware XcodeGhost Infects 39 iOS Apps, Including WeChat, Affecting Hundreds of Millions of Users

Unit 42 finds that malware XcodeGhost infects 39 iOS apps, including WeChat, affecting hundreds of millions of users.

Update your software now as many of the affected developers have updated their official Apple Xcode IDE, which is NOT affected, and republished their apps. If you can’t update the app, it’s better to temporarily uninstall it.

Also make sure to change your app passwords and AppleID password as it’s likely being phished by hackers.

Here’s the list discovered by Palo Alto & FOX-IT.

网易云音乐  2.8.3
微信  6.2.5
讯飞输入法  5.1.1463
滴滴出行  4.0.0.6-4.0.0.0
滴滴打车  3.9.7.1 – 3.9.7
铁路12306  4.5
下厨房  4.3.2
51卡保险箱  5.0.1
中信银行动卡空间  3.3.12
中国联通手机营业厅  3.2
高德地图  7.3.8
简书  2.9.1
开眼  1.8.0
Lifesmart  1.0.44
网易公开课  4.2.8
马拉马拉  1.1.0
药给力  1.12.1
喜马拉雅  4.3.8
口袋记账  1.6.0
同花顺  9.60.01
快速问医生  7.73
懒人周末
微博相机
豆瓣阅读
CamScanner
CamCard
SegmentFault  2.8
股公开课
股市热点
新三板
滴滴司机
OPlayer  2.1.05
电话归属地助手  3.6.5
愤怒的小鸟2 2.1.1
夫妻床头话  1.2
穷游  6.6.6
我叫MT  5.0.1
我叫MT 2  1.10.5
自由之战  1.1.0
Mercury
WinZip
Musical.ly
PDFReader
guaji_gangtai en
Perfect365
网易云音乐
PDFReader Free
WhiteTile
IHexin
WinZip Standard
MoreLikers2
CamScanner Lite
MobileTicket
iVMS-4500
OPlayer Lite
QYER
golfsense
同花顺
ting
installer
下厨房
golfsensehd
Wallpapers10000
CSMBP-AppStore
礼包助手
MSL108
ChinaUnicom3.x
TinyDeal.com
snapgrab copy
iOBD2
PocketScanner
CuteCUT
AmHexinForPad
SuperJewelsQuest2
air2
InstaFollower
CamScanner Pro
baba
WeLoop
DataMonitor
爱推
MSL070
nice dev
immtdchs
OPlayer
FlappyCircle
高德地图
BiaoQingBao
SaveSnap
WeChat
Guitar Master
jin
WinZip Sector
Quick Save

Source: Malware XcodeGhost Infects 39 iOS Apps, Including WeChat, Affecting Hundreds of Millions of Users

Solutions

Solving Windows 8.1 Upgrade Error 0xC1900101 – 0x20017

Unsolved mystery of Windows 8.1 upgrade

As readers on my website knows, I’ve been using Windows 8.0 since the Developer Preview beta program on my Fujitsu T4210 TabletPC and I bought the license on Day one for my TabletPC.

I also bought 2 additional licenses for my desktop PC & for my wife’s laptop but I didn’t install Windows 8.0 on my desktop for quite a few months because Windows 8.0 was less keyboard/mouse friendly than Windows 7.

I did do a multi-boot for my wife so she can try Windows 8.0 if she wanted on her Fujitsu S6310 laptop or she can continue to use Windows 7 if she didn’t like Windows 8.0. Turns out she didn’t like Windows 8.0 because her laptop doesn’t have a touchscreen, which makes Windows 8.0 harder to grasp and use than it needed to be.

Before Windows 8.1 was launched, I installed Windows 8.0 on my desktop in anticipation of the much better keyboard/mouse environment in Windows 8.1.

My Fujitsu TabletPC and DIY desktop upgraded without any issues but my wife’s laptop couldn’t be upgraded. Whatever I tried, I ended up with the error 0xC1900101 – 0x20017 which indicated some kind of driver issue or hardware problem.

The symptom is always the same. It’ll install everything but during the final phase of booting up to Desktop, it’ll crash and refuse to boot, thus triggering a roll-back to Windows 8.0.

No Solutions in sight

You can find MANY threads at Microsoft forums of people who have this exact problem or something similar but few people manages to solve it.

This issue dragged on for months and months with Microsoft promising to solve it once and all in a major patch for Windows 8.0. Unfortunately, while it solved the problem for many people who has driver issues, it didn’t help my wife’s laptop.

I’ve tried different versions of drivers, including NOT installing drivers for unknown devices. I’ve tried upgrading Windows 7 using a Windows 8.1 Boot disc, which had the same issue, rendering the Windows 7 partition corrupt. I even tried to rename the Windows 7 partition as “System Reserved” because I read Windows 8 requires a separate recovery partition. Nothing worked. So my wife was stuck with 2 Windows 8.0 installation at the Boot screen but only one works.

Suffice to say my wife wasn’t too happy with the situation but since she only uses the laptop to watch TV dramas, I wasn’t in any danger of having to sleep on the sofa.

Solution came after solving an unrelated problem

Well if you read my previous post about installing Windows 8.1 without DVD or Product Key, you’d know that Microsoft recently updated their Windows 8.1 installation to handle more hardware, especially the new Ultrabooks which doesn’t have any DVD drives and all the recovery information are stored on the harddisk. So if said harddisk were to crash, like the one in the article, you must download a program from Microsoft which creates a bootable recovery disk on a USB thumbdrive or DVD disc.

After I recovered that laptop, I noticed that the Recovery disk has created 2 additional hidden “System Reserved” partitions at the front & back of the SSD besides the main System partition. Now in my wife’s laptop case, I only have the one at the back of the harddisk.

During the installation of Windows 8.0, the installer created 1 additional System Reserved folder which exceeded the maximum number of 4 allowable for a Basic Disk. In order to have more than 4 partitions, I needed to convert to a Dynamic Disk but that will create a lot of compatibility issues with harddisk and data recovery software that I have. So I opted to stick to a Basic disk and of course, Windows 8.0 couldn’t boot to continue the installation.

So I booted up to Windows 7 and ran Eason Partition Manager 8 to delete the extra partition and shifted some other partitions around. Windows 8.0 booted up fine and finished the installation after that but as a consequence, the Boot Configuration Data (BCD) now has missing and non-continuous partition numbering. I had to edit Windows 7 BCD so it can dual-boot with Windows 8.0. It was messy.

This turned out to be the actual problem with our Windows 8.1 upgrade!

The Solution

Since I still have the USB thumbdrive for Windows 8.1 installation, I tried to upgrade my wife’s laptop and of course, the same error code cropped up. Then, I remember about the partitioning issues a few years back & realized that I could just edit the BCD! But I thought, now I have an extra partition, it’ll be cleaner to just backup her data and just delete off all the partitions and start over.

So I did just that and it was the exact same procedure as my previous article except before installing, you have to delete off ALL the partitions on the harddisk/SSD. My wife’s laptop was based on the old IBM-PC BIOS so I had to key in her Windows 8.0 Product Key. And YES, even though the Recovery Media program is meant to install Windows 8.1, it happily accepted the Windows 8.0 Product Key!

After that, it was smooth sailing all the way! 🙂

Her laptop is working better than ever!

I hope this helps some of you. Like the article and subscribe. If you have any questions, feel free to comment!

Photography, Solutions

How to take great photos on the Lumia 1020

WP_20131009_18_46_31_Pro

So you have just purchased the best camera phone of 2013 & you’re excited to get started taking incredible photos like those seen in reviews.

In bright daylight, all the photos turn out great but when the lights dim, your photos aren’t turning out so great. What’s up? Lumia 1020 is supposed to be the champion in low-light photography. Is your Lumia 1020 faulty?

Likelihood it’s performing fine. It’s just not what you’re expecting in the picture.

This article aims to help you overcome inherent problems in digital photography. It’s broken down into sub-sections, each corresponding to an individual manual setting in the Nokia Camera app, the default camera app on all Lumia 1020. This article also applies if you’ve install Nokia Camera on other Lumia WP8 models although instead of the Xenon Flash, you’d only have the LED light.

Click here to start the tutorial!

Solutions

Still getting poor battery life from your Windows Phone 8.0?

Update 10 Sep 2014: This article is only applicable for WP8.0. WP8.1 removed this setting!

While reading an IOS7 review, I come across a power-saving tip, which I didn’t thought of as a power-saving tip at first.

We have the same setting in Windows Phone. If you go to WiFi settings -> Advanced, you have “Notify me when new networks are found.” By default, it’s ON.

WP8 WiFi Advanced Setting
WP8 WiFi Advanced Setting

This feature was available since WP7 but it never crossed my mind that it actually controls the WiFi Roaming Aggressiveness of WP OS. I just found it annoying so I have switched it OFF immediately after getting a new WP phone. So I never had a chance to see the effects when it was on.

According to the IOS7 review, switching this off saves power!

For me, my WiFi is always ON, “Keep WiFi on when screen times out” is ON & “Notify me when new networks are found” is always OFF. And because of this, my Windows Phones’ battery life have always been good! I couldn’t understand why there’re still reports of poor battery life even after switching to 3G on their 4G phones + switching off all Background Agents.

Then I remembered last year I posted a comment on whether switching ON the WiFi ALL the time is a good idea or not & I concluded that as long as the WiFi radio is not roaming & it can enter low-power state when associated with a wireless access point, it CAN save power. However, unlike in Windows where you can select WiFi Roaming Aggressiveness, you can’t do so in WP7/8. Or so I thought until the IOS7 article.

I connected the dots & BAM! This Notify setting is the Roaming aggressiveness setting!

Switch it OFF guys & gals!

Sound off in the comments below on how your battery life is affected.