RAKSHIT Technical Seminar Report
RAKSHIT Technical Seminar Report
Parmeshwar 4RA21CS056
To Visvesvaraya Technological University during the academic year
2024- 2025 in the partial fulfilment for the subject
TECHNICAL SEMINAR
(VIII SEMESTER)
In
COMPUTER SCIENCE AND ENGINEERING
CERTIFICATE
Certified that the TECHNICAL SEMINAR entitled “FUTURE TRENDS IN SMART
GREEN IOV” is carried out by PARMESHWAR 4RA21CS056, a bonafide student of
RAJEEV INSTITUTE OF TECHNOLOGY, HASSAN in partial fulfilment for the subject
TECHNICAL SEMINAR in COMPUTER SCIENCE AND ENGINEERING of
Visvesvaraya Technological University, Belagavi during the year 2024- 2025. The Technical
Seminar report has been approved as it satisfies the academic requirements regarding the
Technical Seminar work prescribed for the said Degree.
th
I, PARMESHWAR bearing USN 4RA21CS056, student of 8 Sem B.E in Computer
Science and Engineering, Rajeev Institute of Technology, Hassan, hereby declare that the
Technical Seminar entitled "FUTURE TRENDS IN SMART GREEN IOV" has been carried
out by me under the supervision of Internal guide Mr. CHIRANJEEVI M R, Assistant
Professor, Computer Science and Engineering, Rajeev Institute of Technology, Hassan,
which has been submitted in partial fulfilment of the requirement for the award of the Degree
of Bachelor of Engineering in Computer Science and Engineering at Visvesvaraya
Technological University, Belagavi is an authentic record of my own work carried out by me
during the academic year 2024-2025.
PARMESHWAR
4RA21CS056
Place:
Date:
i
ACKNOWLEDGEMENT
The satisfaction and euphoria that accompany the success of any task would be
incomplete without the mention of the people who made it possible, whose constant
guidance and encouragement crowned our efforts with success.
We would like to express our sincere thanks to our principal Dr. Mahesh P K, Rajeev
Institute of Technology for his encouragement that motivated us for successful
completion of the Technical Seminar.
We would also like to thank all our staff of Computer Science and Engineering
department who have directly or indirectly helped us in the successful completion of
this technical seminar and, we would like to thank our parents.
PARMESHWAR
4RA21CS068
ii
ABSTRACT
The purpose of this article is to study the structure of the Android Operating System and view how the
operating system functions inside with its continuously adding new functions. Based on the Linux
kernel, Google developed an operating system for mobiles. They called it Android. The Android
operating system is primarily designed for smartphone devices which implement a touch screen input
interface. Not only that, it has also been developed for many devices such as smart watches (Android
Wear), tablet computers and cars (Android Auto). With a new version of Android OS is being released
every few months, the development of next Android takes place quickly. Android release many
numerous updates that improve the operating system. With each release comes with adding new
features and fixing bugs in older releases.
iii
TABLE OF CONTENTS
ACKNOWLEDGEMENT ii
ABSTRACT iii
TABLE OF CONTENTS iv
LIST OF FIGURES v
1. Introduction 1-3
1.1 Introduction 1
1.2 Problem Statement 2
1.3 Objectives 3
2. Literature Survey & System Analysis 4-5
2.1 Literature survey 4
2.2 System Analysis 5
3. System Architecture 6-13
3.1 Architecture 6
3.2 Version of Android 10
4. Application 14-16
4.1 Android Application
14
5. Advantage and Disadvantage 17
Conclusion 19
References 20
iv
LIST OF FIGURES
v
ANDROID OPERATING SYSTEM 2024-2025
Moreover, custom ROM developers (like LineageOS and Pixel Experience) have implemented
lightweight and bloatware-free versions of Android, offering better performance on low-end
devices. Their success in the developer community highlights the feasibility of optimizing the OS
without drastically affecting functionality. However, these ROMs often require technical
knowledge to install and may void warranties, making them inaccessible to the average user. This
gap creates an opportunity to develop a user-friendly, efficient, and plug-and-play optimization
solution.
Over the years, researchers, developers, and enthusiasts have studied the Android Operating
System extensively to address its performance and energy efficiency challenges. The diversity of
Android devices, particularly mid-range and budget models, introduces a wide range of
performance issues caused by limited processing power, lower RAM, and smaller batteries. The
literature highlights that while Android provides flexibility and features, these often come at the
cost of performance and battery longevity, especially when resource-heavy background services
are not well-optimized. service classes and expose their target 6G performance requirements. One
of the most significant research contributions in this area is Google's introduction of Doze Mode
and App Standby in Android 6.0 (Marshmallow), which were designed to reduce background
CPU and network activity when the device is unused. According to a technical paper presented at
the ACM Conference on Embedded Networked Sensor Systems, Doze Mode alone
contributed to a 30% improvement in battery life for devices in idle state. However, its
effectiveness is limited by OEM modifications and the variability behavior
In our analysis, we begin by monitoring CPU usage, memory footprint, and battery statistics
using tools like ADB, Systrace, Battery Historian, and Android Profiler. We will profile system
services, broadcast receivers, alarms, and wake locks to determine the top resource consumers.
Focus will be given to modifying power policies, limiting background process limits, and
removing bloatware.
The system will then be modified in a test environment using either a rooted Android device or an
emulator with elevated privileges. Optimization will involve adjusting system parameters (e.g.,
minfree for memory management), tweaking power-saving thresholds, and reducing background
sync intervals. Benchmarking will follow using tools like Geekbench, AnTuTu, and GSam
Battery Monitor to compare the stock and optimized systems.
The Android Operating System is a layered architecture built on top of the Linux kernel. Its main
components include the Linux Kernel, Hardware Abstraction Layer (HAL), native C/C++
libraries, Android Runtime (ART), the Application Framework, and System/User Applications.
Each of these layers contributes to the performance, power consumption, and responsiveness of a
device. Analyzing the flow of resource usage across these layers helps us identify potential
bottlenecks and optimization points, especially for mid-range devices that operate with limited
hardware capabilities.
CHAPTER 3
INTRODUCTION
Based on the Linux kernel, Google developed an operating system for mobiles. They called it
Android. The Android operating system is primarily designed for smartphone devices which
implement a touch screen input interface. Not only that, it has also been developed for many
devices such as smart watches (Android Wear), tablet computers and cars (Android Auto).
Android is known for its OS touch inputs that correspond to real-world actions such as swiping,
tapping, pinching and reverse pinching
Among many mobile operating systems, Android is the most popular operating system, which is
competing with IOS for Apple devices and Windows Phones. A developer survey conducted in
2017 found that 64.8% of mobile developers use Android as their preferred platform. Since the
most of Android devices are designed with a combination of open source software and proprietary
software developed by Google, Android source code is also released by Google under the open
source licenses. Because of open source nature of Android has enabled many to develop and
distribute developer own modified version of the OS through the Android Open Source Project
(ASOP). CyanogenMod is the most famous and widely used community firmware which is
developed by Steve Kondik, aka Cyanogen, in 2009. Unlike any other operating systems, Android
is developed using JAVA and it is run on virtual machines. The Android operating system
features the Dalvik Runtime Machine and Android Runtime (ART) in newer versions which
executes its own bytecode. Dalvik is the core component and all Android user applications and
application framework are written in JAVA and executed in Dalvik Runtime Machine. With a
new version of Android OS is being released every few months, the development of next Android
takes place quickly. Android release many numerous updates that improve the operating system.
With each release comes with adding new features and fixing bugs in older releases. Every major
release is released under the name of a dessert or sugary treat. The evaluation of Android OS
began in 2008, named Cup Cake and the versions to follow are Donut, Éclair, Froyo,
Gingerbread, Honeycomb, Ice Cream Sandwich, Jelly Bean, KitKat, Lollipop, Marshmallow,
Nougat and the latest, Oreo. And the future version of Android will be Android.
Today, Android Operating System is powered in billions of mobile devices in more than 180
countries across the world. According to the new research done, many million mobile devices
that are powered by Android are activated every day.It is a Linux based mobile operating system
that is programmed in C and C++ with Java User-interface. Moreover, Android is an open source
platform that allows mobile app developers to create Android based apps without even paying
license fees.
CHAPTER 1
1.1 Introduction
A common issue observed in such devices is laggy performance due to heavy background
processes, inefficient memory management, and power-hungry services running constantly.
Despite improvements introduced in recent Android versions (like Doze Mode, App Standby, and
Adaptive Battery), these optimizations may not fully benefit devices with lower specifications.
Users frequently report sluggish multitasking, rapid battery drain, and delays in app response
time, which impacts the overall user experience
The primary challenge is to identify the components of the Android OS that contribute most to
resource consumption and find ways to reduce their impact without compromising essential
functionality. This involves analyzing system services, background processes, and the behavior of
frequently used applications. Through careful monitoring, benchmarking, and tweaking of the
Android framework, it’s possible to enhance performance and extend battery life, especially on
budget-friendlydevices.
1.3 Objectives
To analyze resource consumption in Android OS: Identify and study the key components,
system services, and background processes in Android that consume significant CPU, RAM,
and battery, especially on mid-range and low-end devices.
To optimize background operations and system services: Reduce unnecessary background
activity by modifying or disabling non-essential services, optimizing app standby behavior,
and improving the efficiency of scheduled tasks.
To enhance battery management mechanisms: Improve existing power-saving features such as
Doze Mode and App Standby by fine-tuning their thresholds and triggers, resulting in
extended battery life without user intervention.
To develop a lightweight and efficient Android OS build or module: Create a custom Android
build or a plug-and-play module that integrates these optimizations, focusing on performance,
minimal resource usage, and high compatibility with essential apps.
To evaluate and benchmark the optimized system: Test the improved Android version on
various mid-range devices using metrics like boot time, app launch speed, memory usage, and
battery drain rate, comparing it with the stock Android experience.
To ensure user experience is not compromised: Maintain core functionalities and app
compatibility while optimizing performance, ensuring a smooth and stable user experience.
Global Standardization: Foster global collaboration and standardization efforts to ensure
interoperability, consistency, and widespread adoption of 6G technology worldwide.
CHAPTER 2
3.1 Architecture
SYSTEM ARCHITECTURE
In this section, we illustrates the layered architecture of the Android Operating System,
showing its key components from the Linux Kernel up to the Applications layer.
In This layer includes a range of essential hardware device drivers, such as the display driver,
Bluetooth driver, Wi-Fi driver, USB driver, camera driver, and audio drivers. These drivers
enable smooth and controlled communication between the Android OS and physical hardware
components. For example, when a user takes a photo using the camera app, the request is
processed through the Android application framework, passed to the kernel, and finally handled
by the camera driver to activate the hardware and capture the image.
The Linux kernel is also responsible for process management, which includes scheduling CPU
time among different processes and ensuring multitasking functionality. It handles memory
management by providing virtual memory support, allocating memory to active processes, and
freeing unused memory to optimize performance.
Additionally, the kernel manages networking functions by handling data transmission over
mobile networks (3G, 4G, 5G), Wi-Fi, and Bluetooth connections. It ensures that network
communication remains secure and stable across different use cases.
Another critical function of the Linux kernel is power management. It monitors system activity
and implements strategies to conserve battery power, such as suspending idle processes, dimming
the screen, and putting the device into deep sleep mode when not in use. Android’s power
management capabilities are largely dependent on kernel-level components like wakelocks,
which control whether the CPU can sleep or must remain active for background tasks.
Android also uses a modified Binder (IPC) driver, integrated into the Linux kernel, to facilitate
inter-process communication. This allows system services and apps to communicate with one
another efficiently and securely. Binder is a unique addition by Google that distinguishes
Android's kernel from the mainline Linux kernel.
Overall, the Linux kernel in Android is not only a traditional OS kernel but also a bridge between
the software layers and the physical device. It provides the stability, security, multitasking, and
hardware abstraction necessary to run a mobile operating system efficiently. The modifications
made by Google to the Linux kernel allow Android to meet the real-time needs of modern
smartphones, tablets, and smart devices.
Dept. of CSE, RIT, Page 7
Hassan
ANDROID OPERATING SYSTEM 2024-2025
3.1.2 Native Libraries Layer:
On the top of the Linux Kernel layer is Android's native libraries. This layer enables the
device to handle different types of data. All these libraries are written in C or C++ language.
The native libraries serve a variety of purposes, from managing graphics rendering and database
access to handling audio, video, and image processing. One of the core libraries is the Surface
Manager, which is responsible for rendering and compositing the UI and display content from
different applications.
Another vital library is SQLite, which is a lightweight and efficient relational database engine
embedded into Android for managing local databases in applications. The Media Framework
library provides robust support for playing and recording audio and video formats, enabling
multimedia features across Android devices.
OpenGL|ES, a cross-platform graphics API, is used for rendering 2D and 3D graphics, making it
essential for gaming and visual applications. Libraries such as WebKit are used to power the
browser engine for rendering web pages, and FreeType is responsible for font rendering.
Other important libraries include SSL for secure data communication, libc (a custom
implementation of the standard C library), and SGL (Scalable Graphics Library) for lightweight
graphic rendering. These libraries together form the backbone of the Android operating
environment and are critical for ensuring high performance, rich media capabilities, and device
compatibility.
These libraries are called through java interface. Some important native libraries are:
1) Surface Manager: It is used to manage display of device. Surface Manager used for
composing windows on the screen.
2) SQLite: SQLite is the database used in android for data storage. It is relational database
and available to all applications.
3) WebKit: It is the browser engine used to display HTML content.
4) Media framework: Media framework provides playbacks and recording of various audio,
video and picture formats. Free Type: Bitmap and Font Rendering
5) OpenGL | ES: Used to render 2D or 3D graphics content to the screen.
6) Libc: It contains System related C libraries.
The Dalvik Virtual Machine is a custom implementation of a Java Virtual Machine (JVM) that
executes Android applications written in Java. It is different from traditional JVMs in that it is
register-based, whereas standard JVMs are stack-based. This architecture allows Dalvik to be
more efficient in terms of memory usage and performance, which is crucial for mobile
environments where resources are constrained.
One of the most important features of the Dalvik VM is its ability to run each Android application in
its own separate process. Each application is given its own instance of the virtual machine, which
provides strong security, process isolation, and fault tolerance. If one app crashes, it doesn't
affect other running apps or the system as a whole.
Dalvik also supports multiple instances of virtual machines running at the same time. This design
helps Android achieve true multitasking, where different apps and background services can
operate concurrently without interfering with one another. It also includes built-in memory
management, garbage collection, and threading support, ensuring efficient use of system
resources.
2) Content Providers: It is used to manage the data sharing between applications, manages
how to access data from other applications.
4) Location Manager: It is used for Location management, using GPS or cell tower.
Every Android device comes with a set of pre-installed applications that serve essential functions.
These include the SMS client app for sending and receiving text messages, the Phone/Dialer app
for making and managing calls, the Contacts app for storing and managing user contacts, and the
Web Browser app for browsing the internet. Other common pre-installed apps might include the
Camera, Gallery, Email, Calendar, and Settings.
One of the key strengths of Android is its openness and flexibility. Developers can create their own
custom applications using the Android SDK and can replace or enhance existing system
applications. For example, a developer can build a new dialer app with more advanced features
and set it as the default app, replacing the stock dialer.
Applications in this layer are built on top of the Application Framework, which provides the
necessary APIs and tools to interact with the underlying system components. Each application
runs in its own sandboxed environment, ensuring security and stability across the system.
The Applications Layer supports a wide range of app categories, including communication,
entertainment, productivity, gaming, and utilities. With millions of apps available on the Google
Play Store, this layer represents the vast and dynamic ecosystem that makes Android one of the.
3.2.1 Cupcake:
On April 27, 2009, the Android 1.5 update was released based on Linux kernel 2.6.27. This was
the first release to officially use a codename based on a dessert item ("Cupcake"), a theme which
would be used for all releases henceforth. The update included several new features and UI
amendments:-
Support for third-party virtual keyboards with text prediction and user dictionary for
custom words
Support for Widgets – miniature application views that can be embedded in other
applications (such as the Home screen) and receive periodic updates
Video recording and playback in MPEG-4 and 3GP formats
Auto-pairing and stereo support for Bluetooth (A2DP and AVRCP profiles)
3.2.2 Donut:
On September 15, 2009, the Android 1.6 SDK – dubbed Donut – was released, based on Linux
kernel 2.6.29. Included in the update were numerous new features:-
Voice and text entry search enhanced to include bookmark history, contacts, and the web
Ability for developers to include their content in search results
Multi-lingual speech synthesis engine to allow any Android application to "speak" a
string of text
Easier searching and ability to view app screenshots in Android Market
Multi-lingual speech synthesis engine to allow any Android application to "speak" a
string of text
3.2.3 Eclair:
On October 26, 2009, the Android 2.0 SDK was released, based on Linux kernel 2.6.29 and
codenamed Eclair. Changes include the ones listed below:-
Expanded Account sync, allowing users to add multiple accounts to a device for
synchronization of email and contacts
Microsoft Exchange email support, with combined inbox to browse email from
multiple accounts in one page
Bluetooth 2.1 support
Ability to tap a Contacts photo and select to call, SMS, or email the person
Addition of live wallpapers, allowing the animation of home-screen background images
to show movement.
3.2.4 Froyo:
On May 20, 2010, the SDK for Android 2.2 (Froyo,short for frozen yogurt) was released, based on
Linux kernel 2.6.32. Changes include the ones listed below:
Speed, memory, and performance optimizations
Additional application speed improvements, implemented through JIT compilation
Integration of Chrome's V8 JavaScript engine into the Browser application
Support for the Android Cloud to Device Messaging (C2DM) service, enabling push
notifications
Improved Microsoft Exchange support, including security policies, auto-discovery,
GAL look-up, calendar synchronization and remote wipe
3.2.5 (Q) Android 10:
Release Date: September 3, 2019, Android 10 was the tenth major release and the 17th version of the
Android operating system. It was the first version to drop the traditional dessert naming
convention, instead opting for a more straightforward numerical naming scheme. Android 10 was
based on Linux kernel 4.14 and introduced a variety of modern features and improvements aimed
at enhancing user privacy, security, and device flexibility.
Enhanced Privacy Controls, including better control over location sharing and access
permissions for apps.
System-wide Dark Theme, offering a consistent dark mode across the OS and
supported applications.
Gesture Navigation, replacing traditional navigation buttons with swipe gestures for a
more immersive, edge-to-edge experience.
CHAPTER 4
APPLICATION
4.1 Android
The Android Operating System, being open-source and highly customizable, has evolved into one
of the most widely adopted platforms across the world. Initially developed for smartphones,
Android's versatility has allowed it to expand far beyond just mobile phones. It now powers a
wide range of smart devices including tablets, smart TVs, wearables, home automation systems,
in-vehicle infotainment systems, and even industrial machines. The open-source nature of
Android encourages innovation by allowing developers and manufacturers to modify the
operating system to suit their specific needs. This flexibility has made Android a preferred choice
for both personal and commercialused:
5.1 Advantages
Supports 2D, 3D graphics: It supports various platforms like 2D and 3D. Earlier we used to
watch movies and play games in almost in 2D, but nowadays various applications are using
3D format. To provide different graphics in videos, games OS should support 3D format.
Android supports 2D And 3D format to provide a better advantage in videos and in games 6G
technology provide real online gaming experience and reduce lag while gaming.
Supports Multiple Languages: Android supports different languages. We can say all famous
languages about more than 100. By using this feature it is easy to adopt to different
languages. Earlier in the feature phones English is to be the only language in the mobile
devicesIt can increase availability of social network.
Java Support: The Java supporting feature enables developers to enhance more features. As it
supports Java, operating can be developed6G technology provides intelligent batteries and
improve storage capacity.
Additional Hardware Support: Any hardware can be easily connected with the Android based
devices easily. We can make a device to connect internally to get more features.
Video Calling: Faster data connection enables to do video call. We can take advantage of
bandwidth and new generation networks using Android.
Open Source Framework: It makes users to make their own applications and to make changes
required for them. Enthusiasts can make Android more powerful and useful by developing
themselves. As it is an open source operating system, we can use it easily and without cost in
the equipments.
Uses of Tools are Very Simple: It makes use of a single button to do more than assigned
work. For example volume control button can be made to click a photo by changing simple
algorithm in the android.
Availability of Apps: Anyone can make use lot of free apps in the app store and from other
android stores. It gives freedom to install from third party users.
Additional Hardware Support: Any hardware can be easily connected with the Android based
devices easily. We can make a device to connect internally to get more features.
CONCLUSION
As Mobile software development has evolved over time. From above discussion it is clear that
Android Operating System has emerged as a new mobile development platform. Android was
designed to empower the developer to write innovative applications and their own source code.
The platform is open source, with no upfront fees, and developers enjoy many benefits over other
competing platforms. We see the Android architecture which is most important to develop
applications in different sectors of our life. We see that Android is continuously growing and
fastest acceptable platform. The time finally arrived when our Android OS would get a quick
makeover and offer us with either some more simple or extravagant changes. Android is a truly
open, free development platform based on Linux and open source and many application
development tools are freely available on the internet.
Designed with developers in mind, Android allows users to write innovative applications using their
own source code. Its open-source nature removes restrictions, encouraging creativity and custom
solutions tailored for various industries. Developers can easily access the tools they need without
paying any upfront fees. Android's architecture is robust and modular, making it suitable for
application development in diverse sectors such as healthcare, education, gaming, entertainment,
and finance. The support for Java, Kotlin, and other languages adds flexibility for developers.
With constant updates and improvements, Android is continuously growing and gaining
acceptance at a rapid pace. The OS is now mature enough to support advanced technologies like
AI, IoT, and 6G integration. It also provides rich APIs, an extensive app ecosystem, and hardware
compatibility.
REFERENCES
1. ―Editorial: Mobile and the 2017 Developer Survey Results,‖ SitePoint, 29-Mar-2017. .F.
Tareq et al., ―A Speculative Study on 6G,‖ 2019, unpublished
2. ―Android - History,‖ Android. [Online]. Available: https://www.android.com/history/.
[Accessed: 29-Apr-2018]Architecture, and Key Technologies,‖ IEEE Vehicular Technology
Magazine, 1–1, 2019.
3. ―Android P: Top 6 things you need to know!,‖ Android Central, 07-Mar-2018. [Online].
Available: https://www.androidcentral.com/android-p. [Accessed: 29-Apr-2018].Systems:
Applications, Trends, Technologies, and Open Research Problems,‖ arXiv: 1902.10265, 2019
4. ―Android Memory Management - in detail for all those questions regarding task killing,‖
XDA Developers. [Online]. Available:
https://forum.xdadevelopers.com/showthread.php?t=904023. [Accessed: 07-May-2018].