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."
Sorry, can someone explain to a Linux/Android guy how having an iPhone implies you can't kill misbehaving software on your Windows box?
Tom Swiss | the infamous tms | my blog
You cannot wash away blood with blood
The service runs in the background and launches iTunes when the phone is plugged in. It's quite handy.
I tried to use iTunes once, but I couldn't complete the installations because a required entry drop down list wasn't in the dialog tab order, and I didn't have a mouse available, just a keyboard at that time.
Their graphics/design guys are good, but Apple developers/testers just seem lazy to me, missing something so basic.
And replace it with the Rainmeter skin that plays MP3s.
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."
The reason is two-fold. First, iTunes scans your folders for new files periodically if you don't let it manage your collection for you. Second, it's constantly searching for an iDevice using the 'mobile' service; All that CPU is being eaten making windows calls to each attached USB bus and being asked "Are we there yet? Are we there yet? Are we there yet?" And then, of course, launching iTunes as soon as one is detected. You can disable this service with no ill-effect, but you have to do it manually. iTunes will then throw up a warning and then continue on its merry. That, by the way, is also on the Apple message boards.
Now yes, Apple shouldn't have done this without telling its users: Hey, enabling this is gonna slow your junk down! -- But on the flip, Microsoft's hardware abstraction layer is a terrible, horrible, implimentation that makes every access from userspace terribly expensive. And worse? Some of the documentation specifically says they want it that way! On purpose! Everytime I have to work with HAL I'm filled with a strong urge to strip all my clothes off, burn them, then take a cold shower while shivering up in the corner, scrubbing my skin raw, chanting "must...wash...away...the sin..."
I guess what I'm saying is... Shame on both of them. Now if you'll excuse me, I have another shower to take.
#fuckbeta #iamslashdot #dicemustdie
Litigation is somewhat of an issue when dealing with Apple's hardware/software and reverse engineering.
Only on
Sometimes I swear Apple makes the Windows versions of their software terrible on purpose. It's still an uphill battle trying to use any of their software on a windows machine, as it always has been.
Why?
Obviously when you're using their amazing iPhone or iPad or whatever other tacky Apple gadget, you'll start to feel that your PC isn't up to par and you should replace it with a Mac.
Total rubbish. People should avoid buying trashy Apple products at all costs, lest they support this fiefdom.
full disclosure: I have used Linux exclusively for the past 13 years. I only have to interact with Apple and Microsoft's junk when I have to sync my wife's iPad with her PC.
Steve Jobs death I believe was because his accusation of accusing Flash as being crappy software while iTunes remained by far the worse POS ever written, literally guilted Mr. Jobs to death.
Seriously though...I've never wasted more time than I have with iTunes. Never had any app cause my system to become unresponsive more. I would wager $5,000 Apple deliberately chose to make for a sucky experience on Windows.
A similar google service on my MacBook causes the keyboard to stutter every few hours and occasionally disables the camera until I reboot. There's a way to disable it, but I haven't bothered yet. However, the process is incredibly similar to this one for disabling applemobiledeviceservice on Windows.
Mac users don't complain because iTunes on Mac doesn't have this problem, or much of any problem that I've noticed. This is either because Apple doesn't know how or care to code for Windows, or because it's a conspiracy to get iPhone and iTunes users to buy Macs because "Windows is slow." In my opinion, it's probably a mixture. Apple just doesn't have as much incentive to provide a good Windows experience, so they don't bother, knowing that this will probably convert a few suckers to Mac.
Similarly, Google services don't seem to screw up Windows or Linux, and Google's MTP support for Mac (MTP is required for Nexus 4) is ridiculously minimal. It's an analogous situation. Vendors for system X don't care about system Y, news at 11.
The solution seems simple. Sell your iPhone to a Mac user, and buy an Android device. Why would you even buy an iPhone for Windows? I use a Mac and I still won't buy one.
"They were pure niggers." – Noam Chomsky
superuser.com is too busy and /. comes to the rescue. Thanks /.
1 Answer:
- First of all, you can charge your iPhone without having iTunes loaded/loading (see this).
- Then, many users don't have such problem: be sure you have the latest windows SP, and the latest iTunes.
Possible duplicate from Prevent iTunes from starting when iPhone is plugged in on Windows
Slashdot, fix the reply notifications... You won't get away with it...
That's SIGKILL yourself in shame.
Mod me down, my New Earth Global Warmingist friends!
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
iTunes is shit. It has always been shit. It will probably always be shit.
This is not news.
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.
Of course this means Microsoft's puppet press has to bash iTunes now. Not that I would run the stupid app, but that's what this is about. Ballmer has his knickers in a twist because he's starting to find out what it felt like to all those other people he was locking out of the dominant platform back in the day when he was king of the hill.
I do not work for Microsoft and as an owner of an iPod, which requires iTunes to transfer music from my computer onto the device, I can tell you that the Windows version of iTunes is probably the shittiest piece of software ever written.
I hate how these companies seem to think that they can take over my machine; HP seems to think that all I do is print. Office seems to think that I type all day. AV software usually seems to think that all I do is want to hunt viruses. iTunes seems to think that I just screw with my iPad/iPhone all day. BlackBerry violates your machine. Java seems to think that it should check for an upgrade 100% of the time.
The last few updates from Apple have this hidden MRT process that goes made for hours after the upgrade. But the MRT gives no hint that it is installing, and no hint that it is running. Your machine grinds to a halt so you slowly bring up the list of active services and find that it is using all your CPU and that of your neighbor plus so much memory that it is worse than the viruses that it is hunting.
I wish that people would have an OS that has a simple sandbox keeping software installation tools from installing whatever they want. Then when I run Office or iTunes or even my AV it will then run. When I shut it down it will stop. The same for drivers. When I go to print it should run the driver and then go away.
But another critical tool that could be created right now would be to have an activity monitor that differentiates vital services from crap from Acer or HP. With this tool you would bring up a list of services running and not only kill them now but disable them for all time. No more kill the service only to have some daemon pop it back up seconds later. I don't want to go digging through any config/startup/hidden file nonsense.
I can tell you that the Windows version of iTunes is probably the shittiest piece of software ever written.
Then you haven not used FileMaker, the VB 6 IDE, or any VB 6 app.
brandelf -t FreeBSD
Windows ITunes is not just slow; it leaves gigantic *.tmp files in your Itunes folder, especially if you have a large library. Go ahead..check it out. I freed up over 60 gigabytes of space by deleting them recently, and I think they are created everytime you load ITunes.
Only if you purchased it from Apple. If you want to sync your local music collection to your iPhone you still need to use iTunes sadly.
Clearly the problem is that he's using Windows. If he's bought an iPhone, then the next step is to buy an iMac to plug the iPhone into, and then a new iPhone, because his old iPhone won't work with his new iMac. Also a black turtle neck. And a picture, "Steve Jobs 1955 - 2011" for his wall.
Personally I don't buy iCrap. I have a picture of Dennis Ritchie on my wall, and underneath, his widely celebrated comment: Steve Jobs is a cunt*.
* This is not an actual comment by Dennis Ritchie**.
** To my knowledge.
I'm surprised that nobody makes a replacement application. I remember virtually having to buy one for my NJ3 years back because the OEM software was so bad.
If memory serves, older flavors of ipod where more or less equivalent USB mass storage devices, though they required media files to be stored in a specific arrangement and a little database file to be uploaded, so you needed a utility of one sort or another to do transfers(you could drag and drop; but the device wouldn't do anything useful with files added that way).
For the iDevices that Apple actually cares about(ie. not the 'classic') the situation is a bit weirder and more complex: it's strongly resembles TCP-over-USB. On top of that, all kinds of behavior has been implemented. As the latter link suggests, there has been some work on the matter; but it's a relatively complex beast(which Apple has no particular compunction about changing as it suits them).
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 problem isn't in charging the phone - that can be done without iTunes installed at all. The issue is for downloading music (to my knowledge - I don't use iTunes with my phone, only an old iPod) - any interactions that you want to make happen from your computer to your phone have to be blessed by iTunes. As another poster mentioned, iTunes has at least 3 different applications that run at the same time - killing any one of them by itself it will restart immediately. Kill all 3 and they'll restart after about a minute. While it's "easy" enough for techies to go in and disable the service, my take on the question is: Why should that even be necessary? Why isn't there a clearly labeled toggle somewhere in the software? And the answer is that - at least for iDevices - there are no other alternatives (as a different poster mentioned, there are paid for apps that say they can accomplish this - I don't know anything about them). I can't come up with a Linux equivalent...sorry. (BTW, I'm not the AC from above, I think it's a good question - it's not unreasonable to have control over your own devices, however Apple has given us their opinion about that in no uncertain terms).
Or Windows.
I stopped reading when I got to the bit about how his virus scanner was written in assembly for speed. This is a ridiculous assertion given that virus scanners slow the system down because of IO pressure, not to mention how good modern x86 compilers are.
I don't actually use Windows, but I do take care of it for others.
Hold down that little Windows key on your keyboard and hit "R". Type in "MSConfig", in the startup section enable/disable whatever you want. I personally like to disable just about anything Adobe, Apple, or Oracle puts in there, unless I actually need to run an Oracle component in the background. Those three companies can't help but attention whore and run on startup and none of there stuff actually needs to run until used. You can probably find a few more things that have no business starting with your machine while you're at it.
The preceding post was not a Slashvertisement.
You misunderstood the "just click an icon" comment. It was in response to:
The service runs in the background and launches iTunes when the phone is plugged in. It's quite handy.
The comment was actually saying that all the service did was to save you from having to manually launch iTunes; or in other words click an icon. It was not about how to start or stop a service in Windows (which can be done with a single icon anyway using either sc.exe or net.exe).
The iTunes service really isn't that handy a feature, especially if it is causing problems with overuse of resources when it isn't in use. It is also annoying to have the program pop up when you are just plugging in the phone to charge it.
I have an iPod, not an iPhone. However, the AppleMobileDeviceService.exe process is running in the background. I have never seen it gobble up cycles. It normally sits at "00" CPU. When I plug in the iPod, it jumps to an incredible "01" for a very short interval and then returns to "00". So, does anyone else have this process gobbles up to 50% of the CPU?
Nos Morituri te salutamus
Litigation is somewhat of an issue when dealing with Apple's hardware/software and reverse engineering.
Reverse engineering is legal in the US. Any information gleaned from such activities that doesn't violate a patent, an NDA, or copyright / DMCA can be publicly disclosed with impunity. Reverse engineering for the purposes of interoperability is also well supported by prior case law.
I am becoming gerund, destroyer of verbs.
Well, you can't just have people willy-nilly adding files to the filesystem of the device they've purchased. We should be considerate and politely ask the device if it'll alter its filesystem on our behalf, and when it tells us to go blow donkeys for wanting r/w permission to /, we sit back and acknowledge Apple's wisdom and the groundbreaking intuition of their software!
It's kinda sad that the extremely sophisticated design of that communication isn't really there to facilitate advanced functions... it just facilitates advanced lockdown. You don't tell the device what to do; you tell it what you'd like, and then ask if that's okay. Given that, I applaud The Evad3rs for making iOS devices bend to their owners' will.
Boot Windows, Linux, and ESX over the network for free.
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.
That something is legal won't stop a company from suing and using court costs - both money and time - as a de facto punishment.
Forget magic. Any technology distinguishable from divine power is insufficiently advanced.
I looked at my computer, and while it's had an uptime of probably since April's patch tuesday, that service has consumed a grand total of... 1m53s of CPU time.
He never mentions what version of iTunes he's using - perhaps it's still 10.x, which is horrible. iTunes 11 has actually fixed a LOT of stuff and is actually pretty decent and more importantly, fast. It's incredible how fast iTunes is nowadays. I'm not sure what Apple did, but damn it's fixed a lot of stutters, halts, and stalls.
(3) The Windows APIs for device arrival notification suck and require polling rather than blocking a thread to wait
Thanks so much for sharing your knowledge. I'll call up our software engineers immediately and let them know that processing a DBT_DEVICEARRIVAL message in the message pump, or using RegisterDeviceNotification() in our service, can't possibly work and we should re-write those sections of code to poll for device change.
I have mod points, but there's no "-1 - ignorant" mod.
And the worms ate into his brain.
Wireless sync talks to the same service. You still need it to sync with a computer.
iTunes replaces quite a few standard Windows services. Until a few versions ago there was a DNS resolver service, but I think it has been built into the client now. Yeah, iTunes does its own DNS lookups for some reason.
The entire MacOS font rendering system is also in there to make sure that iTunes looks exactly the same on Mac and Windows. That's why the font rendering is a bit blurred compared to other apps that use the Windows Cleartype system that prioritizes clarity over accurate shapes.
const int one = 65536; (Silvermoon, Texture.cs)
SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
Yep - and NOD32 is even on Apple's list of software that has issues with iTunes...
Even back in the mass storage days they started to encrypt the iTunes database in an attempt to lock non-iTunes software out. They really are dicks about it.
const int one = 65536; (Silvermoon, Texture.cs)
SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
Since when do you need to sync with a computer at all? Since iOS 5, there's absolutely no functionality on the iPhone that can't be done with the phone only, and no computer.
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)
Well, clearly this will never be the year of the windows desktop until users never have to interact with the commandline for anything. They should scrap entirely in fact because users should never need it.
SJW n. One who posts facts.
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.
(3) The Windows APIs for device arrival notification suck and require polling rather than blocking a thread to wait
Thanks so much for sharing your knowledge. I'll call up our software engineers immediately and let them know that processing a DBT_DEVICEARRIVAL message in the message pump, or using RegisterDeviceNotification() in our service, can't possibly work and we should re-write those sections of code to poll for device change.
I have mod points, but there's no "-1 - ignorant" mod.
You do that.
Tell them to make a version of DBT_DEVICEARRIVAL that doesn't require you to have a window handle to get the callback to the message pump so that you don't have to poll using PeekMessage(). The notifications need to be able to go to windowless services. If they can't go to windowless services running and paused in the background, they are no good for causing the launching of a specific program when a device of a specific type arrives.
Then tell them that RegisterDeviceNotification() is useless for detecting new iPod/iPhone/iPad devices because it require matching a GUID that has not been defined at the time that the service was written, and that having to update the service by having to update iTunes each time you buy a new device before the plugged in device is recognized as launching iTunes because you don't get a broadcast notification in that case, which you can then use to open up the device temporarily to probe it further ("Hi, USB device, are you an Apple Device?") rather than using a stinking GUID.
Then call up the IronKey and other encrypted USB storage device folks and tell them about it, too, because, hey, they have to do a crypto handshake and need to be able to aske the same question AFTER the handshake.
Then you can call up Motorola, and tell them so they can update their PhoneTools Software, because they have the same problem.
Then call the DataPilot folks, who have no idea in heck what the phone GUID would be when you plug in your stupid random phone, particularly if you are using their DataPilot Universal PRO Kit, which connect up to almost all the phones from Apple, Motorola, LG, Samsung, Sanyo,
Sony Ericsson, and Audiovox.
I have more concrete examples, but I think you get the point.
This is a general problem. The current Microsoft APIs do not solve this general problem; they require either an open application window, or they require a service which polls. They are insufficient. If you can indeed call up your engineers, do so. Tell them the problem space their APIs are not solving, and request they fix the existing APIs or add new ones to address the problem.
You can only download matched media, or purchased media. Anyone who rips a significant portion of their library would require match to do this (pay account), and upload it before they could leverage cloud playback on demand.
As to your CPU issue it appears to be related to winsock.
Higher voltage? I thought it was just higher current.
No it could actually be higher voltage, 5V (or 5.25) compared to 4.8 or something like that.
Nah, it's higher current (AMPs). Both you computer USB port and the iPad USB charger put out 5V. If it's higher than that, it can blow out circuits etc. I've had enough experience to say that the wrong voltage kills
From the USB Wiki, a device (plugged into a computer) may draw a maximum of 5 unit loads (500 mA) from a port in USB 2.0; 6 (900 mA) in USB 3.0. The charger, however, puts out about 2.1 AMPs.
As somebody who uses VB6 daily
You've already disqualified yourself.
brandelf -t FreeBSD