Android OS Flashcards

1
Q

What is Android?

A

Android is an open-source, Linux based software stack created for a wide array of mobile devices.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is the purpose of the Linux kernel in the Android operating system?

A

It is the backbone of the operating system, taking care of hardware tasks using drivers, input/output, and security, power and memory management.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is the purpose of the Hardware Abstraction Layer in the Android operating system?

A

The HAL exposes device hardware capabilities to the Java API framework, so that code written by developers can interact with parts of the system.

It takes data from the drivers and abstracts them to an extent that the Java API can understand it.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is the purpose of the Android Runtime in the Android operating system?

A

The ART is a runtime environment - a place for code to run - used by the Android OS.

It contains all of the core Java libraries like java and javax, alongside app lifecycle classes like android, internet capabilities like org and unit testing like junit.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the purpose of the Java API framework in the Android operating system?

A

The Java API framework enables the reuse of system components and services, with the same access to system components as Android itself has to its own built-in applications.

This includes Views, ContentProviders, Adapters, the R file, memory management, notification management and so on.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the difference between ART and the Dalvik runtimes?

A

Dalvik was used before Android 5.0, and would run as one monolithic runtime used by all apps.

This was discontinued after Dalvik, in exchange for the ART, which runs a separate environment for all applications and processes, allowing for better security and other benefits related to modularity.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the purpose of the application layer in the Android operating system?

A

The application layer is the absolute highest level possible for the Android system - it is the apps themselves with which users interact with.

This is the layer we are interacting with when using the phone.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is the purpose of the Android manifest file in the root of all applications?

A

It is a file at the root of an application’s directory that contains essential information pertaining to the application it is written for. Every app must have exactly one of these.

This includes the package name, main activity, any components like activities and adapters, and any request permissions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Which layer is the Java API framework directly above in the architecture ‘stack’?

A

Native C/C++ libraries and the Android Runtime. It is not above the HAL because the runtime and external libraries needs to be instantiated and obtained before Java code can be run.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly