What is Operating System Security
What is Operating System Security
Security refers to providing safety for computer system resources like software, CPU, memory,
disks, etc. It can protect against all threats, including viruses and unauthorized access. It can be
enforced by assuring the operating system's integrity, confidentiality, and availability. If an illegal
user runs a computer application, the computer or data stored may be seriously damaged.
It needs the protection of computer resources like the software, memory, processor, etc. Users
should take protective measures as a helper to multiprogramming OS so that multiple users may
safely use a common logical namespace like a directory or data. Protection may be achieved by
maintaining confidentiality, honesty and availability in the OS. It is critical to secure the device
from unauthorized access, viruses, worms, and other malware.
1. There may be security risks like unauthorized reading, writing, modification, or preventing
the system from working effectively for authorized users.
2. It helps to ensure data security, process security, and program security against unauthorized
user access or program access.
3. It is important to ensure no access rights' breaches, no viruses, no unauthorized access to the
existing data.
4. Its purpose is to ensure that only the systems' policies access programs, resources, and data.
Every program has distinct policies for using resources, and these policies may change over time.
Therefore, system security is not the responsibility of the system's designer, and the programmer
must also design the protection technique to protect their system against infiltration.
1. The network used for file transfers must be secure at all times. During the transfer, no alien
software should be able to harvest information from the network. It is referred to as network
sniffing, and it could be avoided by implementing encrypted data transfer routes. Moreover,
the OS should be capable of resisting forceful or even accidental violations.
2. Passwords are a good authentication method, but they are the most common and vulnerable.
It is very easy to crack passwords.
3. Security measures at various levels are put in place to prevent malpractices, like no one
being allowed on the premises or access to the systems.
4. The best authentication techniques include a username-password combination, eye retina
scan, fingerprint, or even user cards to access the system.
System Authentication:
One-time passwords, encrypted passwords, and cryptography are used to create a strong
password and a formidable authentication source.
1. One-time Password
It is a way that is unique at every login by the user. It is a combination of two passwords that allow
the user access. The system creates a random number, and the user supplies a matching one. An
algorithm generates a random number for the system and the user, and the output is matched using a
common function.
2. Encrypted Passwords
It is also a very effective technique of authenticating access. Encrypted data is passed via the
network, which transfers and checks passwords, allowing data to pass without interruption or
interception.
3. Cryptography
It's another way to ensure that unauthorized users can't access data transferred over a network. It
aids in the data secure transmission. It introduces the concept of a key to protecting the data. The
key is crucial in this situation. When a user sends data, he encodes it using a computer that has the
key, and the receiver must decode the data with the same key. As a result, even if the data is stolen
in the middle of the process, there's a good possibility the unauthorized user won't be able to access
it.
1. Near Field Communication (NFA): Most Android devices support NFC, which allows
electronic devices to interact across short distances easily. The main goal here is to create a
payment option that is simpler than carrying cash or credit cards, and while the market hasn't
exploded as many experts had predicted, there may be an alternative in the works, in the
form of Bluetooth Low Energy (BLE).
Architecture of Android OS
The android architecture contains a different number of components to support any android device
needs. Android software contains an open-source Linux Kernel with many C/C++ libraries exposed
through application framework services.
Among all the components, Linux Kernel provides the main operating system functions to
Smartphone and Dalvik Virtual Machine (DVM) to provide a platform for running an android
application. An android operating system is a stack of software components roughly divided into
five sections and four main layers, as shown in the below architecture diagram.
o Applications
o Application Framework
o Android Runtime
o Platform Libraries
o Linux Kernel
1. Applications: An application is the top layer of the android architecture. The pre-installed
applications like camera, gallery, home, contacts, etc., and third-party applications downloaded
from the play store like games, chat applications, etc., will be installed on this layer.
It runs within the Android run time with the help of the classes and services provided by the
application framework.
The Application Framework layer provides many higher-level services to applications in the form of
Java classes. Application developers are allowed to make use of these services in their applications.
The Android framework includes the following key services:
o Activity Manager: Controls all aspects of the application lifecycle and activity stack.
o Content Providers: Allows applications to publish and share data with other applications.
o Resource Manager: Provides access to non-code embedded resources such as strings, color
settings and user interface layouts.
o Notifications Manager: Allows applications to display alerts and notifications to the user.
o View System: An extensible set of views used to create application user interfaces.
3. Application runtime: Android Runtime environment contains components like core libraries and
the Dalvik virtual machine (DVM). It provides the base for the application framework and powers
our application with the help of the core libraries.
Like Java Virtual Machine (JVM), Dalvik Virtual Machine (DVM) is a register-based virtual
machine designed and optimized for Android to ensure that a device can run multiple instances
efficiently.
4. Platform libraries: The Platform Libraries include various C/C++ core libraries and Java-based
libraries such as Media, Graphics, Surface Manager, OpenGL, etc., to support Android
development.
o app: Provides access to the application model and is the cornerstone of all Android
applications.
o content: Facilitates content access, publishing and messaging between applications and
application components.
o database: Used to access data published by content providers and includes SQLite database,
management classes.
o text: Used to render and manipulate text on a device display.
o view: The fundamental building blocks of application user interfaces.
o widget: A rich collection of pre-built user interface components such as buttons, labels, list
views, layout managers, radio buttons etc.
o WebKit: A set of classes intended to allow web-browsing capabilities to be built into
applications.
o media: Media library provides support to play and record an audio and video format.
o surface manager: It is responsible for managing access to the display subsystem.
o SQLite: It provides database support, and FreeType provides font support.
o SSL: Secure Sockets Layer is a security technology to establish an encrypted link between a
web server and a web browser.
5. Linux Kernel: Linux Kernel is the heart of the android architecture. It manages all the available
drivers such as display, camera, Bluetooth, audio, memory, etc., required during the runtime. The
Linux Kernel will provide an abstraction layer between the device hardware and the other android
architecture components. It is responsible for the management of memory, power, devices etc.
o Android Advertisement pop-ups: Applications are openly accessible in the Google play
store. Yet, these applications begin demonstrating tons of advertisements on the notification
bar and over the application.
o Android require Gmail ID: You can't get to an Android gadget without your email ID or
password. Google ID is exceptionally valuable in opening Android phone bolts as well.
o Android Battery Drain: Android handset is considered a standout amongst the most battery
devouring operating systems. In the android operating system, many processes are running
out of sight, which brings about the draining of the battery. It is difficult to stop these
applications as the lion's share of them is system applications.
o Android Malware/Virus/Security: Android gadget is not viewed as protected when
contrasted with different applications. Hackers continue attempting to take your data. It is
anything but difficult to target any Android phone, and each day millions of attempts are
done on Android phones.