Difference
between iOS and Android
Android vs iOS |
The iOS system is developed and
designed based on Apple's self-developed processor and Android processor
manufacturers, such as Huawei, Samsung, etc.
Comprehensive comparison
- It is compared from
three aspects of hardware, software, and users.
1 Hardware
- Mainly from the point of
view of the processor
iOS
- The iOS system is
developed and designed based on Apple's self-developed processor A series;
- Apple's software and
hardware are highly unified and completely closed-loop, which avoids the
consideration of compatibility issues, and the co-design of software and
hardware systems can be better carried out, making the iOS system more
suitable for A-series processors, and A-series processors are also more
efficient Suitable for the iOS system.
Android
- There are many Android
processor manufacturers, such as Qualcomm, Huawei, Samsung, etc. are more
mainstream.
- Samsung and Huawei
chips, like Apple, use self-developed chips for their use, while other
domestic mobile phone manufacturers do not have the technical capabilities
of self-developed chips. They need to purchase and then design and develop
the corresponding operating system, which is limited by the core
technology of the processor.
- In the process of design
and production of processors, it is difficult to truly achieve co-design
and development of software and hardware, and it is necessary to take into
account different manufacturers; at the same time, the design and
development of operating systems are carried out in the case of existing
processors, which cannot be redesigned. of.
2 software
- It is mainly compared
from the perspectives of the framework, operating mechanism, background
mechanism, instruction priority, and development.
Frame
iOS system framework:
- The iOS system is a
mobile operating system developed by Apple. The full name is the iPhone
operating system.
- iPhone OS is
derived from Mac OS and is a Unix-like operating system.
- The iOS system
acts as a bridge between software applications and device hardware. The
application first communicates with the interface of the operating system,
and after receiving the information, the system interacts with the
underlying hardware to complete the tasks to be completed by the program.
- The iOS operating system
architecture is divided into four layers, from bottom to top: Core OS
operating system layer, Core Services core service layer, Media media
layer, and Cocoa Touch touch layer.
- Core OS operating system
layer and Core Services core service layer: the underlying interface of
the iOS system.
- Core OS operating system
layer: Contains services such as battery management and file system.
- Core Services core
service layer: includes network requests, database access, browser, file
access, etc.
- Media layer: Provides
support for various media files for applications, drawing of graphs,
playback of multimedia, animation, and other special effects.
- Cocoa Touch layer:
Located at the top level, it provides various basic frameworks used by
programs for the entire system. The main function of this layer is to
handle the interaction on iOS devices, mostly interface-related frameworks.
Android
system framework
- The Android system
platform is developed by Google, the system kernel itself passes through
the Linux kernel, and the operating system is embedded.
- The Android platform is
designed with the idea of ​​a layered architecture. There are four
layers from top to bottom, namely the application layer (handover with
users), the application framework layer (the logical operation of the
system), the system library (supporting the operation of the system),
Android When running, the Linux kernel.
- The applications
developed based on Android are designed and implemented by the Java
language, and the operation of each program represents the realization of
a process in the system. This mode greatly improves the performance of the
Android operating system. (Dalvik virtual machine)
- Linux kernel layer: The
basis for realizing the integration of software and hardware on the
Android platform, it shields hardware resources and provides various
public functions to provide corresponding services for the upper layer,
which helps to improve efficiency.
- Android library layer:
Dalvik virtual machine occupies very few resources at runtime, so that the
system can run multiple VMs at the same time, and has better performance.
The register technology of the platform is independently developed by
Google. At the same time, to facilitate the processing of various
functions, the platform Provides many methods to call. This layer plays a
service support role for the system through some important library files.
By centralizing and unifying the service files to the bottom layer of the
system, the system can have stronger compatibility and work with different
hardware, the most typical of which is NDK.
- Application architecture
layer: First of all, you need to obtain development permissions, and focus
on the framework. The use of the framework can realize component reuse,
reduce code development, and improve development efficiency.
- Application layer: the
top layer of the system, directly facing the system users, including a
large number of applications, and using the Dalvik virtual machine at the bottom
of the system to run.
Android vs iOS |
Operating mechanism
·
iOS: sandbox operation
mechanism
o For security reasons, iOS application
interaction with the file system is limited to the application sandbox
directory.
o During the installation of a new app, the
installer creates several container directories for the apps in the sandbox
directory.
o Each container directory has a specific
role: the bundled container directory holds the application's bundles; the data
container directory holds both application and user data; the data container
directory is further divided into subdirectories that applications can use to
sort and organize their data; The app can also request access to other
container directories at runtime.
o It means: without user authorization, iOS
applications can only read and write files in their sandbox, cannot access
other sandboxes, and cannot communicate with each other. When accessing other
sandbox content, a request needs to be issued, and through permission
detection, the access can only be completed if the conditions are met.
·
Android: virtual machine
operating mechanism
o Android uses a virtual machine operating
mechanism. Dalvik is a Java virtual machine developed by Google and designed
for the Android platform. It is a virtual machine designed for Linux and
embedded operating systems. It is mainly responsible for object life cycle
management, stack management, thread management Management, security and
exception management, garbage collection, and more.
o Dalvik is responsible for process
isolation and thread management. Each Android application corresponds to an
independent Dalvik virtual machine instance at the bottom layer, and its code
is executed under the interpretation of the virtual machine. Some Android
application threads correspond to a Linux thread, so the virtual machine can It
is more dependent on the thread scheduling and management mechanism of the
operating system.
Background mechanism
·
iOS system: pseudo background
o iOS4: iOS starts to have a multitasking
function. After pressing the home button, the program goes to the background
and is stored in the memory in the form of a tombstone, and the user can
quickly restore it. The apps listed in the iOS multitasking interface are only
recently used, not programs that are running in the background. Only special
apps can run in the background, like audio playback, location services, etc.
o iOS7: marks the transition from pseudo
background to smart background. After the phone locks the screen, the
background application is quickly suspended, and after waking up again, the
application continues to run.
·
Android system: true
background
o Similar to the Windows operating system,
the application is kept in RAM, that is, all Android software can achieve
background or even multi-window mode when the hardware conditions permit.
o Android applications all have independent
virtual machines, that is, each time an application is opened, an independent
virtual machine will be opened correspondingly. Each application has its
process and memory space but requires more memory.
Android vs iOS |
Command permission priority
·
iOS system UI instructions
o The UI command in the iOS system has the
highest authority, and the UI rendering adopts real-time priority
o The response sequence of the iOS system
is (from top to bottom) the touch layer, the media layer, the core service
layer, and the operating system layer.
o When the user touches the screen, the iOS
system activates the screen first, followed by media, services, and
architecture.
·
Android system data
processing instructions
o Priority response level: (from top to
bottom) application layer, architecture layer, system library, kernel
architecture.
o Among them, the highest authority
instruction is the data processing instruction, and its UI rendering follows
the normal priority of the main thread of the traditional computer. After
touching the screen, the Android system will first activate the application,
the framework, then the screen, and finally the core architecture.
Develop
·
iOSï¼Å¡objective-c
o The iOS programming language is
objective-c, which has the characteristics of strong specificity and high efficiency;
o The iOS system is well optimized, and the
code compiled by GCC is optimized to the extreme by Apple's conversion to the
iOS architecture, without the need for a virtual machine, and the execution
efficiency is high.
o The closed nature of iOS products and the
stable and single underlying hardware enable its applications to have extremely
high hardware utilization, ensuring the perfect combination of application
development itself and hardware products.
·
Androidï¼Å¡ java
o Android's programming language is java,
which is versatile but inefficient.
o The Android system requires a virtual
machine to run, which is inefficient.
o The Android ecological hardware changes
relatively frequently, the development cost is high, and the revenue is slow.
3 users
- Mainly from the system
application, price, security management, system update for comparison
System applications
- The number of
applications is one of the important reasons why users choose mobile phone
systems.
- iOSï¼Å¡ APP storeï¼›
Androidï¼Å¡ Google Play。
- The number of iOS has
been high until the market share of Android has grown and the review has
been looser, and the number of Android apps has been rising.
- Regarding the comparison
of system applications, Android and iOS have certain advantages in terms
of quantity and quality and are in a state of healthy competition.
Price
- The iPhone is
undoubtedly the highest price of mobile phones in the season, and it also
limits the purchase and hopelessness of some customers.
- In terms of mobile phone prices, Android is more attractive to consumers.
Android vs iOS |
Safety management
- Android system: openness
and popularity, some viruses and malicious programs attack it. The update
problem of the Android system is also an aspect of most virus attacks. Due
to the low popularity of the latest version of the system, there are still
many users using lower versions of the system, and viruses will attack
from the vulnerabilities of these versions.
- iOS system: Many
security features are used in both hardware and software, using the secure
boot, touch ID, face ID, non-executive memory, encrypted key ring,
application security, two-factor authentication, and other functions to
better protect consumer safety.
- In comparison, iOS is
currently the safest mobile operating system.
System update
- At present, almost 50%
of iOS devices are running the latest version. Relatively speaking,
Android devices running the latest version account for a very small
proportion of the total, and users of the old system still account for the
majority.
- If the customer focuses
on system updates, then iOS is preferred
Note: The difference between the
IOS system and the Android system is described in detail from the technical
point of view and the use and operation.
- Apple treats users as
users, Android treats users as admins
An overview is different
Bottom layer
- Android is a free and
open-source operating system based on Linux, mainly used in mobile
devices, such as smartphones and tablets, issued by Google.
- iOS is a mobile
operating system developed by Apple for Apple devices.
Fluency
- The Android system
adopts the operating mechanism of a virtual machine, which consumes more
system resources and becomes stuck after a period of use;
- The ios system hardly
appears stuck, and the desktop sliding sensitivity of the Android system
is not as good as that of the ios system.
Cost-effective
- Apple has a patent on
the ios system. If other mobile phone manufacturers want to use the ios
system, they will charge a fee, but Apple will not give its system to
others.
- The Android system is a
free and open-source system provided by Google, and Android has opened
more application interface APIs than iOS. It is natural to use Android to
implement many functions that cannot be done on iOS without tossing.
Because of the source code of Android Open, natural playability is also
higher than iOS. From the perspective of cost performance, the Android
system will explode the ios system.
Power saving
- ios system is more
power-efficient.
- Android will take up
more resources to support the operation of the system, which will cause it
to consume more power.
Background executor
- The IOS system does not
need to clean the background at all. IOS unique task management mechanism.
When the application is not running in the foreground, except for the GPS
service, audio playback service, and VOIP service, other applications
(programs that support so-called background execution) are suspended by
the system after 10 minutes, technically, by Suspended means the same as
not executing, but the data resides in memory.
o The multitasking illusion of the IOS
system, such as QQ, looks like it is running in the background, but it is not.
You can receive a message prompting only the system push service, whether your
application is running or not, IOS will maintain this service in the background
to achieve fake multitasking, and all applications will share this service
channel.
- The background software
of the Android system is difficult to turn off because some software will
automatically start in various forms, occupying system resources.
System stability
- Although iOS is more
stable and less likely to crash, you can't remove the battery if it
crashes. After all, the iPhone is an all-in-one machine.
- Android is much better,
and the battery is removed directly after the crash. Of course, there are
also mobile phones with Android systems that are all-in-one. The editor
believes that: take care of your mobile phone, do not browse the web at
will, and do not download software at will, the mobile phone will not
crash.
System update
- Once the ios system is
updated, all Apple mobile devices equipped with its system can upgrade the
system in time.
- Although the Android
system has been updated to a new version of the system, ordinary users
cannot enjoy it because it cannot be automatically updated to the latest
version.
Safety
- The ios system is
relatively safe because Apple will develop and test for a long time in the
operation of adding functions to the ios system.
- The Android system
requires less "just run", shorter development and testing time,
and more loopholes. "Hackers" can completely control the phone
without the user's knowledge by simply sending a multimedia message.
Desktop interface
- The interface of the ios
system is relatively simple and classic.
- Android interface can be
set according to your preferences, more diverse.
No comments:
Post a Comment