Flutter is a mobile app SDK for building high-performance, high-fidelity, apps for iOS and Android, from a single codebase.
The goal is to enable developers to deliver high-performance apps that feel natural on different platforms. We embrace differences in scrolling behaviors, typography, icons, and more.
Here I'm presenting the ppt of Android App Development. Learn android app development is an efficient way. The ppt is totally free for you.
VISIT: https://www.androidflap.com/
Our meet-up will be focused on the basics of Flutter and introducing Flutter to existing mobile/web developers and curious developers on this exciting technology that is shaping the way mobile development will happen in the future.
Talks:
* Speaker: Arif Amirani (CTO MetroGuild Inc, Ex Directi/Veritas)
* Duration: 45 mins
* Agenda:
** Introduction to Flutter
** Comparison to Flutter/React Native/Native
** (Intro) Life Cycle of Widgets
** (Intro) State management
** Build a simple app using Flutter App in 15 mins
Flutter is a mobile app SDK for building high-performance, high-fidelity, apps for iOS and Android, from a single codebase.
The goal is to enable developers to deliver high-performance apps that feel natural on different platforms. We embrace differences in scrolling behaviors, typography, icons, and more.
Here I'm presenting the ppt of Android App Development. Learn android app development is an efficient way. The ppt is totally free for you.
VISIT: https://www.androidflap.com/
Our meet-up will be focused on the basics of Flutter and introducing Flutter to existing mobile/web developers and curious developers on this exciting technology that is shaping the way mobile development will happen in the future.
Talks:
* Speaker: Arif Amirani (CTO MetroGuild Inc, Ex Directi/Veritas)
* Duration: 45 mins
* Agenda:
** Introduction to Flutter
** Comparison to Flutter/React Native/Native
** (Intro) Life Cycle of Widgets
** (Intro) State management
** Build a simple app using Flutter App in 15 mins
While no more flights these days, I'd take you to a virtual and quick flight with Flutter to know what is Flutter, what is the language Flutter uses to write apps, what is best features in Flutter, how it increases your productivity and how it can take your app development process to the next level.
Flutter overview - advantages & disadvantages for businessBartosz Kosarzycki
After half a year experience with Fluttter, two internal projects and one commercial one, we'd like to share our view on what FLUTTER as a framework gives developers and businesses alike.
Flutter vs react native head to toe comparison [2021 edition]Katy Slemon
Flutter vs React Native 2021. Wondering which one to choose for cross-platform mobile app development? Let’s find out best fit for cross-platform application.
Customizing AOSP For Different Embedded Devices And Integration at Applicatio...ijafrc
Android is a software stack that includes operating system, middle ware, applications for the development of devices. Android has evolved greatly and user experience in addition to consumer level efficiency along with integration of android powered devices also expanded. Because of its core aspects like open source nature and architectural modal it is becoming more innovative operating system. Android is being integrated and ported to various embedded devices this includes enterprise desktop IP phones, cameras, modem, sensors, and set-up boxes and automotive. One major advantage of using android framework beyond the mobile devices is the android applications can talk to the functionality of all these devices powered by android and developers need not to write several applications for different embedded systems. This paper looks at the challenges in android migration to the different embedded platforms and porting issues. Here we presented description of preparing and building AOSP in local environment and implementation with Programming for integrating user applications in android build system permanently.
Hey, Friends...
This PPT Presentation is all about History, Architecture, Versions, Advantages & Disadvantages of Android over apple ios. Students can use this PPT Presentation for their Education Purpose to give Presentation.
Flutter Festival is the largest fest for exploring the most popular cross-platform framework made by Google. Flutter Festival will give insights into the domain of Flutter in deep and we will learn about various things within flutter. We will start with Dart the programming language behind this amazing framework and move to create a robust app on Flutter till the end of this campaign.
While no more flights these days, I'd take you to a virtual and quick flight with Flutter to know what is Flutter, what is the language Flutter uses to write apps, what is best features in Flutter, how it increases your productivity and how it can take your app development process to the next level.
Flutter overview - advantages & disadvantages for businessBartosz Kosarzycki
After half a year experience with Fluttter, two internal projects and one commercial one, we'd like to share our view on what FLUTTER as a framework gives developers and businesses alike.
Flutter vs react native head to toe comparison [2021 edition]Katy Slemon
Flutter vs React Native 2021. Wondering which one to choose for cross-platform mobile app development? Let’s find out best fit for cross-platform application.
Customizing AOSP For Different Embedded Devices And Integration at Applicatio...ijafrc
Android is a software stack that includes operating system, middle ware, applications for the development of devices. Android has evolved greatly and user experience in addition to consumer level efficiency along with integration of android powered devices also expanded. Because of its core aspects like open source nature and architectural modal it is becoming more innovative operating system. Android is being integrated and ported to various embedded devices this includes enterprise desktop IP phones, cameras, modem, sensors, and set-up boxes and automotive. One major advantage of using android framework beyond the mobile devices is the android applications can talk to the functionality of all these devices powered by android and developers need not to write several applications for different embedded systems. This paper looks at the challenges in android migration to the different embedded platforms and porting issues. Here we presented description of preparing and building AOSP in local environment and implementation with Programming for integrating user applications in android build system permanently.
Hey, Friends...
This PPT Presentation is all about History, Architecture, Versions, Advantages & Disadvantages of Android over apple ios. Students can use this PPT Presentation for their Education Purpose to give Presentation.
Flutter Festival is the largest fest for exploring the most popular cross-platform framework made by Google. Flutter Festival will give insights into the domain of Flutter in deep and we will learn about various things within flutter. We will start with Dart the programming language behind this amazing framework and move to create a robust app on Flutter till the end of this campaign.
Explains how to install Necessitas (Qt for Android), how to use it, and how to publish to the Android Market. Based on Necessitas 0.3 (3rd alpha)
Slides are from Qt Developer Days 2011 in San Fransisco
Neo4j works very well in cloud environments. However, with such variance in compute, network, and storage options, the job of configuring a production database environment is getting complex. In this demo-oriented session, Patrick and David Makogon will introducing straightforward ways to configure and deploy Neo4j with Docker containers, as well as showing how to use automated cloud resource configuration with the new Azure Resource Manager.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2022/08/open-standards-powering-the-future-of-embedded-vision-a-presentation-from-the-khronos-group/
Neil Trevett, President of the Khronos Group and Vice President of Developer Ecosystems at NVIDIA, presents the “Open Standards: Powering the Future of Embedded Vision” tutorial at the May 2022 Embedded Vision Summit.
Open standards play an important role in enabling interoperability for efficient deployment of vision-based systems. In this session, Trevett shares an update on the family of Khronos Group standards for programming and deploying accelerated inferencing and embedded vision, including OpenCL, Vulkan Safety Critical, OpenVX, SYCL and NNEF.
Trevett discusses the evolving roadmap for these standards and provides insights to help you understand which standards are relevant to your projects. In addition, he introduces the new Khronos Embedded Camera API initiative. Trevett outlines the technical direction of the Embedded Camera API working group to create an open standard to streamline the integration and control of sophisticated embedded camera systems, and highlights how attendees can participate in this important industry initiative.
Presented by Brian Gupta (brian.gupta@brandorr.com) and Nathan Freitas (nathan@olivercoady.com)
Learn more at http://tinyurl.com/androidfaq
Android is a fully integrated and open source bundle of software significantly lowers the current costs of developing mobile devices (currently runs on a cellphone (the HTC Dream/T-Mobile G1), and a number of unofficial "ports". It consists of an operating system, middleware, a user-friendly interface and powerful applications.
The talk will start with a review of the internal architecture of the Android platform, breaking down the various components, and examine how they work. Then we will review the latest status of the open source project, including how to get and build the source code, and how to get involved.
LCC17 - Securing Embedded Systems with the Hypervisor - Lars Kurth, CitrixThe Linux Foundation
Hypervisors were once seen as purely cloud and server technologies, but have slowly seeped into the embedded space providing extra layers of security. This discussion will showcase how companies from security vendors to automotive are using open source hypervisors (particularly Xen Project) to secure embedded systems, what challenges they face and how they have overcome it. We will also explore what this might mean to IoT at large and how to get started in securing your embedded system with a hypervisor-first approach.
gVisor, Kata Containers, Firecracker, Docker: Who is Who in the Container Space?ArangoDB Database
View the video of this webinar here: https://www.arangodb.com/arangodb-events/gvisor-kata-containers-firecracker-docker/
Containers* have revolutionized the IT landscape and for a long time. Docker seemed to be the default whenever people were talking about containerization technologies**. But traditional container technologies might not be suitable if strong isolation guarantees are required. So recently new technologies such as gVisor, Kata Container, or firecracker have been introduced to close the gap between the strong isolation of virtual machines and the small resource footprint of containers.
In this talk, we will provide an overview of the different containerization technologies, discuss their tradeoffs, and provide guidance for different use cases.
* We will define the term container in more detailed during the talk
** and yes we will also cover some of the pre-docker container space!
For the full video of this presentation, please visit:
https://www.edge-ai-vision.com/2021/01/khronos-standard-apis-for-accelerating-vision-and-inferencing-a-presentation-from-the-khronos-group/
Neil Trevett, President of the Khronos Group and Vice President of Developer Ecosystems at NVIDIA, presents the “Khronos Standard APIs for Accelerating Vision and Inferencing” tutorial at the September 2020 Embedded Vision Summit.
The landscape of processors and tools for accelerating inferencing and vision applications continues to evolve rapidly. Khronos standards, such as OpenCL, OpenVX, SYCL and NNEF, play an increasingly central role in connecting application developers to the latest silicon—productively, efficiently and portably.
In this talk, Trevett provides an overview and the latest updates on Khronos standards relevant for machine learning and computer vision, and previews how they are likely to evolve in the future.
Android As a Server- Building Android for the Cloud (AnDevCon SF 2013)Ron Munitz
My session in AnDevcon, November 2011, Burlingame, CA.
In the cloud era, most software projects have shifted from asking "What hardware architecture should be chosen for my back-end?" to "Which cloud configuration should be used for my back-end?" Bringing up a cloud server has become an obvious choice for any Linux or Windows-based deployment. As Android emerges as the new Embedded Linux for a growing number of industries, it only makes sense to consider its cloud application as a server.
In this class, we will discuss why and how Android can be brought on the cloud system, and on any cloud infrastructure, using AWS (Amazon Web Services) as an example.
LEVEL: Intermediate
AUDIENCE: Developer Essentials
For Training/Consulting requests: info@thepscg.com
Building Android for the Cloud: Android as a Server (Mobile World Congress 2014)Ron Munitz
My session in the Mobile World Congress WIPJam, Barcelona 2014.
In the cloud era, most software projects have shifted from asking "What hardware architecture should be chosen for my backend?" to "Which cloud configuration should be used for my backend?" Bringing up a cloud server has become an obvious choice for any Linux- or Windows-based deployment. As Android emerges as the new Embedded Linux for a growing number of industries, it only makes sense to consider its cloud application as a server. This session will discuss why and how Android can be brought on the cloud system, and on any cloud infrastructure, using AWS (Amazon Web Services) as an example.
Fast monatlich veröffentlicht das Google SDK Team Updates der Android Development Tools. Leider hinken Dokumentation und Beispiele oft hinterher. Dabei sind die Tools mächtige Verbündete bei der Suche nach Performance- oder Speicherproblemen. Diese Session zeigt anhand von konkreten Beispielen, wie man Fehlern auf die Spur kommt und welche versteckten Helfer in den Tiefen des SDKs verborgen sind.
AI Genie Review: World’s First Open AI WordPress Website CreatorGoogle
AI Genie Review: World’s First Open AI WordPress Website Creator
👉👉 Click Here To Get More Info 👇👇
https://sumonreview.com/ai-genie-review
AI Genie Review: Key Features
✅Creates Limitless Real-Time Unique Content, auto-publishing Posts, Pages & Images directly from Chat GPT & Open AI on WordPress in any Niche
✅First & Only Google Bard Approved Software That Publishes 100% Original, SEO Friendly Content using Open AI
✅Publish Automated Posts and Pages using AI Genie directly on Your website
✅50 DFY Websites Included Without Adding Any Images, Content Or Doing Anything Yourself
✅Integrated Chat GPT Bot gives Instant Answers on Your Website to Visitors
✅Just Enter the title, and your Content for Pages and Posts will be ready on your website
✅Automatically insert visually appealing images into posts based on keywords and titles.
✅Choose the temperature of the content and control its randomness.
✅Control the length of the content to be generated.
✅Never Worry About Paying Huge Money Monthly To Top Content Creation Platforms
✅100% Easy-to-Use, Newbie-Friendly Technology
✅30-Days Money-Back Guarantee
See My Other Reviews Article:
(1) TubeTrivia AI Review: https://sumonreview.com/tubetrivia-ai-review
(2) SocioWave Review: https://sumonreview.com/sociowave-review
(3) AI Partner & Profit Review: https://sumonreview.com/ai-partner-profit-review
(4) AI Ebook Suite Review: https://sumonreview.com/ai-ebook-suite-review
#AIGenieApp #AIGenieBonus #AIGenieBonuses #AIGenieDemo #AIGenieDownload #AIGenieLegit #AIGenieLiveDemo #AIGenieOTO #AIGeniePreview #AIGenieReview #AIGenieReviewandBonus #AIGenieScamorLegit #AIGenieSoftware #AIGenieUpgrades #AIGenieUpsells #HowDoesAlGenie #HowtoBuyAIGenie #HowtoMakeMoneywithAIGenie #MakeMoneyOnline #MakeMoneywithAIGenie
Navigating the Metaverse: A Journey into Virtual Evolution"Donna Lenk
Join us for an exploration of the Metaverse's evolution, where innovation meets imagination. Discover new dimensions of virtual events, engage with thought-provoking discussions, and witness the transformative power of digital realms."
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Mind IT Systems
Healthcare providers often struggle with the complexities of chronic conditions and remote patient monitoring, as each patient requires personalized care and ongoing monitoring. Off-the-shelf solutions may not meet these diverse needs, leading to inefficiencies and gaps in care. It’s here, custom healthcare software offers a tailored solution, ensuring improved care and effectiveness.
Software Engineering, Software Consulting, Tech Lead, Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Transaction, Spring MVC, OpenShift Cloud Platform, Kafka, REST, SOAP, LLD & HLD.
Large Language Models and the End of ProgrammingMatt Welsh
Talk by Matt Welsh at Craft Conference 2024 on the impact that Large Language Models will have on the future of software development. In this talk, I discuss the ways in which LLMs will impact the software industry, from replacing human software developers with AI, to replacing conventional software with models that perform reasoning, computation, and problem-solving.
OpenMetadata Community Meeting - 5th June 2024OpenMetadata
The OpenMetadata Community Meeting was held on June 5th, 2024. In this meeting, we discussed about the data quality capabilities that are integrated with the Incident Manager, providing a complete solution to handle your data observability needs. Watch the end-to-end demo of the data quality features.
* How to run your own data quality framework
* What is the performance impact of running data quality frameworks
* How to run the test cases in your own ETL pipelines
* How the Incident Manager is integrated
* Get notified with alerts when test cases fail
Watch the meeting recording here - https://www.youtube.com/watch?v=UbNOje0kf6E
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...Juraj Vysvader
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I didn't get rich from it but it did have 63K downloads (powered possible tens of thousands of websites).
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Łukasz Chruściel
No one wants their application to drag like a car stuck in the slow lane! Yet it’s all too common to encounter bumpy, pothole-filled solutions that slow the speed of any application. Symfony apps are not an exception.
In this talk, I will take you for a spin around the performance racetrack. We’ll explore common pitfalls - those hidden potholes on your application that can cause unexpected slowdowns. Learn how to spot these performance bumps early, and more importantly, how to navigate around them to keep your application running at top speed.
We will focus in particular on tuning your engine at the application level, making the right adjustments to ensure that your system responds like a well-oiled, high-performance race car.
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxrickgrimesss22
Discover the essential features to incorporate in your Winzo clone app to boost business growth, enhance user engagement, and drive revenue. Learn how to create a compelling gaming experience that stands out in the competitive market.
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
Globus Connect Server Deep Dive - GlobusWorld 2024Globus
We explore the Globus Connect Server (GCS) architecture and experiment with advanced configuration options and use cases. This content is targeted at system administrators who are familiar with GCS and currently operate—or are planning to operate—broader deployments at their institution.
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisGlobus
JASMIN is the UK’s high-performance data analysis platform for environmental science, operated by STFC on behalf of the UK Natural Environment Research Council (NERC). In addition to its role in hosting the CEDA Archive (NERC’s long-term repository for climate, atmospheric science & Earth observation data in the UK), JASMIN provides a collaborative platform to a community of around 2,000 scientists in the UK and beyond, providing nearly 400 environmental science projects with working space, compute resources and tools to facilitate their work. High-performance data transfer into and out of JASMIN has always been a key feature, with many scientists bringing model outputs from supercomputers elsewhere in the UK, to analyse against observational or other model data in the CEDA Archive. A growing number of JASMIN users are now realising the benefits of using the Globus service to provide reliable and efficient data movement and other tasks in this and other contexts. Further use cases involve long-distance (intercontinental) transfers to and from JASMIN, and collecting results from a mobile atmospheric radar system, pushing data to JASMIN via a lightweight Globus deployment. We provide details of how Globus fits into our current infrastructure, our experience of the recent migration to GCSv5.4, and of our interest in developing use of the wider ecosystem of Globus services for the benefit of our user community.
Enhancing Research Orchestration Capabilities at ORNL.pdfGlobus
Cross-facility research orchestration comes with ever-changing constraints regarding the availability and suitability of various compute and data resources. In short, a flexible data and processing fabric is needed to enable the dynamic redirection of data and compute tasks throughout the lifecycle of an experiment. In this talk, we illustrate how we easily leveraged Globus services to instrument the ACE research testbed at the Oak Ridge Leadership Computing Facility with flexible data and task orchestration capabilities.
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeAftab Hussain
Understanding variable roles in code has been found to be helpful by students
in learning programming -- could variable roles help deep neural models in
performing coding tasks? We do an exploratory study.
- These are slides of the talk given at InteNSE'23: The 1st International Workshop on Interpretability and Robustness in Neural Software Engineering, co-located with the 45th International Conference on Software Engineering, ICSE 2023, Melbourne Australia
Unleash Unlimited Potential with One-Time Purchase
BoxLang is more than just a language; it's a community. By choosing a Visionary License, you're not just investing in your success, you're actively contributing to the ongoing development and support of BoxLang.
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Crescat
Crescat is industry-trusted event management software, built by event professionals for event professionals. Founded in 2017, we have three key products tailored for the live event industry.
Crescat Event for concert promoters and event agencies. Crescat Venue for music venues, conference centers, wedding venues, concert halls and more. And Crescat Festival for festivals, conferences and complex events.
With a wide range of popular features such as event scheduling, shift management, volunteer and crew coordination, artist booking and much more, Crescat is designed for customisation and ease-of-use.
Over 125,000 events have been planned in Crescat and with hundreds of customers of all shapes and sizes, from boutique event agencies through to international concert promoters, Crescat is rigged for success. What's more, we highly value feedback from our users and we are constantly improving our software with updates, new features and improvements.
If you plan events, run a venue or produce festivals and you're looking for ways to make your life easier, then we have a solution for you. Try our software for free or schedule a no-obligation demo with one of our product specialists today at crescat.io
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Globus
The Earth System Grid Federation (ESGF) is a global network of data servers that archives and distributes the planet’s largest collection of Earth system model output for thousands of climate and environmental scientists worldwide. Many of these petabyte-scale data archives are located in proximity to large high-performance computing (HPC) or cloud computing resources, but the primary workflow for data users consists of transferring data, and applying computations on a different system. As a part of the ESGF 2.0 US project (funded by the United States Department of Energy Office of Science), we developed pre-defined data workflows, which can be run on-demand, capable of applying many data reduction and data analysis to the large ESGF data archives, transferring only the resultant analysis (ex. visualizations, smaller data files). In this talk, we will showcase a few of these workflows, highlighting how Globus Flows can be used for petabyte-scale climate analysis.
2. 1Copyright 2016 ITRI 工業技術研究院
Outline
❖Preliminaries
❖Android Containerization
➢Isolate/share services among Android instances
❖Linux Kernel, Drivers and Android Binder
❖Window System and Graphics
❖Android X86 Containerization
❖TODOs
❖ICL’s Big Picture - Android as a Service
3. 2Copyright 2016 ITRI 工業技術研究院
Preliminaries
❖ Android Platforms
➢ Nexus 7 with Android 6.X/Kernel 3.4.0
➢ Pixel XL with Android 7.1.X/Kernel 3.18.31
❖ LXC and Other Tools
➢ Built with Android NDK: android-toolchain-arm_64-4.9-android-24
➢ LXC
➢ libcap (https://github.com/abstrakraft/lxc-android-libcap)
• Only libcap is required, built in static (libcap.a)
➢ SELinux
• Using essential Android code base: external/selinux
• libselinux: external/selinux/libselinux
– NOT external/libselinux which is a small port of libselinux for Android framework
• libsepol: external/selinux/libsepol
6. 5Copyright 2016 ITRI 工業技術研究院
Containerization of Android
❖ Android was essentially designed for single instance architecture
❖ In order to better containerized Android, we need to
➢ Refactor essential Android key services architecture design to make it namespace-
aware and sharable among Android containers
➢ Extend the current LXC to support namespace-aware device model and namespace-
aware deriver development
➢ Extend Android virtual devices and drivers to support namespace-awareness
Unified Linux Kernel & Drivers
LXC Container (Cgroups, Namespace)
SELinux
Virtual Device
Drivers
Host Android
Shared
Framework
Services
Service Manager Surface Flinger
Camera
LXCTools
Virtual
Devices
binder RIL
alarm
….
Netfilter,
Virtual Ethernet Bridging
iptables
Power Mgmt. ….
Android 1 Android 2
Audio Sensors
8. 7Copyright 2016 ITRI 工業技術研究院
Isolate/Share Services among
Android Containers
❖ Refactoring essential Android binder architecture design to
enable isolate/share services among Android instances
➢ Namespace-aware IPC binder (Inspired by Container Virtualization
Adapted to Android @浙江大学计算机系统结构实验室)
➢ Reduce the total # of Linux process
➢ Can be configured which services to be shared
➢ Caller is aware of the container ID of callee
Linux Kernel + LXC + Drivers
Virtual Devicesbinder 1 binder n
Linux Kernel + LXC + Drivers
Virtual Devices namespace-awarebinder
Shared service invocation
Unshared service invocation
Before After
10. 9Copyright 2016 ITRI 工業技術研究院
Virtual Binder Driver
Lei Xu, Wenzhi Chen, Zonghui Wang, Guoxi Li, Chuan Li, Weijie Sun, Condroid:A Container-Based
Virtualization SolutionAdapted forAndroid Devices , Proceedings of IEEE International Conference onMobile
Cloud Computing, Services, and Engineering, 2015
Real
binder
driver
Host
Service
Manager
SHARED
11. 10Copyright 2016 ITRI 工業技術研究院
Android Virtual Binder Architecture
Service
Manager
Service App
Host
Service App
Container1
Service App
Container2
/dev/binder /dev/virtualbinder1 /dev/virtualbinder2
Virtual Binder Driver
Real Binder Deriver
Linux Kernel
12. 11Copyright 2016 ITRI 工業技術研究院
Virtual Devices and their Drivers
❖ Device Namespaces : namespace aware device driver (inspired by
Cells proj. @ Columbia University)
➢ Stateful/Statelessdevice driver, stateful devices, like alarm device, the
state of different namespaces must be maintained
❖ AlarmManagerService
➢ alarm-dev driver has been removed in Android Nougat, the functionality
provided by the Android alarm-dev driver should now be present in the
timerfd interface
➢ com_android_server_AlarmManagerService.cpp
static const clockid_t android_alarm_to_clockid[N_ANDROID_TIMERFDS]
• CLOCK_REALTIME_ALARM (since Linux 3.11)
• CLOCK_REALTIME
• CLOCK_BOOTTIME_ALARM (since Linux 3.11)
• CLOCK_BOOTTIME (since Linux 3.15)
• CLOCK_MONOTONIC
• CLOCK_REALTIME
Linux Kernel + LXC + Drivers
Virtual Devices alarm- dev
Android 1 Android n
State1 Staten
14. 13Copyright 2016 ITRI 工業技術研究院
Share or Not to Share
SurfaceFlinger/WindowManager
❖浙江大学计算机系统结构实验室
➢Share both SurfaceFlinger and Window
Manager
➢Maintains different z-order range for different
containers
Linux Kernel + LXC + Drivers
Surface Flinger buffer
Host Android
Shared
Framework
Services
Surface Flinger
Window Manager
15. 14Copyright 2016 ITRI 工業技術研究院
Share or Not to Share
SurfaceFlinger/WindowManager (2)
❖ICL Approach
➢Window Manager in each container
➢Single SurfaceFlinger instance on host
• Maintains list of Layers of different Android containers
• Groups Layers according to their container ID
Linux Kernel + LXC + Drivers
Surface Flinger buffer
Host Android
Shared Framework
Services Surface Flinger
Window Manager
Android n
Window Manager
16. 15Copyright 2016 ITRI 工業技術研究院
Display Switching between Containers
• Layers of different Android
containers in SurfaceFlinger
• SurfaceFlinger groups layers
according to their container
ID
Assign layers of host container to
layersSortedByZ of primary display
primary display
compose
Assign layers of container 1 to
layersSortedByZ of primary display
primary display
compose
22. 21Copyright 2016 ITRI 工業技術研究院
Multiple instances of SurfaceFlinger
Can there be multiple surfaceflinger(s) ?
This implies to a second question : is gpu / driver
(drm) shareable for gui(s) ? void SurfaceFlinger::doComposition()
{
….pseudo code…
FOR EACH DISPLAY i
IF DISPLAY_ON( i )
IF (i) == MAIN_DISPLAY AND byte 1 of
“/data/surfaceflinger/control” is Zero
GOTO END
r = GET_DIRTY_REGION
DO_DISPLAY_COMPOSITION(r)
DIRTY_REGION_CLEAR()
HARDWARE_FLIP()
ENDIF
NOTITY_HARDWARE_COMPOSITION_
COMPLETE()
ENDFOR
POST_FRAMEBUFFER()
LABEL END
}
Kernel
Display
Driver
GPU
Driver
Graphic
Driver
Container
... ...
OpenGL
ES
Surface-
flinger
Windows-
Manager
Hw Comp
oser
Container
... ...
OpenGL
ES
Surface-
flinger
Windows-
Manager
Hw Comp
oser
Container
... ...
OpenGL
ES
Surface-
flinger
Windows-
Manager
Hw Comp
oser
23. 22Copyright 2016 ITRI 工業技術研究院
Static /dev
I want in each container servicemanager connect (open)
/dev/binder (not /dev/binde1, /dev/binder2 , etc)
/dev/ was mounted tmpfs, how about make it static?
Container1
Servic
e
Manag
er
... APP
/dev/binder
Kernel
/dev/binder1
Container2
Servic
e
Manag
er
... APP
/dev/binder
/dev/binder2
mknod /data/con1/rootfs/dev/binder 57 0
mknod /data/con2/rootfs/dev/binder 58 0
##host /dev/binder major number 56
##host /dev/binder1 major number 57
##host /dev/binder2 major number 58
int main(int argc, char **argv)
{
int fd_count= 0;
struct pollfdufds[4];
char *tmpdev;
char* debuggable;
char tmp[32];
int property_set_fd_init = 0;
int signal_fd_init = 0;
int keychord_fd_init = 0;
bool is_charger = false;
char initrc_path[PROP_VALUE_MAX];
/* If we are calledas'modprobe' command, we run asa
* standaloneexecutable andreuse ueventd'slogic to do
the job.
*/
if (strstr(argv[0], "modprobe"))
return modprobe_main(argc, argv);
if (!strcmp(basename(argv[0]), "ueventd"))
return ueventd_main(argc,argv);
if (!strcmp(basename(argv[0]), "watchdogd"))
return watchdogd_main(argc, argv);
/* clear the umask*/
umask(0);
/* Get the basic filesystem setup we needput
* together in theinitramdiskon / and then we'll
* let the rc filefigureout therest.
*/
mkdir("/dev",0755);
mkdir("/proc", 0755);
mkdir("/sys", 0755);
#if STATIC_DEV
printf(">>>>>skip mount/devn");
#else
mount("tmpfs", "/dev", "tmpfs", MS_NOSUID,
"mode=0755");
#endif
mkdir("/dev/pts", 0755);
mkdir("/dev/socket", 0755);
#if STATIC_DEV
printf(">>>>>skip mount/dev/ptsn"); //use lxc's
/dev/ptsinstead
#else
mount("devpts", "/dev/pts", "devpts", 0, NULL);
#endif
mount("proc", "/proc","proc", 0, NULL);
mount("sysfs", "/sys", "sysfs", 0, NULL);
24. 23Copyright 2016 ITRI 工業技術研究院
Exploit (kernel) memory
Android-x86_5.1 is defaultly 32bits build
As a server, install 16g RAM and enable kernel option
‘HIMEM_64G’...
The OOM killer be called even when there is still plenty of
memory available <0>[ 331.441013]
lowmem_reserve[]: 0 0 0 0” and then
Out-of-memory invoked
<3>[ 2839.557148] binder4:
binder_mmap: 6382 adf02000-
ae000000 get_vm_area failed -12
<4>[ 2859.865885] vmap allocation
for size 1044480 failed
Recipe - In bootloader’s booting
parameter, add vmalloc=512MB
<6>[ 0.000000] vmalloc :
0xdfbfe000 - 0xffbfe000 ( 512 MB)
25. 24Copyright 2016 ITRI 工業技術研究院
Camera HAL
Besides virtualizing native linux device , it’s necessary to
virtualize android HAL
I want take a error on arm device as an example
02-18 02:52:31.744 24 24 I CameraService: Loaded"QCamera Module" camera module^M
02-18 02:52:31.744 24 24 E mm-camera-intf:mm_camera_open: dev name= /dev/video1, cam_idx = 1^M
02-18 02:52:31.941 24 24 E mm-camera-intf:mm_camera_open: opened, breakout while loop^M
02-18 02:52:31.941 24 24 E mm-camera-intf:mm_camera_socket_create: socket_fd=-1 No such fileor directory
^M
02-18 02:52:31.969 24 24 E mm-camera-intf:mm_camera_socket_create: socket_fd=-1 No such fileor directory
^M
02-18 02:52:31.970 24 24 E mm-camera-intf:mm_camera_open: cannot opendomain socket fd of
'/dev/video1'(No such fileor directory)^M
02-18 02:52:32.029 24 24 E mm-camera-intf:camera_open: mm_camera_open err = -1^M
02-18 02:52:32.029 24 24 E QCamera3HWI:static int
qcamera::QCamera3HardwareInterface::initCapabilities(int): camera_open failed^M
02-18 02:52:32.033 24 24 E CameraFlashlight: createFlashlightControl: failed to get camerainfo for camera0^M
02-18 02:52:32.033 24 24 E CameraFlashlight: findFlashUnits: failedto createflash control for 0^M
02-18 02:52:32.033 24 24 E mm-camera-intf:mm_camera_open: dev name= /dev/video2, cam_idx = 2^M
02-18 02:52:32.597 24 24 E mm-camera-intf:mm_camera_open: opened, breakout while loop^M
02-18 02:52:32.597 24 24 E mm-camera-intf:mm_camera_socket_create: socket_fd=-1 No such fileor directory
^M
02-18 02:52:32.619 24 24 E mm-camera-intf:mm_camera_socket_create: socket_fd=-1 No such fileor directory
^M
02-18 02:52:32.628 24 24 E mm-camera-intf:mm_camera_open: cannot opendomain socket fd of
'/dev/video2'(No such fileor directory)^M
02-18 02:52:32.874 24 24 E mm-camera-intf:camera_open: mm_camera_open err = -1^M
02-18 02:52:32.874 24 24 E QCamera3HWI:static int
qcamera::QCamera3HardwareInterface::initCapabilities(int): camera_open failed^M
02-18 02:52:32.874 24 24 E CameraFlashlight: createFlashlightControl: failed to get camerainfo for camera1^M
02-18 02:52:32.874 24 24 E CameraFlashlight: findFlashUnits: failedto createflash control for 1^M
27. 26Copyright 2016 ITRI 工業技術研究院
TODOs
❖Power Management
➢To share or not to share PowerManagerService
❖Activity Manager Service
❖Low Memory Killer
❖SELinux
➢To further isolate host and containers
❖SEE (Secure Execution Environment)
Integration
➢vold and Qualcomm SEE issues
➢DRM
28. 27Copyright 2016 ITRI 工業技術研究院
Android-X86
ICL is constructing the first cost-effective
APP streaming cloud infrastructure,
consisting of
❖ Low latency audio/video streaming services
❖ Scalable & cost-effective virtual/physical
smartphone pool
➢Android-X86 virtual smartphones
➢Cost-effective smartphone SOC cluster server
➢Containerized Android doubles/triples the
Android instances density of per U chassis
❖ BMC management software
➢H/W & S/W deployment automation
❖ APP Streaming Service Management
CPU CPU
CPU CPU
CPU CPU
CPU CPU
4 GB
8GB
4 GB
8GB
ICL’s Big Picture - Android as a Service
29. 28Copyright 2016 ITRI 工業技術研究院
Google group: Android-x86
http://groups.google.com/group/android-x86
IRC channel at irc.freenode.net
#android-x86