Log in

View Full Version : Windows CE 32 Process Limitation: The Ugly Truth


Jason Dunn
11-25-2003, 09:11 PM
<div class='os_post_top_link'><a href='http://www.ppcw.net/index.php?itemid=1645' target='_blank'>http://www.ppcw.net/index.php?itemid=1645</a><br /><br /></div>There's just no nice way to frame this: Windows CE 4.2 has a limitation of 32 simultaneous processes. Why is this a problem? Because of the increasing complexity of hardware in devices that now require more software to control them, and also because of developers not always choosing the most efficient route, Pocket PCs like the XDA II are especially vulnerable to this limitation. Arne Hess has write up an article that explains it all:<br /><br />"Maybe you've also read the rants that the new i-Mate Phone Edition/xda II/MDA II isn't able to handle larger applications and closes other programs in the background if you open a new one. In fact this statement is wrong! The real problem is a different one and it is because the Windows CE platform isn't able to handle more then 32 processes simultaneously! This is - according to my sources (which I also already get confirmed from other sides) - a design limitation which already was introduced with Windows CE 1 and never were expended - even not with today's Windows CE 4 platform.<br /><br />The result is if a user starts the 33rd process, any of the processes, running in the background is killed by the system. In "best case" it's an application you've launched only, in worst case it's a Windows CE task. Users never have seen it before because by default Pocket PCs were never running that much processes after a softreset. Unfortunately it's different with the HTC Himalaya platform because by default it's running the typical Pocket PC apps plus the Pocket PC Phone Edition applications plus some HTC and O2 customized stuff like Bluetooth, IA Caller ID, IA Camera and for the O2 version O2 Active UI. This means that on a xda II something around 26 tasks are already running in the background - right away after a softreset. Now imagine if you install Spb GPRS Monitor, Pocket Plus and Fullscreen Keyboard also! One task is left for a customer application. Now start ActiveSync which starts 3 tasks by itself and you are done! Your device will need a softreset!..."<br /><br />The good news is that Spb Software House has come up with a way for developers to stack multiple processes under a single process (thread), so if the majority of developers use this process, it will go a long way toward alleviating this problem. Spb will be publishing an article about this in the next couple of weeks.

palmsolo
11-25-2003, 09:18 PM
Great, I just ordered a XDA II from Expansys because I feel restricted by the 57MB of RAM that HP gives me on the iPAQ 4350. Now it looks like I can't even take advantage of all that wonderful 128MB of RAM on the device. I now wonder if I should cancel the order and stick with my 4350 and Nokia 3650 solution for now. What are your thoughts? Will Microsoft be able to fix this process problem or will Spb's solution cure most of the issues I may see on it?

arebelspy
11-25-2003, 09:57 PM
I LOVE my XDA II. I was able to get a few processes back by taking some things out of \Startup (like the MMS thing - I never use MMS only SMS, some backup features that backup contacts, calendar, etc. to extra ROM, but I use sprite so i dont need these, etc. etc.)

But go Spb! I can't wait til there is a really good fix for this. :D

-arebelspy

Ed Hansberry
11-25-2003, 09:58 PM
Sort of interesting. My XP Pro box on a domain currently has 59 processes and 568 threads. Given my laptop is doing way more than I'd ever expect my Pocket PC to do, including networking services and 14 apps in the system tray, 32 processes should be enough for the average person. CE should certainly be expanded to handle more than 32 processes, but by the same token, it seems some developers are just creating new processes for apps (especially carriers) rather than using threads within a single app.

Anyone know a good app to tell you what processes are running on a Pocket PC - sort of like TaskMan.exe does for Windows XP?

Jason Lee
11-25-2003, 10:32 PM
PHM task manager! I have used it for years, a must have on my ppc no matter what other task switcher/managers i may have installed.

http://www.phm.lu/Products/PocketPC/taskmgr.asp

P.S. Works great with 2003. ;)

Ed Hansberry
11-25-2003, 10:39 PM
PHM task manager! I have used it for years, a must have on my ppc no matter what other task switcher/managers i may have installed.

http://www.phm.lu/Products/PocketPC/taskmgr.asp

P.S. Works great with 2003. ;)
I can't download it. :? The "activesync .zip" installer isn't a zip file that WinZip can detect and I don't want a CAB file because I want it in my iPAQ File Store. Why wouldn't there just be a standard link that would let me override the WinZip download association like 99.9% of other sites rather than this button thing. :roll:

Jason Lee
11-25-2003, 10:52 PM
Oh well in that case you can use Cab install.

http://www.geocities.com/s_k_s_k_s_kru/util.html

It will let you install a cab file anywhere. you just copy the cabinst.exe to anywhere you want and run it. no install. :)
Or i can email you the taskmanager exe.. either way. :)

