Inside iPhone OS 4.0: Multitasking vs Mac OS X, Android

1235

Comments

  • Reply 81 of 110
    nikon133nikon133 Posts: 2,600member
    Quote:
    Originally Posted by lowededwookie View Post


    Apple wasn't late to the game at all. Apple simply didn't just jump into the water without first checking for rocks and logs.



    Being first to jump into the water then getting sconed by a rock shouldn't make you the envy of everyone, it should make them realise that they were lucky not to have gone in first.



    Apple sat down and thought about the best way to solve the problem. They then realised the problem was multi-faceted then designed solutions accordingly. When it comes to multi-tasking one size does not fit all.



    Apple has taken the logical engineering solution as opposed to the marketing solution of ship it then sort it out later.



    As such Apple's way IS better.



    You know, you could apply the same logic to other's bad moves and somehow make them right.



    Like... MS and Nokia are not late to modern smartphone OS game at all. MS and Nokia simply didn't just jump into the water without first checking for rocks and logs.



    Or... MS was not late to modern desktop OS game at all. MS simply didn't just jump into the water without first checking for rocks and logs. And Vista wasn't a failure - it was just their way to check for rocks and logs.



    Whatever Apple's intentions were, they were overtaken by Android in some fields. iPhone OS still has a lot going for it, but glorifying what Apple did and equally what Apple hasn't done (yet)? Not my cup of tea.
  • Reply 82 of 110
    nikon133nikon133 Posts: 2,600member
    Quote:
    Originally Posted by souliisoul View Post


    As much as I want to describe this person in few choice words, I found even worse the number of people. who have made a comment ever though people before them have already said the same thing. A pack of wolves for easy prey



    I don't understand why do you need to describe that person. What's wrong with good old replying to his post, if you have any argument to ridicule it.



    Does lack of real arguments always have to turn personal..? \
  • Reply 83 of 110
    Just an Android troll living up to his log in name

    Quote:
    Originally Posted by Brainless View Post


    Oh, man, this is just a bad article. Regret the time spent reading it.



    If there is one part of the article I can't disagree more it is this sentence : "Apple ... own approach to multitasking that it believed to be better" Who believe this ? You ? Why ? Because Divine Steve at his speech said so ? Ridiculous. You threw no arguments to support this.



    Let's get the facts straight :



    1, Apple was late to the game, and it mostly copied the Android approach. They might call it differently, but the Apple's multitasking is not any advanced to the one in the Android.It is just copycat work not to be too far behind.



    2, There is no client-server model in Android multitasking. It is not any more difficult to do efficient background tasks on Android than with iPhone OS 4. You just don't understand the idea, that's all.



    3, Android still maintains the technological lead in the multitasking. There are some areas that weren't copied by Apple (yet), such as broadcasting the system-wide events (not the same as local notifications, although it might be extended this way in iPhone OS 5). This kind of background processing can actually help to save battery life (you do you background networking at the time some other process established - battery expensive - data connection, so you can post your tiny bit of data needed to send to remote server with almost no energy penalty. This is not copied to iPhone, i.e. iPhone is still technologically behind Android in the area of multitasking. This is reason you can't say iPhone is best multitasking mobile implementation, it is just a lie.



    4, Apple was overtaken and still plays catchup game. By the time iPhone OS 4 gets to the real users, Android will probably have version 3 released (believed to be announced on Google IO in late May). The the gap, narrowed by iPhone OS 4 will widen again.





    One quick question : are you actually paid by Apple to do this kind of marketing for them or goes this from your fanboy nature ?



  • Reply 84 of 110
    [/QUOTE]If it's patented then why isn't Apple protecting it or is Google licensing it? Do you have links to these patents?[/QUOTE]



    it would be interesting to know if this a protected idea:



    http://en.wikipedia.org/wiki/Services_menu
  • Reply 85 of 110
    foo2foo2 Posts: 1,077member
    Quote:
    Originally Posted by Brainless View Post


    Oh, man, this is just a bad article. Regret the time spent reading it.



    I don't believe you did read it.



    Quote:

    Let's get the facts straight :



    1, Apple was late to the game, and it mostly copied the Android approach. They might call it differently, but the Apple's multitasking is not any advanced to the one in the Android.It is just copycat work not to be too far behind.



    actually, you're wrong.



    Quote:

    2, There is no client-server model in Android multitasking.



    Nobody said there was. Google simply calls them services, or one might call them service-enabled apps.



    Quote:

    It is not any more difficult to do efficient background tasks on Android than with iPhone OS 4. You just don't understand the idea, that's all.



    Right, we're to listen to you, when you haven't even read or understood the article.

    The issue is which approach is more efficient, not which approach is more difficult to utilize.



    Quote:

    3, Android still maintains the technological lead in the multitasking.



    And Google doesn't do the things Apple does, so one could similarly say Apple has the technological lead.



    Quote:

    There are some areas that weren't copied by Apple (yet), such as broadcasting the system-wide events (not the same as local notifications, although it might be extended this way in iPhone OS 5).



    Before Apple does any copying of novel features in Android (if there are any), if Apple cared about them, Apple would surely be waiting to see which ones Google has filed for patents and how to circumvent them. Google knows Apple has already filed for its own mobile multitasking patents, so they know they're in trouble as long as weight and battery life are issues.



    Quote:

    This kind of background processing can actually help to save battery life



    Are you sure?



    Quote:

    This is not copied to iPhone, i.e. iPhone is still technologically behind Android in the area of multitasking. This is reason you can't say iPhone is best multitasking mobile implementation, it is just a lie.



    The iPhone 3GS will employ Apple's new, efficient method of multitasking without requiring a heavier, swappable battery. This equals better. AFAIK, no Android phone uses a sealed battery. Android just isn't power-efficient enough.



    Quote:

    4, Apple was overtaken and still plays catchup game.



    You wish.
  • Reply 86 of 110
    solipsismsolipsism Posts: 25,726member
    I'll add anyone's UDID for FREE.
  • Reply 87 of 110
    29922992 Posts: 202member
    Quote:
    Originally Posted by JavaCowboy View Post


    On another topic, I saw the lack of multitasking as being the #1 disadvantage of the iPad. I see multitasking as being far more critical for the iPad than the iPhone/iPod touch because it's far more closer to a general computing device.



    Having said that, Apple's implementation of multitasking in iPhone OS 4.0 (do they need to rename it now?) does solve this particular issue adequately.



    ... and that'll be iMobileOS, in short iMOS



    (PS: if APPL will be using this name... well, just in case... hurry up and someone register the iMOS name. You never know: fast money making at the horizon?! )
  • Reply 88 of 110
    Quote:
    Originally Posted by JavaCowboy View Post


    Sorry to be off topic a little.



    As much as Apple's tools impress me, including the new C lang and LLVM compiler, I can't help but ask myself why, in the interest of developer productivity and adoption, they haven't, at the very least, tried to give developers an alternative language.



    Having read about Objective-C, I know that it's a very thin object-oriented layer around the C language itself. This gives it advantages in that it makes it easy to call a wide variety of C libraries, but it has the jarring disadvantage, at least from my point of view, as being somewhat primitive, as well as overly verbose. Granted, there is the flexibility of being able to instantly take advantage of new C features, such as closures (blocks) pretty much instantly., whereas Sun had to design new languages with that feature, and is now going through a painful process of getting them into Java 7.



    Still, with more modern languages such as C#, Scala, and, to a lesser extent, Java abstracting away such complexities, I wonder why Apple doesn't devote resources to developing a wrapper language for Objective-C that maintains all the advantages of the Cocoa runtime, without the massive verboseness (ex header files needed for every class, as well as declaring methods and properties in each).



    Don't get me wrong, Apple does many things right. Objective-C accomplishes its objectives (no pun intended), and is a critical factor in the success of Apple's growing empire. It's just, from my perspective, not a very pretty language to use.



    Still, with their own Clang compiler without the GPL restrictions of gcc, anything's possible.



    Modern isn't a good qualification for a language. Some older languages like Simula 67 (yes 1967) or Miranda are better than most of the modern languages around.



    When you program for an embedded environment a non interpreted language is still the best choice. This eliminates most 'modern' languages. It leaves C, C++ and Objective-C as possibilities. And that's exactly whats supported by Apple.



    C, by the way, is a brilliant language and if you need more 'abstraction' Objective-C is its natural extension.

    Your wrong about the 'very thin object-oriented layer around the C language'. It is based on Smalltalk and fully Objective in every sense of the word. Default it is even more 'Objective' than C++, but, it does that with very few language (syntax) extensions.



    This means that if you already know the objective programming paradigm and you know C, you can start almost immediately (no learning curve); with C++ this is impossible.



    So instead of a thin Objective layer, it is a thin syntax extension with full Objective expression power. This is a huge positive, instead of a negative.

    The one thing Objective-C lacked, garbage collection, is added a few years ago.



    So as an extensive user of C, Objective-C and C++ I can say that C and Objective-C are 'modern' in every way and more than capable to do the job.

    It can even be fun to program again.



    J.
  • Reply 89 of 110
    Quote:
    Originally Posted by Dick Applebaum View Post


    I think the advantage is that the switcher list is a stack of recently used apps... You can bounce back and forth among several apps with a home double-click and app icon tap....



    A lot easier than:



    -- single-click home, flip icon screens, then app icon tap



    Or



    -- slow double-click home, enter spotlight search term, tap selected app icon



    ... App switching is usually 1-2-3... Home 2x, app icon-- usually left-most (last used) app icon.



    .



    That, and resuming an app that isn't suspended fully (with its state written to flash) could be a lot quicker because it is retrieved from RAM. (Note that apps started from the home screen are always loaded from flash.)
  • Reply 90 of 110
    philotechphilotech Posts: 104member
    Quote:
    Originally Posted by vhyyp9 View Post


    OK, so you basically agree then: nobody has copied Apple, but Apple copied lots of other technologies and phones. And Apple didn't introduce any innovative technologies with the iPhone. And I expect that in another few years, Apple will copy other technologies from Android and Nokia. But if you want to have an innovative phone (as opposed to a pretty one), don't get an iPhone. If you want a mainstream smartphone that looks nice and is fairly easy to use, get an iPhone. But don't complain if other companies start selling simplified smartphones as well; taking away features is not innovation.



    Why do you (and so many other people) put so much emphasis on who has copied whom?



    1. Most people just don't care, as long as the result is good.



    2. Progress is all about copying good ideas and improving on them while forgetting the bad ones. Otherwise, we would have to invent the wheel (literally and metaphorically) anew every day.



    3. This is the reason why (i) ideas can't be patented at all (otherwise you'd still try to invent a car that's not using wheels) and (ii) by asking for a patent you have to disclose your invention to the public and, in return, get a limited period of exclusivity. I don't pretend this system is perfect (in particular in the US as regards software), but it's a try.



    4. It's not as easy as you pretend to tell who is copying from whom. I bet you can't tell any technology supposedly invented by Apple or Android (Google) that's actually invented by them and blatantly copied by Apple. In particular, everything that iPhone OS 4.0 is all about has been available in a similar form (see above no. 2 about taking good ideas and improving on them) before, and also before Nokia and Android.
  • Reply 91 of 110
    philotechphilotech Posts: 104member
    Quote:
    Originally Posted by jnjnjnjn View Post


    That, and resuming an app that isn't suspended fully (with its state written to flash) could be a lot quicker because it is retrieved from RAM. (Note that apps started from the home screen are always loaded from flash.)



    No, the latter is definitely not the case (I assume; can't know for sure). Otherwise, imagine, I suspend an app, forget about it and open it from the Home screen. Now I would have the same app running twice, which is not defined under iPhone OS. The OS will definitely be agnostic as to how the user starts an app. If it's in RAM, then it will be un-suspended, if not, it will be restarted, regardless of how I invoke it.



    Furthermore, the app list shown after double-pressing the Home button will almost certainly NOT show the running/suspended apps, but rather the recently used ones. Otherwise, the user would need to know / care which apps are running, and would need to fail in cases where the OS shuts down apps due to low memory. Of course all apps that are still suspended will always show up, but not necessarily only such apps.
  • Reply 92 of 110
    supaflysupafly Posts: 15member
    Quote:
    Originally Posted by Brainless View Post


    Oh, man, this is just a bad article. Regret the time spent reading it.



    If there is one part of the article I can't disagree more it is this sentence : "Apple ... own approach to multitasking that it believed to be better" Who believe this ? You ? Why ? Because Divine Steve at his speech said so ? Ridiculous. You threw no arguments to support this.



    Let's get the facts straight :



    1, Apple was late to the game, and it mostly copied the Android approach. They might call it differently, but the Apple's multitasking is not any advanced to the one in the Android.It is just copycat work not to be too far behind.



    2, There is no client-server model in Android multitasking. It is not any more difficult to do efficient background tasks on Android than with iPhone OS 4. You just don't understand the idea, that's all.



    3, Android still maintains the technological lead in the multitasking. There are some areas that weren't copied by Apple (yet), such as broadcasting the system-wide events (not the same as local notifications, although it might be extended this way in iPhone OS 5). This kind of background processing can actually help to save battery life (you do you background networking at the time some other process established - battery expensive - data connection, so you can post your tiny bit of data needed to send to remote server with almost no energy penalty. This is not copied to iPhone, i.e. iPhone is still technologically behind Android in the area of multitasking. This is reason you can't say iPhone is best multitasking mobile implementation, it is just a lie.



    4, Apple was overtaken and still plays catchup game. By the time iPhone OS 4 gets to the real users, Android will probably have version 3 released (believed to be announced on Google IO in late May). The the gap, narrowed by iPhone OS 4 will widen again.





    One quick question : are you actually paid by Apple to do this kind of marketing for them or goes this from your fanboy nature ?



    Your name says it all.
  • Reply 93 of 110
    supaflysupafly Posts: 15member
    Quote:
    Originally Posted by Matthew Yohe View Post


    While I think that Apple's multitasking in 4.0 is a very good approach, there is still the issue of the lack of managing modal popup windows. iPhone 3.0 made them unpleasant with push notifications and it looks like 4.0 only will continue down that path as it seems they are relied on more so with local push.



    I was very underwhelmed by the lack of any development in this area of the operating system for 4.0 and hope that they just didn't have it ready for the demo. Lacking a good centralized notification app (a la Android's window shade or WebOS's notification area) is a serious issue with the current (and apparently future) operating systems on offer.



    I couldn't have said it better my self.
  • Reply 94 of 110
    Quote:
    Originally Posted by Philotech View Post


    No, the latter is definitely not the case (I assume; can't know for sure). Otherwise, imagine, I suspend an app, forget about it and open it from the Home screen. Now I would have the same app running twice, which is not defined under iPhone OS. The OS will definitely be agnostic as to how the user starts an app. If it's in RAM, then it will be un-suspended, if not, it will be restarted, regardless of how I invoke it.



    Furthermore, the app list shown after double-pressing the Home button will almost certainly NOT show the running/suspended apps, but rather the recently used ones. Otherwise, the user would need to know / care which apps are running, and would need to fail in cases where the OS shuts down apps due to low memory. Of course all apps that are still suspended will always show up, but not necessarily only such apps.



    Your right. Starting an app from the home screen benefits from the new OS (4.0) too.

    So, there is no difference in launch speed from the task bar or the home screen when you use the new OS, except when you launch the app for the first time.

    It is however - as I should have said - a speedup compared to the current (old) OS where applications launched from the home screen always launch from flash.



    J.
  • Reply 95 of 110
    docno42docno42 Posts: 3,337member
    Quote:
    Originally Posted by Wings View Post


    but now with Location Services this is supposed to take place in the background and work even when the iPhone is asleep. But if L.S. only wakes the app when you move from one cell tower to the next then your friend could be anywhere within that cell tower coverage area and you'll not know exactly where. So I still don't see how Loopt could benefit all that much from L.S.



    If your not moving, your location hasn't changed so why do you need to poll GPS?



    If the app knows your friend is close you will get a notification, launch Loopt and then it will use GPS to get the accurate fix. I haven't played with Loopt much but I'm pretty sure there is a way to message your friend in it - or your friend will get a notification that you are near and launch it, getting a detailed GPS update. Either way, you don't need the expense of the "real" GPS radio. Pretty elegant - people just need to really think about what they really need and when. This kind of optimization has been missing from computer design for some time. While I think he's a bit of a flake these days when it comes to his security rantings, I am a big fan of Steve Gibson and his philosophies in programming and optimization.



    For far too long the focus has been on the programmers. Look at the inefficiencies that have been introduced to make some programming easier and faster - at the expense of resource consumption. Where is the science in "computer science" gone? The microwave/fast food mentality has caused bad software all around. Ironically, a group that probably understands this really well is the windows OS group at MS since the best way to write secure code is to write good, well disciplined code! Say what you want, Windows 7 is pretty darn good and a vast improvement over their previous efforts. To bad MS is so balkanized internally this hasn't gotten to all groups.



    This is why Apple is going so slow with features like multitasking on the iPhone. It's much easier - from a technical perspective - to take your time in the beginning and lay a strong foundation that can be stable for the long term. Politically it's pretty hard because you catch all kinds of crap (like have been tossed around in this thread) about being late, copying and other such nonsense. Time will tell if it was the best move for Apple, but it hasn't seemed to slow them down so far
  • Reply 96 of 110
    Quote:
    Originally Posted by kotatsu View Post


    The key missing component for background processing in iPhone OS 4 is time line based applications, like IM and twitter. These can run in the background on an Android phone and can nicely stack up new messages until the user wants to read them. iPhone OS 4, bizarrely, can't do this (surely the popularity of Twitter can't have escaped Jobs and co), and requires the twitter/IM client to log in anew and refresh each time the user wants to see all the new messages. The push notification system is totally usless in this case (and in most cases to be frank).



    I also think Apple are behind on glanceable information/widgets. Wouldn't it be nice to be able to have some widgets on the home page?



    I'm all for saving the battery but I'm also all for choice, and it should be my choice if I want to run IM/twitter in the background, not Steve's.



    Does seem logical that if I got the push notice it ought to just push the message to the app, even if it was only storing it in a general message queue for the app to grab it when launched. This is most frustrating with Mail since I can see when I get mail but don't actually get the real e-mail until I open Mail. If I get a push message that someone important e-mailed me, then a few minutes later when I go to see what they said & I don't have cell service...bummer. This really happens very seldom but still, it only takes once for it to be annoying.
  • Reply 97 of 110
    Quote:
    Originally Posted by DocNo42 View Post


    If your not moving, your location hasn't changed so why do you need to poll GPS?



    If the app knows your friend is close you will get a notification, launch Loopt and then it will use GPS to get the accurate fix. I haven't played with Loopt much but I'm pretty sure there is a way to message your friend in it - or your friend will get a notification that you are near and launch it, getting a detailed GPS update. Either way, you don't need the expense of the "real" GPS radio. Pretty elegant - people just need to really think about what they really need and when. This kind of optimization has been missing from computer design for some time. While I think he's a bit of a flake these days when it comes to his security rantings, I am a big fan of Steve Gibson and his philosophies in programming and optimization.



    For far too long the focus has been on the programmers. Look at the inefficiencies that have been introduced to make some programming easier and faster - at the expense of resource consumption. Where is the science in "computer science" gone? The microwave/fast food mentality has caused bad software all around. Ironically, a group that probably understands this really well is the windows OS group at MS since the best way to write secure code is to write good, well disciplined code! Say what you want, Windows 7 is pretty darn good and a vast improvement over their previous efforts. To bad MS is so balkanized internally this hasn't gotten to all groups.



    This is why Apple is going so slow with features like multitasking on the iPhone. It's much easier - from a technical perspective - to take your time in the beginning and lay a strong foundation that can be stable for the long term. Politically it's pretty hard because you catch all kinds of crap (like have been tossed around in this thread) about being late, copying and other such nonsense. Time will tell if it was the best move for Apple, but it hasn't seemed to slow them down so far



    1. I doubt that a cell tower change will trigger a GPS location update. Considering that reconnecting to a sufficient number of GPS satellites may take 1-3 minutes, this would still consume too much energy. It wouldn't make my location info more accurate anyway because after the GPS location update I will move away from that location anyway. Therefore, I rather assume that ONLY cell tower information is used for background location updates.

    2. Even downtown a larger city I move a few hundred meters without changing cell towers. In rural areas, that distance might even extend to a few kilometers. Therefore, regarding your first sentence, this is just not true that a GPS update is not required because I'm not moving.



    Considering the above, I think relying on cell tower location is sufficient for some 90% of all cases, but there are some cases where it isn't. For example Google Latitude's (or Loopt I guess, just haven't heard of it yet) notification if a friend is close won't work because even downtown we might still be half a kilometer apart, just in the same cell tower's area.
  • Reply 98 of 110
    solipsismsolipsism Posts: 25,726member
    Quote:
    Originally Posted by Philotech View Post


    1. I doubt that a cell tower change will trigger a GPS location update. Considering that reconnecting to a sufficient number of GPS satellites may take 1-3 minutes, this would still consume too much energy. It wouldn't make my location info more accurate anyway because after the GPS location update I will move away from that location anyway. Therefore, I rather assume that ONLY cell tower information is used for background location updates.

    2. Even downtown a larger city I move a few hundred meters without changing cell towers. In rural areas, that distance might even extend to a few kilometers. Therefore, regarding your first sentence, this is just not true that a GPS update is not required because I'm not moving.



    Considering the above, I think relying on cell tower location is sufficient for some 90% of all cases, but there are some cases where it isn't. For example Google Latitude's (or Loopt I guess, just haven't heard of it yet) notification if a friend is close won't work because even downtown we might still be half a kilometer apart, just in the same cell tower's area.



    That is how the service works on the iPhone so it's not polling constantly. Plus, A-GPS doesn't take long since it's using cell towers to get data from sats. This is why the GPS in cars can take minutes to connect yet you can pop open your phone and have Google Maps know your location in a few seconds.
  • Reply 99 of 110
    Quote:
    Originally Posted by solipsism View Post


    That is how the service works on the iPhone so it's not polling constantly. Plus, A-GPS doesn't take long since it's using cell towers to get data from sats. This is why the GPS in cars can take minutes to connect yet you can pop open your phone and have Google Maps know your location in a few seconds.



    Do you mean the way described further above, ie GPS update upon cell tower change, or the way I had assumed?

    Anyway, I don't see how it would make sense to request a GPS location update upon cell tower change because that position is rather arbitrary.

    Thanks for clarification.
  • Reply 100 of 110
    solipsismsolipsism Posts: 25,726member
    Quote:
    Originally Posted by Philotech View Post


    Do you mean the way described further above, ie GPS update upon cell tower change, or the way I had assumed?

    Anyway, I don't see how it would make sense to request a GPS location update upon cell tower change because that position is rather arbitrary.

    Thanks for clarification.



    There is nothing random about a GPS location update based on movement. It's quite systematic.
Sign In or Register to comment.