Windows CE porting/Migration guidelines :)


Aim:
1.To cover typical porting exercise involved in Embedded Systems (esp Windows CE)
2.Discuss about issues, concerns and solutions of porting.

Intended audience:

1.Familiarity of at least one version of Windows CE
o Core OS
o Boot loader
o OS builds and Application development

Authors Intro

Before I jump into the actual topic, I would like to provide brief intro of my wince exp:
•In 1999 I was involved in 2.11, 2.12, 3.0 Versions of Embedded OS. Here worked on “OS builds”, Application development, “Boot loader diagnostics” for X86, ARM, SH4 processor based product lines
•In 2001, was involved in Porting of Windows CE OS version 2.0  3.0 [On both X86, SH4],also involved in Application development as well boot loader. Here I have to wear multi-hats , as I am only person worked on this [One man army kind of role to be precise]
•In 2002, was involved test process setup and lead role for Windows CE product line

Definition
•Porting/migration activity is performed from one version to other version of OS, Processor, Application, Hardware and others.

Why do we need port/migrate?
•Either there is new version of, which will enhance the product feature, performance, and market, end user needs
•Or may be the product or any being discontinued by any of the vendors

Checklist and Porting Guidelines

The above diagram shows the Checklist. The diagram is explained as follows:
•Identify the various requirements of the customer/Product manager is expecting us to deliver product on best hardware platform and latest OS of the Windows CE
•Current/Future Processor, Hardware, Tools, System
• Identify/create the table that will explain the difference from the current/future. Also record minor/major changes. Based on this table form the requirement /checklist, which needs to fulfilled.
•Identify the team
•Identify the “project plan “, publish the tentative timelines, as the porting process may take longer/shorter you think
•Get the reference material and porting guidelines
o Web sites
o Books
o From you known good SMEs

Tips for estimation and project management:
•Always get 2nd opinions from experts and other colleagues
•Expect roadblocks, hire a good subject matter expert, who has done similar activities
•Keep the “test cases” ready to test
•Do the step-by-step incremental development and also test/document/Archive as and when you finish the module
o Boot loader: Also make sure you have all the declarations, definitions as for the final/end product.
OAL/OEM API’s
RTC
Timer
ISR
Memory settings
Thread/Task priority
o Jump to OS
Need to define the starting point where OS will start
o Load the OS

initialization sequence
Carefully do step-by-step changes required from earlier version to current version
o Memory/Object store setting verification
o Display Driver
o Serial port driver
o Key board driver
o LEDs
o PCMCIA and so on

Written based on work I have done in 2002, Jan 4th 2008; Hyderabad

Advertisements

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s