In the last few years, the embedded systems we use have undergone a massive transformation with the inception of IoT. These embedded devices are backed by an Operating system (OS), which plays a crucial role in its functioning. An OS is designed to run the code that allows a device to perform a set of tasks.
Some of the major operating systems we have seen for embedded systems are Linux, Android, and Windows. As devices transform, the OSes also transform to suit the changing requirements and enable a better user experience.
Over time, OSes are rendered obsolete, and the applications need to be migrated to more advanced platforms. This blog will focus on the migration of existing applications from Windows CE (which has been phased out) to Windows IoT and how it can be achieved.
Understanding Windows CE
Windows CE, also known as Windows Embedded Compact and Windows Embedded CE, is an operating system specifically built for embedded devices. Over the last couple of decades, it has powered several industrial systems, medical devices, and other devices that have small footprints.
Developers using Windows CE have the flexibility of customizing the OS and other components according to their requirements with the help of a tool called Platform Builder. Platform Builder is categorized as an integrated development environment (IDE) used to build customized embedded platforms based on Windows CE. The customization is possible because Microsoft provides Windows CE mostly in source code form, enabling the developer to customize the OS as per his or her needs.
Customers’ evolving needs are pushing Microsoft and other companies to build more advanced versions and gradually phase out the older versions. Windows CE has been deprecated since 2013. However, Microsoft is providing extended support for it until 2023. With new offerings such as Windows 10 IoT, Microsoft is encouraging customers and partners to migrate to new OSes for advanced security, platform, cloud connectivity, and better IoT connectivity.
The Need to Move to Windows 10 IoT
Microsoft has been phasing out the support for various OS versions since 2018. Many customers may face issues related to security, obsolete codebase, compatibility difficulties, poor functionality, or difficulty connecting Windows CE applications to cloud assets, IoT hub, IoT Edge Runtime, etc. If you face any of these issues, then it is the right time for you to migrate to new Microsoft offerings like Windows 10 IoT.
By moving to Windows IoT, customers can leverage the full power of the intelligent edge along with AI and ML. Microsoft is making continuous efforts to develop technology that will allow most of their customers to run their existing, unmodified Windows CE applications on Windows 10 IoT, even as they invest time and effort in updating their existing applications. The migration, however, is also dependent upon the current hardware you have. Microsoft offers various ways through which you can migrate your existing application efficiently.
Understanding Windows 10 IoT
Windows 10 IoT is the evolved version of Windows CE. Windows 10 IoT is a modern, secure, and cloud-enabled operating system. It leverages Windows embedded experience, ecosystem, and cloud connectivity, allowing organizations to create their own IoT ecosystem with secure devices that can quickly and easily be provisioned, managed, and seamlessly connected to an overall cloud platform. There are mainly two versions available for this OS – the Enterprise edition being the full version and the IoT Core being the entry-level OS.
One of the main aspects of the Enterprise version is that it has advanced lockdown features that help in creating dedicated devices to a specific set of applications and peripherals. Both versions have the same device security technologies such as TPM (Trusted Platform Module), Security Boot, Device Health Attestation, Device Guard, and BitLocker.
IoT Core is used in building automation, HMI, smart home, wearable devices, digital signage, and IoT Gateway. On the other hand, IoT Enterprise can be used for all areas mentioned above, and apart from that, it can also be used for medical devices, POS terminals, ATMs, and Kiosks, among others.
Migrating to Windows IoT Using App Container
Windows CE App Container is a new migration technology that allows customers with existing applications on Windows CE to preserve them while migrating to Windows IoT. However, many older CE applications may not be migrated due to challenges such as lack of source code and expertise or hardware requirements.
The App Container runs a Windows CE 2013 instance on top of Windows 10 IoT Core, allowing you to run your existing apps without any modifications. Customers can migrate their CE applications gradually while immediately taking advantage of the cloud management, storage, computing, and analysis benefits of Windows 10 IoT.
However, certain prerequisites are to be taken care of before you migrate using the app container software. For starters, it requires an updated version of Windows CE released in 2013 (build # 6294 from June 2020 or beyond), along with the updated Windows 10 IoT Core Packages for x64 and ARM32 (August 2020 version or beyond).
The migration can be done in several cycles, and it uses the pico process (which was first introduced in Windows 8.1) to run applications. The main reason for introducing the pico process was to usher in multiple subsystems in the OS that can use the Windows NT kernel without the kernel prescribing how the user mode canvas should look like in the user mode layer. The existing CE app will run inside the pico process on the Windows IoT Core modern socket. The application will be sandboxed inside the pico process, ensuring better security, cloud connectivity, and IoT connectivity.
Main Advantages of Migrating to Windows IoT
Faster time to market: Windows 10 IoT offers a complete development platform, including a great Visual Studio development experience and integrated Azure IoT support. It also includes an extensive Windows ecosystem of hardware and software providers and integrators.
Improved security: Security has been a trivial issue for many companies. Windows IoT offers secure solutions from device to the cloud with robust security built into the platform and support for the latest security protocols. Microsoft also provides a company-wide team of security and privacy experts who are focused on the platform.
Smarter devices: Windows 10 IoT provides hardware support and rich user interactions with Natural User Interface (NUI) and world-sensing support. There’s also great support for containers, Azure IoT Edge, and accelerated machine learning with the Windows AI platform.
If you do not have the in-house expertise to carry out the migration of your applications, you can engage a partner with expertise in Windows CE to Windows 10 IoT migration. eInfochips has over a decade of experience and expertise in developing connected devices and managing connected ecosystems and solving various challenges for our customers. eInfochips is also certified in using the Platform Builder tool. To know more about us, get in touch with us today.