1
© Peter Späth 2018
P. Späth,
Pro Android with Kotlin
,
https://doi.org/10.1007/978-1-4842-3820-2_1
Chapter
1
System
The Android OS was born as the child of the Android Inc. company in 2003 and was later
acquired by Google LLC in 2005. The first device running
Android came on the market
in 2008. Since then it has had numerous updates, with the latest version number at the
beginning of 2018 reading 8.1.
Ever since its first build, the market share of the Android OS has been constantly increasing,
and by 2018 it is said to be greater than 80 percent. Even though the numbers vary with the
sources you use, the success of the Android OS is surely undeniable. This victory partly has
its roots in Google LLC being a clever player in the
worldwide smartphone market, but it also
comes from the Android OS carefully being tailored to match the needs of smartphones and
other handheld or handheld-like devices.
The majority of computer developers formerly or still working in the PC environment
would do a bad job utterly disregarding handheld device development, and this
book’s goal is to help you as a developer understand the Android OS and master the
development of its programs. The book also concentrates on
using Kotlin as a language
to achieve development demands, but first we will be looking at the Android OS and
auxiliary development-related systems to give you an idea about the inner functioning of
Android.
The Android Operating System
Android is based on a specially tailored Linux kernel. This kernel provides all the low-level
drivers needed to address the hardware, the
program execution environment, and low-level
communication channels.
On top of the kernel you will find the
Android Runtime
(ART) and a couple of low-level
libraries written in C. The latter serve as a glue between application-related libraries and the
kernel. The Android Runtime is the execution engine where Android programs run.
You as a developer hardly ever need to know about the details of how these low-level
libraries and the Android Runtime do their work, but you will
be using them for basic
programming tasks such as addressing the audio subsystem or databases.