Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
An Application Profiler for Android CSC 714 - FALL 2011 Arash Rezaei, Gopikannan Venugopalsamy Problem statement • Application profiling in Android, for the purpose of finding behavior patterns of applications • The identified behavior patterns helps to differentiate the applications that consume suspicious level/patterns of resources • Android assigns each application a – UID: unique number at install time – PID (Process ID) Resources Monitoring • Two monitoring service – Time based • • • • Memory usage CPU usage Sensor usage Network usage – Event Based • File System Monitoring Resources Monitoring(cont.) • Memory usage: The ActivityManager is used to get all the running process information and also the memory usage of each application given their pids. – Includes Pss, PrivateDirty and sharedDirty • Sensor Usage: Sensor manager is the service that handles all kinds of sensors in device. Batterystats.Uid.sensor is a package that is used to obtain statistics of sensor usage of an application. • CPU Usage: The package "android.os.BatteryStats.proc" is used along the Uid of the process to get the – user time – system time – foreground time The sum of these is multiplied along the power factor which gives us the CPU usage of that application. Resources Monitoring(cont.) • Network usage: (TrafficStats) for each App. – No. of TCP/UDP payload bytes sent/received – No. of TCP/UDP packets sent/received – No. of TCP segments sent/received • File System Monitoring: (Event driven) – – – – – File X is created File X is opened File X is closed File X is modified File X written and closed