iTunes: Still Slowing Down Windows PCs After All These Years
colinneagle sends this quote from an article at NetworkWorld:
"I run a very nifty desktop utility called Rainmeter on my PC that I heartily recommend to anyone who wants to keep an eye on their system. One of its main features is it has skins that can monitor your system activity. Thanks to my numerous meters, I see all CPU, disk, memory and network activity in real time. the C: drive meter. It is a circle split down the middle, with the right half lighting up to indicate a read and the left half lighting up for write activity. The C: drive was flashing a fair amount of activity considering I had nothing loaded save Outlook and Word, plus a few background apps. At the time, I didn't have a Rainmeter skin that lists the top processes by CPU and memory. So instead, I went into the Task Manager, and under Performance selected the Resource Monitor. Under the Processes tab, the culprit showed its face immediately: AppleMobileDeviceService.exe. It was consuming a ridiculous amount of threads and CPU cycles. The only way to turn it off is to go into Windows Services and turn off the service. There's just one problem. I use an iPhone. I can't disable it. But doing so for a little while dropped the CPU meters to nothing. So I now have more motivation to migrate to a new phone beyond just having one with a larger screen. This problem has been known for years. AppleMobileDeviceService.exe has been in iTunes since version 7.3. People complained on the Apple boards more than two years ago that it was consuming up to 50% of CPU cycles, and thus far it's as bad as it always has been. Mind you, Mac users aren't complaining. Just Windows users."
You can use the SC in the command line to enable the service when you need it and disable it when you don't using a BAT file.
(sc config servicenamehere start= disable)
Just saying... and thanks for the head up on Rainmeter
The service runs in the background and launches iTunes when the phone is plugged in. It's quite handy.
That feature is built into Windows (at least Vista+). A user can decide which action to take when a specific device is plugged in; no extra services required.
Must be to compete with Microsoft. Their Office for Mac is a piece of junk and often doest adhere to the HID guide of development software. Hell, I cant even cut & paste images dragging and dropping them as in other Apple software. And it is SLOW.And lets not get started about Outlook. I have been trying to take a coworker out of it.
I'm pretty sure that it is real CPU load. It is caused by a conflict with some network filtering software (e.g. antivirus software, content filtering software, etc.). Try updating the relevant software.
Check out my sci-fi/humor trilogy at PatriotsBooks.
The iPhone does not show up as a SBP2 device on the USB bus, so therefore Windows cannot format it and will not ask to format it. In fact, if you hook it up to Windows 7, it loads a Microsoft driver that exposes a DCIM folder for you to peruse as a normal disk. On Windows XP, it shows up as a "Scanner or Camera" device, again, without having iTunes installed.
iTunes may suck, but don't make shit up.
Yep - and NOD32 is even on Apple's list of software that has issues with iTunes...
You still have not told us where Microsoft recommends polling, as per your claim:
And worse? Some of the documentation specifically says they want it that way! On purpose!
[HAL] it's a nightmare of convoluted and badly-documented objects and methods. I won't go as far as to say whoever decided to go with polling instead of event-driven made a great design choice, but I can understand how, after days and days of pouring over bad documentation, he decided it was either ritualistic suicide or go with the better-documented interface...
Windows device driver development has an entire site devoted to it. In there there is architectural guides, tools, development kits, samples, articles, process guidelines and best-practices. I really don't know what you'd expect? Would the source code be better documentation and provide better guidance?
but I can understand how, after days and days of pouring over bad documentation, he decided it was either ritualistic suicide or go with the better-documented interface...
I can't
1. iPhone connects over USB. Which means that Windows already has a bus driver in place which will notity the PnP manager about device arrivals on the USB bus. What one would need to create is probably a Function Driver. If iPhone used some standard protocol one could probably do with a built-in driver, but I suspect that some proprietary protocol are at work - so therefore a function driver.
2. The PnP manager will activate and notify the function driver upon device arrival. It will do so through the AddDevice message.
3. From the looks of it, what the iPhone requires is probably aptly covered by a user mode driver. Which flies in the face of your previous assertion that
Microsoft's hardware abstraction layer is a terrible, horrible, implimentation that makes every access from userspace terribly expensive
What exactly is it you feel is not documented? What is the documentation you are missing? You did download the Windows Driver Kit, right?
Still waiting for citation for Microsoft recommendation of polling...
Reading slashdot one-liner: (irm http://rss.slashdot.org/Slashdot/slashdot).rdf.item | fl title,desc*
You know that mDNS /is/ a standard for network discovery, right? http://tools.ietf.org/html/rfc3927
Microsoft is listed in the RFC, but haven't bothered to implement, as they bet on the uPNP horse with WinXP way back when.
Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.