EDIT: or you can install the taskmanager cab, copy the exe to your filestore, uninstall the program, then create a new shortcut.

Or install the cab, move the program and change the shortcut.

The cab only installs one exe file. very simple program.

Mike Temporale
11-25-2003, 11:48 PM
I wonder if this why some of the heavier users often complain about having to do lots of soft resets?? While others don't seem too.

Jonathan1
11-25-2003, 11:55 PM
The good news is that Spb Software House has come up with a way for developers to stack multiple processes under a single process (thread), so if the majority of developers use this process, it will go a long way toward alleviating this problem. Spb will be publishing an article about this in the next couple of weeks.

Is it just me or does it seem like its 3rd party companies that are picking up the ball Microsoft seems to be dropping? Does anyone else think a well designed and implemented OS shouldn't need so much third party help?
understand that such a thing can be a strength and a weakness for a platform and that 3rd party companies generally make better, more robust apps/solutions. But where is the line between freedom for the developer and just plain screwing up? :|

topps
11-26-2003, 02:20 AM
Reminds me of the days not too long ago of limited IRQs on desktops...or of limited Interrupts in the bad old days of TSRs...why can't OS designers think a wee bit more ahead...

OTOH, I suppose WinCE has been criticised for being slow and a memory hog, when much of this is due to true multitasking and Unicode storage requirements (2 * ASCII)...guess they can't win(ce), can they? :roll:

SassKwatch
11-26-2003, 02:49 AM
This is - according to my sources (which I also already get confirmed from other sides) - a design limitation which already was introduced with Windows CE 1 and never were expended - even not with today's Windows CE 4 platform.
Introduced in CE 1....and *still* exists in CE 4.2.(?!?!?!?)

Would somebody care to tell me one more time just how committed MS is to the 'Windows Mobile' (or PocketPC or whatever the heck they wanna call it) platform.

cmlpreston
11-26-2003, 06:12 AM
32 processes should be enough for the average person

Yeah, and 64k should be enough for everyone, right?

cmlp

NLS
11-26-2003, 07:44 AM
in fact it was Gates and he talked about 640K

(64K... 38 free, were never enough on my CBM64... even to build a large BASIC program)

(wow this IS a brain thread)

(...and since you are from Melbourne... ah... I remember the best publishing house for the CBM... Melbourne House... I still have their books)

surur
11-26-2003, 11:35 AM
To help other XDA II users hobbled by this awfull restriction, here is a list of processes I have been able to safely remove from my startup folder. You obviously lose some functionality, but nothing stops you from starting that program from the normal start menu:

Ive managed to reduce my list to just 14 processes open after a soft- reset. Ive removed the following from the start-up folder and put it in a folder under the start menu:

Active= The O2 Active screen, just an alternative today/startup screen, so unnecessary

Aflashman, cflashman, nflaskman and tflashman= to backup PIm and connection data regularly to flask memory. Thats what My desktp is for :)

BPInsert= I think back-pack insert autorun software. As i dont have a back-pack...

poutlook= I can start this when i need it. No need to auto-run it just so it can appear faster :)

stk=SIM Application Toolkit . I and my network dont use this, so of it goes.

checkautorun= ?

BTIcon= Bluetooth icon, left you switch bluetooth on and off from the today screen...

and have had no problems with the device so far. So with 16 processes available to me, it should be a while before I run out :)

Surur

Ed Hansberry
11-26-2003, 01:16 PM
in fact it was Gates and he talked about 640K

(64K... 38 free, were never enough on my CBM64... even to build a large BASIC program)
No, Gates never said that. And my comment was based on current device usage. I've never hit this problem and I am a power user. As devices get more complex and powerful, this 32 process limit will really be a problem. The issue today is that, IMHO, the XDA as some implementation issues that should be rethought.

GO-TRIBE
11-26-2003, 08:22 PM
Microsoft Windows CE .NET 4.2

Processes
All Windows CE applications consist of a process and one or more threads. Windows CE can run up to 32 processes at one time. A minimum of four, and more typically seven or eight, processes are created when the system starts up. These processes provide kernel, device, and file-system services, and other shell and connectivity services.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wcedsn40/html/cgconprocesses.asp

:cry:

NLS
11-27-2003, 07:36 AM
in fact it was Gates and he talked about 640K

No, Gates never said that.

Actually he did back in '81 (I know - take my word - then again you might not). He DID deny it 15 years later in a Bloomberg interview (in fact I think he backed it up, as he would never say that, although he has said stupid things before ... he didn't say it was one of the stupidest though).

