Transferred from: http://www.androidchina.net/818.html
According to third-party research data, 77% of Android phone users admit that they have experienced the impact of slow mobile phones, Baidu search "android+ card Slow", there are more than 4.6 million results. In the industry, Android phones have been "more use slower" reputation, this phenomenon even beyond the hardware category-many high-end Android phones in hardware parameters are better than the same generation of iphone, but they will still use six months to a year after the time to enter the "not smooth" state-- This is undoubtedly a disturbing thing.
However, to answer this question, we need to go back to the last century to find the origins of smartphones.
Western history and fantasy literary works are very keen to express the "descent" of the setting, its traditional culture that the pedigree can determine the talent, and lead to "fate is doomed" philosophical thinking. For example, the "Harry Potter" series, which is well known to all, is not difficult to find after deconstruction, which is actually a history of the slaughter of two lineages of Gryffindor and Slytherin (Harry Potter is the offspring of Gryffindor, inherited its courage, Voldemort is the offspring of Slytherin, and has his ambitions), The ubiquitous prophecy (one that will eventually kill another) also implements the western customary fatalism complex.
In the technology industry, the definition of "descent" is replaced by a "gene", what kind of gene a company has, determines its domain of expertise, which is widely accepted as a unique idealism in the materialistic era and has withstood the test of reality-when we try to explain Microsoft's lost Internet, Google's defeat in social networks, Baidu stopped in the cause of e-commerce, will be heartfelt feelings "original script has been written many years ago."
Similarly, why the "slow" problem with Android phones is always more serious than the iphone, and its answer is doomed from the start.
In 1965, Bell Labs, GE and MIT began working together to develop an operating system that was both easy to use and powerful, and after six years of collaboration, a software engineer at Bell Labs, Ken Thompson, completed a system called Unix during his vacation, It eventually became the commercial product of Bell Labs ' parent company, the US telecom giant, and launched a dozens of-year copyright operation. Although there were many variants later,Unix was not an open-source operating system in the strictest sense.
In 1991, a Finnish university student and a computer hacker, Linus Torvalds, who was fascinated by UNIX, but couldn't afford to run a Unix-like workstation, so he tried to write an operating system called Linux in the same way. And in the spirit of Richard Stallman, the father of free software, he added Linux to the Free Software Fund (FSF), allowing everyone to use, copy, modify and even sell Linux systems , while assuming open source obligations, Attempts to block Linux from being closed.
The story of the UNIX and Linux two operating systems is so much to tell, because iOS and Androidare the works that derive from Unix and Linux, respectively . That is, UNIX and Linux are two features that make a huge difference in the experience of using the iphone and Android phones.
Jobs once invited the founders of Linux, Linus Torvalds, to work with Apple, abandoning the open source of Linux and helping to develop a closed Mach core for Mac OS, which clearly refused after a big fight with Steve Jobs. Starting with Mac OS, Apple sees the privatization of the operating system as a corporate strategy, and in the words of Steve Jobs, he put iOS into the box of the iphone and sold it to the user. Therefore, theiphone does not appear "more with the card" situation, because Apple's mobile phone from the hardware to the software has the highest administrative rights, in a closed environment, from third-party applications can not invoke more than the iphone limit instructions , Naturally, it is not possible to cause sustained system damage.
In view of the open conditions of open source, Google is unable to constrain third-party applications from this end of the code, and since the Linux core settings application must be rooted in the system functions, This also results in a large number of applications that are dominated by the entire root level because of the need for a single feature, and can be read and written in any storage location on an Android phone, a high degree of freedom that opens Pandora's box, making it impossible for Android phones to defend against malicious apps. This is why open source software is controversial and is in commercial conflict: it only cares about granting freedom to the user-and this freedom also includes the freedom to cross the border-without thinking about how to avoid the risk of abuse from the worst possible point of departure. while Google, as a giant, has been trying to manage the industry chain in a unified way, when the industry chain is growing, and even Google can only play one of the roles, Android's runaway is understandable. For example, the latest version of Android typically takes more than 1.5 of the time to make the Android phone that activates it more than 50%, but iOS 7 only takes two months to update more than half of the iphone. In addition, an app that is penalized by Apple from the App Store will no longer be able to be installed on any legitimate iphone, but if an app is ejected from Google Play by Google, it can still log into a variety of third-party app markets, Available for normal download and installation.
So, this natural short board of Android, but also gave birth to a "mobile phone tuning" market, and led the new industrial chain.
The first level of "cell phone alignment" is the system layer. In Android 4.4 and after the Android L plan, it changed the operating mode of the application from Dalvik to art, its principle is simply "precompiled" effect, that is, when an application is installed on Android for the first time, Its bytecode has been compiled into a local machine code, reducing the startup and execution time of subsequent applications running.
According to Google's own results, in the different performance test app, art speed comparison Dalvik average increase of 80%, in some projects, art has increased even more than 1.5 times times, the result is very gratifying.
This is Google's effort to address slow Android cards from the source, but it's just a matter of performance optimization that doesn't solve the problem of calling resources because of application violations. At the same time, due to "precompilation" when installing the application, the entire installation time will be longer and the resulting file will become larger after installation, such as the latest Google + The installation package is only 6.9M, but its installed apk size reaches 28.3M, which is too much for Android phone storage space.
The second level of "cell phone tuning" is the ROM layer. As the world's largest Android market, many mobile phone manufacturers in China to develop dedicated ROM for the sale of products, most of the ROM, will also consider the optimization of Android system, such as MIUI V6 declared "the introduction of a variety of Linux system kernel memory optimization technology, Improve the efficiency of your application operations. "
In other words, as with Google do, the main optimization of the ROM manufacturers work, but also the Linux dynamic Knife, a variety of patches, so that its underlying language can be better adapted to a variety of mobile phone terminals. Or take MIUI V6 as an example, in introducing the new features, it has such a: "ZRAM scheduling optimization Technology", in fact, Zarm is a memory module in the Linux kernel, the role is to carve out a part of the memory to act as a virtual disk, to host the Linux swap partition, Some task compression is accommodated, so that memory usage increases, allowing the CPU to serve memory (because the current smartphone is CPU-wide and memory is the bottleneck).
However, ROM is also a double-edged sword, its changes to the android underlying system, and its use of memory space, but also increased the risk of mobile phone load.
The third level of "mobile phone alignment" is the application layer. The unexpected or deliberate seizure of large numbers of applications in mobile phones is the core cause of the slowing down of Android phones. The trouble is that too many applications are keen to stay in memory space and leave a lot of debris in storage space. This is why instant cleaning applications are becoming standard for Android phones.
Android system has seven kinds of processes, namely foreground process, visible process, main service, secondary service, background process, content supply node, empty process, when no cleaning application is installed, an Android phone can only rely on the system default allocation mechanism to automatically adjust memory usage, As long as the application requests, most processes are kept in memory as long as they are open, which is intended to allow users to re-load and save time when the process is reactivated, but Android does not anticipate that fierce market competition will drive the application to generate "bad currency drive" trends, Many developers, for commercial purposes, have managed to keep the application in a potentially operational state without the need to remain in memory, and one of the two is fine, but once the number is greater, the anrdoid phone will stutter and heat.
Take the Android phone cleanup class app "Cheetah Cleanup Master" as an example, it cleans up the process types, primarily in background processes, secondary services, content provisioning nodes, and empty processes:
background process (Hidden)-This is the first process to be scanned and identified, because most Android users do not use the return key to exit when switching applications, but instead directly press the home key, which allows the application to enter the empty process (the resource is relatively small), While the latter remains a background process (which takes up more resources), especially when the game app is running in the background, it competes with other apps for resources without caring whether the app is being used by the user. According to the Cheetah Cleanup Master's statistics, about 20% of the commonly used apps, even when they're not running, start networking in the background, mainly by submitting products and user information, obtaining advertising information, and querying for upgrades.
Secondary Services (secondary Server)--such as certain enterprise suites, mailbox contacts, touch interfaces, and so on--many of these processes come with the system, some users use them, but some users may not use or already have alternative applications, So the cleanup logic of the Cheetah Cleanup Master is based on user behavior and authorization (divided into two categories: proposed cleanup and deep cleanup);
content Provider-This part of the process does not have a program entity, just provides content for other applications, such as Calendar supply nodes, mail supply nodes, etc., in addition to memory resources, it also occupies the network, So it will also cause an unnecessary burden on Android phones;
null process (empty)--If the application is exited by a return key, most applications will leave an empty process in the memory of the Android phone, which has no data to run, but records the app's historical information with little or no value. This part of the process has a high priority for the content being killed.
In addition to excessive memory consumption, Android phones are also prone to accumulate large amounts of redundant data in storage, including pre-installed applications that cannot be uninstalled, remnants of files after uninstallation, and caches generated during the use of the app, since Android itself does not provide management tools. Even after you connect your phone to a computer that is like a Windows tree-like folder, it is difficult for users to independently determine which folders can be deleted, which folders are prerequisites, and, eventually, the size of the mobile phone is becoming narrower.
"Mobile phone tuning" problem, may also bring back the burden of user operation increased, its psychological pressure is more than behavioral pressure, playing mobile phone also do not forget the use of go out, this and the iphone "special" operating habits, but also Android phone always like a semi-finished or engineering machine reasons.
Why do Android phones always use more slowly?