1 priority levels are different: iOS responds to screen first
Many people are reacting to the Apple iphone is smoother than the average Android phone, which is a phenomenon to say is a big problem no, after all, the two are completely two different systems so strictly speaking it is not fair to put together a comparison. But because Android and iOS are the two major operating systems of the moment, it's hard to avoid the argument of comparison. Today we're going to talk about why iOS products are more fluid in their use, and why some Android phones are prone to delays.
Why iOS phones Biandro smooth
Different priority levels: iOS responds to screen first
When we use iOS or Android phones, the first step is to swipe the screen to find the appropriate program to click into. And this is often the first step in all of the manipulation, the iOS system products show a smooth side, but Android products give a lag phenomenon, not to mention in-depth play game or other control. Why is this?
In fact, this is related to the priority of the two systems, iOS has the highest priority for screen response, and its response sequence is Touch--media--service--core architecture, in other words, when the user touches the screen, The system will be optimized first to handle the screen display, which is the touch level, then the media, service, and core architecture. The priority response level of the Android system is the application--framework--library--kernal architecture, and the display related graphics image processing This part belongs to the Library, you can see the third place is it, When you touch the screen, the Android system first activates the app, and the frame then the screen is the core architecture.
iOS system prioritizes touch level (image from Network)
You can see that the difference in priority results in the performance differences between iOS products and Android phones during the manipulation process, when you swipe the screen to manipulate it, the iOS system takes precedence over the touch level, and the Android system is the third one to respond to the library hierarchy. This is one of the factors that cause them to be different in smoothness. However, the priority of the system fluency has an impact is not false, but not the most absolute, resulting in two systems between the flow of the phenomenon there are other factors, we can continue to look down.
Product: iphone 5 (16GB) Apple phone 2 hardware works differently: iOS GPU-based acceleration
Different hardware work configurations: iOS GPU-based acceleration
At present, smart phone hardware equipment competition, in fact, the processor and other configuration has reached a bottleneck period, the major flagship products in the hardware contest basically not much difference, and this time the GPU has become an important factor to highlight the difference. Some large software like 3D games on the GPU performance requirements will be relatively high, Apple iphone products used in the Power VR SGX series GPU is now very mainstream, run the test data proves that it is not worse than some flagship-level Android products.
A6 processor integrates power VR SGX543 display chip (photo from the driver's home)
The iOS system's various effects on graphics are almost always accelerated based on GPU hardware, which can be rendered by the GPU instead of using the CPU or the program itself, to achieve smoother handling performance. However, Android products are not the case, because Android needs to adapt to different mobile hardware, need to meet a variety of configuration, so many graphics effects rely on the program itself to accelerate and render, and rely heavily on the CPU operation will naturally increase the load of the processor, resulting in a lag problem. While improvements in Android 4.0 and 4.1 have been made to set hardware acceleration to default, it is still not possible to do all of the effects on the GPU to speed up. Many Android phones come with the option to "Turn on GPU rendering", but the improvements are minimal.
iOS graphics effects GPU-accelerated rendering
The priority relationship that the screen responds to first, coupled with the nature of the ISO's GPU-accelerated program, makes it feel like the iOS phone has a good fluency during the manipulation. Because the whole process of its own is in the service of maximizing fluency, whether it is the first impression of the sliding touch screen, or the deeper operations after you further use the program. This feature of GPU acceleration should be another factor in its superiority over the fluency of the Android system.
Product: iphone 5 (16GB) Apple phone 3 Different development mechanisms: Android mechanism is inefficient
Different development mechanisms: Android mechanism is inefficient
Android's programming language is Java, while iOS is objective-c, but if the Android system is a bit stuck because of the Java development Language relationship, or compare it with objective-c is certain to be questioned. The advantage of objective-c is high efficiency but relatively "unique", while Java's advantage is the cross-platform, but the operating efficiency is relatively low, in fact, the two programming languages brought about by different mechanisms, has caused the fluency between the respective systems of alienation.
Android system architecture (image from Network)
iOS objective-c, compiler gcc, and this GCC compiled code by Apple specifically for the iOS architecture optimized to the extreme, running the process does not require the virtual machine in the middle, the execution is naturally very high efficiency--from the network. This paragraph should be the iOS system itself to run the process of running the program, and Android is carried out through the Java Virtual machine, and the system needs to occupy a lot of memory in exchange for execution speed, coupled with an irregular memory automatic recovery mechanism, which directly led to the emergence of the lag phenomenon.
iOS system architecture has a good operational efficiency
Android's Java programming itself is less efficient than objective-c, and in addition to the mechanism of automatic memory recovery, so that some of the phenomenon is not smooth. However, according to the technical staff, modern Java Virtual machine efficiency is no longer the biggest bottleneck, the Android 4.0 system version of the lag phenomenon has been significantly improved, so this is also a user did not find their new Android phone has too many of the reasons for the phenomenon. It seems that the programming languages and mechanisms have been improved by Android, which is not the only factor that has caused it to deviate from the fluency of iOS, but the impact is real.
Product: iphone 5 (16GB) Apple phone 4 system design is different: Android app can't be unified
Different system design: Android app can't be unified
Having a priority relationship, with the impact of GPU acceleration, and the programming and mechanism of two systems, seems to explain why iOS is more fluid than Android. But finally there is a problem is the application, it is obvious that users feel that the lag is in the process of running the software, after all, there is no application installed in the initial factory phone basically does not have the phenomenon of fluid or delay, and a smart phone does not install any application that is not in line with the user's purchase intention and use behavior. So ultimately, what's the problem with Android compared to iOS apps?
APP Store is another icon for Apple and iOS
Because of the closeness of iOS products, all apps run on a single object, because each application is run in iOS products such as Iphone,ipad, which are highly efficient in their use of hardware. Because the iOS system has only a few parts suppliers, the CPU is also changed once a year, this is not like the Android terminal changes month after year, the developer is very difficult to meet the future of the terminal resolution will contain the number of, what the GPU driver will contain, etc. As a result, Android applications are relatively expensive to develop and slow to gain. While iOS app development benefits from vertical integration of hardware and software, Apple naturally guarantees the perfect degree of integration between the application itself and the hardware product.
In fact, Android and iOS two System app development situation is different, it is also their development and non-open characteristics caused by. If you use the flagship Android phone and a game designed specifically for this flagship product to run against Apple's iphone 5, you really don't get stuck with the latency of the Android flagship, why, because the game is designed for this phone, In the soft and hard and so on to achieve maximum compatibility and optimization, nature will not appear stagnant phenomenon.
While the Android app is struggling to catch up, it doesn't go beyond iOS in quantity and quality
and the Android System program to be installed on the various requirements of the mobile phone, developers can not be developed for all machine models, can only be tested on the more mainstream machines and ensure the effectiveness of the operation, So they can only have to reduce the game experience in order to balance the entire product line to achieve the effect that the high school low product can share. Finally, the vast majority of users who occupy the Android terminal share are not getting a smooth experience because their phone is not a flagship product, and naturally the Android product is not as fluent as iOS.
Written at the end:
Whether the iOS product feels smoother or smoother than Android, the reason is simple. Apple will spend a year or even two years developing a desktop icon, a font, and testing the screen point, and Android terminal in addition to the Nexus series there seems to be not too many products can do so for such a long time to do such meticulous things. Some netizens say well, Android do more is "let the system run up", while iOS has the Apple do more is "let the system run with the highest efficiency", perhaps this is the reason that the iOS product is more fluent than Android. But the better part is that as Google continues to upgrade Android and the vendors ' sequential improvements to their own products, more and more Android terminals are getting rid of the lag, and the expectations of future Android users are also expected to be better met.
In fact, even if you do not know the truth, from the real experience can feel. Four-core Android is only in the local, home application optimization is good, if you install third-party software, 2000, 3000, 4000 price The product experience difference is not very obvious, or lost in the root.
Why iOS systems are smoother than Android systems