Believe me (if you weren't there) back in '81 there were VERY few people in the field.

anyway... doesn't really matter to the topic, I guess

Ed Hansberry
11-27-2003, 03:31 PM
No, Gates never said that.

Actually he did back in '81 (I know - take my word - then again you might not). He DID deny it 15 years later in a Bloomberg interview (in fact I think he backed it up, as he would never say that, although he has said stupid things before ... he didn't say it was one of the stupidest though).

Believe me (if you weren't there) back in '81 there were VERY few people in the field.
No he didn't. No one can cite the day, the interview, the circumstance or anything about the statement. It is an urban legend that has just stuck. Gates says dumb stuff all of the time - we all do. He admits when he blows it and moves on. Why would he deny this one if it were true?

Steven Cedrone
11-27-2003, 03:41 PM
What was the topic here???

Steven Cedrone
Community Moderator

dhettel
11-27-2003, 08:55 PM
If you are trying to find Task Manager this link might help;

http://www.pdagold.com/software/detail.asp?s=9

David

Ed Hansberry
11-28-2003, 12:50 AM
If you are trying to find Task Manager this link might help;

http://www.pdagold.com/software/detail.asp?s=9

David
Simple single function executable all wrapped up in a CAB file? No thanks.

dhettel
11-28-2003, 01:24 AM
If you are trying to find Task Manager this link might help;

http://www.pdagold.com/software/detail.asp?s=9

David
Simple single function executable all wrapped up in a CAB file? No thanks.

Did you actually try it?
"...I can't download it. The "activesync .zip" installer isn't a zip file that WinZip can detect and I don't want a CAB file because I want it in my iPAQ File Store. Why wouldn't there just be a standard link that would let me override the WinZip download association like 99.9% of other sites rather than this button thing. "

This is what you actually asked for, if I am not mistaken. Activesync .Zip Installer. At least it was when I tried it. It's not a cab file.

But then what do I know,

David

Ed Hansberry
11-28-2003, 02:07 AM
Did you actually try it?
Yes. See my subrant in the "Open letter to devs" tn the THOUGHTS forum. ;)

cmlpreston
11-28-2003, 08:32 AM
What was the topic here???

The topic is whether Microsoft have a history of being short-sighted, so I think a discussion about process limits and memory limits is quite warranted. And besides, a little bit of history never hurt anyone ;-)

The first occurrence in the Deja/Google archive of "640k should be enough for anybody/anyone" is in 1992, which isn't much help. The thread (http://groups.google.com.au/groups?q=+%22640K+should+be+enough%22&hl=en&lr=&ie=UTF-8&oe=UTF-8&safe=off&scoring=d&as_drrb=b&as_mind=12&as_minm=5&as_miny=1981&as_maxd=27&as_maxm=11&as_maxy=1992&selm=1992Aug12.125416.7986%40cpqhou.compaq.com&rnum=3&filter=0) is amusing, and sort of relevant, so I'll quote some of it here -
>Gee, I think it was Bill Gates who said "640K should be enough for
>anybody".
Or even better yet, Peter Norton in the "New, Revised" edition of _Inside_the_IBM_PC_ (Second edition?), commenting on the new IBM AT and its RAM said, basically, "The AT comes with 256K of RAM, which will be more than enough for all but a few specialized applications."

Ironically, spoken in an OS/2 group :?

[added in edit]
However, this article (http://groups.google.com.au/groups?q=%22bill+gates%22+640k&start=10&hl=en&lr=&ie=UTF-8&oe=UTF-8&safe=off&scoring=d&as_drrb=b&as_mind=12&as_minm=5&as_miny=1981&as_maxd=27&as_maxm=11&as_maxy=1990&selm=389%40cci632.UUCP&rnum=19) from 1986 seems to be the first actual refernce to the idea of the 640k limit.
I remember thinking that 2K was a lot of memory on my VIP, the transition from PDP-8 to PDP-11 thrilled many because of the thought of 64K addressing space. Microsoft's Bill Gates couldn't imagine why anyone would need more than 640K with MS-Dos, and even Motorola was surpised to discover that some systems couldn't fit in the 16 megabyte virtual address space of the 68010.


cmlp

Ed Hansberry
11-28-2003, 04:00 PM
1986 seems to be the first actual refernce to the idea of the 640k limit.
I remember thinking that 2K was a lot of memory on my VIP, the transition from PDP-8 to PDP-11 thrilled many because of the thought of 64K addressing space. Microsoft's Bill Gates couldn't imagine why anyone would need more than 640K with MS-Dos, and even Motorola was surpised to discover that some systems couldn't fit in the 16 megabyte virtual address space of the 68010.
That fits more in line with an interview I saw about Gates. It is very likely someone took that idea and just lopped it off without the MS-DOS reference or any context as to what he was talking about. Even in the early 80's, he had ideas for an OS beyond MS-DOS and would surely need beefier hardware.

Still, I've no doubt people will continue to use the bogus quote. :roll: