I believe Windows CE 7 also had its source available.
FWIW CE7 was an amazing operating system that had a minimal OS image of around 8MB on disk. (Numbers are from memory, might be horribly wrong, it was a long time ago that I worked on it.)
It was also incredibly power, CPU, and memory efficient. Windows Phones could run at a rock solid 60FPS with 1/2 the RAM of an Android phone that was dropping frames all the time.
The entire CE operating system is an example of a huge "could have been". Microsoft really never knew what to do with it, and the Windows org obviously wanted it dead, and they eventually got their way. Of course that involved stopping all Windows Phone development for years while they rewrote all APIs, lost functionality, and lost customer trust, in the transition from WP7 to WP8. WP8 eventually became a good OS, but moving to the Windows kernel means the resource usage advantage was lost, and of course app developers got fed up when a new OS came out that had less API features than the previous version.
Not only that, it was a brand new OS written from the ground up that was designed to be modular and battery efficient.
Sadly it never got a chance to shine, as internal politics killed it.
In a world where Apple just stripped down their desktop OS to make a phone OS, there is no future for something like CE. This is why Microsoft just moved to using their desktop kernel for future versions of Windows Phone -- it makes porting software so much easier.
CE6 and 7 were a complete ground up rewrite from the CE5 and earlier versions. They didn't have any of the limitations that previous CE versions did.
> In a world where Apple just stripped down their desktop OS to make a phone OS,
My understanding is that iOS is so seriously stripped down compared to macOS that while the kernel is the same, the entire runtime is so different that it may as well be a different OS.
And I don't think Apple hasn't tried to keep releases between the two synced up (maybe they have? No idea honestly), compared to Windows Phone which was merged closely with desktop Windows.
In all honesty, Microsoft had so many resources to throw at the problem, that keeping the teeny tiny kernel team for WinCE employed was not worth losing the entire mobile market by forcing the OS teams to merge and then rewrite everything, poorly at times, from the ground up.
Of course lots of Microsoft politics got involved, including killing Silverlight (which tl;dr is why corporate web apps are written in React now, killing Silverlight basically lost MS the entire internal LOB app market), and forcing a brand new API to be designed.
On that note, by the time WP8 released, the OS was missing key APIs, was hard to write code for, and would only fall further behind Android and iOS.
Eventually the WP platform team did get into a good release cadence, but by then the market had been lost.
IMHO at that time Microsoft didn't understand the importance of regular timely releases to keep them in the news. Apple released a new phone, and a new OS version, yearly. Around 2010 MS was still doing "big bang" OS releases with multiple year gaps in-between.
I worked at Microsoft at the time (started my career in Windows Mobile, then Windows Phone), and people kept asking me "is Windows Phone still around? I haven't heard anything about it in forever", with "forever" being more than a year.
Everyone complains about how new phones come out every year, but if a manufacturer skips a release year, everyone assumes that the phone line is going to be discontinued. Developers stop writing apps for it, and no one wants to buy a phone that was released 16 months ago. Heck after about 8 or 9 months people know that it is time to either "wait for the next model" or "wait for the big discounts".
I've been an Android user for over a decade but haven't bought a phone for myself for a while. Samsung won't update the Galaxy S8 any more and my bank decided it was too old to run their app.
The others in my family are iPhone users and I dragged an iPhone 7 out of the drawer to give it a go. Now that google's apps and Chrome are native on the platform you can set up an iPhone as almost completely a google experience.
Embarrassingly all the google services work better on an iPhone than they do on Android. I used it for a day and liked it so much I picked up a newer iPhone and transferred to that.
It will take something really bad to send me back to Android - you end up being a 2nd class citizen running Android especially around security and the amazing face recognition unlock that Apple have implemented.
However, it's pretty troubling in terms of competition - the iPhone will hit a critical mass where choosing Android will be wilfully silly.
Just had a similar problem. My bank's iOS app didn't react for "confirm" button so I removed it which resulted with completely locking me out of online banking. Now I'm waiting for a bloody letter. The stale mobile duopoly, mobile as a first class citizen and web as a second class, plus "securitay" practices of banking are an infuriating experience.