`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 1 of 63
`
`GOOGLE EXHIBIT 1025
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Below is a claim chart identifying specifically where each element of each asserted claim of U.S. Patent No. 9,516,127 is
`found within the Google ’127 Marshmallow Accused Products (also referred to in this chart as “Accused Products”). All references to
`specific products—including the Google Marshmallow products described in Schedule G-M, and their corresponding features—are
`merely exemplary in nature. Accordingly, neither the claim chart nor the contentions are limited to just those specific examples
`provided in the chart and Schedule G-M. Rather, the claim chart is representative of the contentions as to all of the Google ’127
`Marshmallow Accused Products.
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`10. A mobile device,
`comprising:
`
`The preamble is not limiting, but to the extent the preamble is found to be a limitation of this claim,
`the Accused Products are mobile devices.
`
`For example, the Google Nexus 6P is a mobile device.
`
`
`
`
`
`
`Page 1 of 62
`
`
`
`
`
`Page 2 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`See, e.g., Google Nexus 6P Elegantly designed, pure Android, Google,
`https://www.google.com/nexus/6p/ (last visited Jul. 6, 2017).
`
`Additional Google smartphones and tablets are identified in Schedule G-M.
`
`a memory;
`
`The Accused Products include a memory.
`
`For example, the Google Nexus 6P has several memory configurations, including 32 GB, 64 GB, or
`128 GB of internal memory.
`
`
`See, e.g., Nexus tech specs, Nexus Help,
`https://support.google.com/nexus/answer/6102470?hl=en&ref_topic=3415518 (last visited Jul. 6,
`2017).
`
`The internal memory in the Google Nexus 6P is implemented using Samsung universal flash storage
`(shown in orange below).
`
`
`
`
`
`
`
`Page 2 of 62
`
`Page 3 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`
`See, e.g., Nexus 6P Teardown, iFixit, https://www.ifixit.com/Teardown/Nexus+6P+Teardown/51660
`(“Samsung KLMBG4END-B0-31 32 GB eMMC 5.0 NAND Flash” is indicated in orange) (last
`visited Jul. 7, 2017).
`
`The “Memory” column in Schedule G-M provides additional examples of memory included in the
`Accused Products.
`
`a processor in communication
`with the memory and
`configured to execute
`instructions stored in the
`memory to:
`
`Each of the Accused Products have a processor in communication with the memory and configured
`to execute instructions stored in the memory.
`
`For example, the Google Nexus 6P has a 2.0 GHz octa-core processor.
`
`
`
`
`
`
`Page 3 of 62
`
`Page 4 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`
`See, e.g., Nexus 6P – Google, Google, https://www.google.com/nexus/6p (last visited Jul. 6, 2017).
`
`The “Processor” column in Schedule G-M provides examples of processors used in the Accused
`Products.
`
`The processor in each of the Accused Products communicates with the memory and is configured to
`execute instructions stored in the memory, such as the Android operating system.
`
`For example, the random access memory for the Google Nexus 6P (Micron MTS3B384M64D4NK-
`062 3 GB LPDDR4RAM) is layered over its processor (Qualcomm Snapdragon 810). The processor
`is also located adjacent to the internal flash storage (Samsung KLMBG4GEND-B031 32 GB eMMC
`5.0 NAND Flash).
`
`
`
`
`
`Page 4 of 62
`
`Page 5 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`
`
`See, e.g., Nexus 6P Teardown, iFixit, https://www.ifixit.com/Teardown/Nexus+6P+Teardown/51660
`(“Samsung KLMBG4END-B0-31 32 GB eMMC 5.0 NAND Flash” is indicated in orange) (last
`visited Jul. 7, 2017).
`
`The internal memory of the Accused Products is used to store the operating system and software used
`to operate the features of the phone. The operating system stored in the Accused Products’ internal
`memory is Android Marshmallow. See, e.g., Nexus tech specs, Nexus Help,
`https://support.google.com/nexus/answer/6102470?hl=en&ref_topic=3415518 (last visited Jul. 6,
`2017).
`
`Additional Google smartphones and tablets that have been sold with or upgraded to Android M are
`identified in Schedule G-M.
`
`
`
`
`
`Page 5 of 62
`
`Page 6 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`enter a power save mode
`based on a backlight status
`and sensed motion of a
`mobile device;
`
`Infringement Contentions for Accused Products
`
`The Accused Products are configured, based on instructions stored in the memory, to enter a power
`save mode based on a backlight status and sensed motion of a mobile device.
`
`Android M features a power save mode, called Doze mode. By deferring content requests, the
`Accused Products reduce mobile radio usage, and the mobile devices “last[] up to two times longer in
`standby.” For example, Google demonstrated at its Google I/O 2015 Developer Conference how the
`Doze feature reduces sync activity (i.e. network traffic):
`
`
`
`
`With M, Android uses significant motion detection to learn if a device has been left
`unattended for an extended period of time. In that case, it will exponentially back off
`background activity to go into a deeper sleep state. So what we're doing is we're
`trading off a little bit of app freshness for longer battery life. And we call it dozing.
`
`
`
`
`
`
`
`Page 6 of 62
`
`Page 7 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`Because while the device is asleep, it's still possible for the device to trigger real time
`alarms or to respond to incoming chat requests through high priority messages. So
`how well does this work? Well, we took two Nexus 9s. And we put Lollipop on one
`and M on the other. And then we loaded both up with the same account and lots and
`lots of applications. We put the two devices side by side and measured power. And
`I'm happy to say that we're seeing devices with M lasting up to two times longer in
`standby.
`
`See, e.g., Google Developers, Google I/O 2015 Keynote, YouTube (May 28, 2015),
`https://www.youtube.com/watch?v=7V-fIGMDsmE.
`
`The Accused Products enter Doze mode based on a backlight status and sensed motion of the mobile
`device (e.g., if the device is stationary).
`
`
`
`See, e.g., Optimizing for Doze and App Standby, Android Developers,
`http://developer.android.com/training/monitoring-device-state/doze-standby.html (last visited Jul. 2,
`2017).
`
`To the extent that a “backlight status” is not literally present in the Accused Products, this limitation
`is met under the doctrine of equivalents in various ways. For example, evaluating display power state
`
`
`
`
`
`
`
`Page 7 of 62
`
`Page 8 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`in an Accused Product is equivalent to evaluating backlight status according to the claimed mobile
`device because it performs substantially the same function (determining mobile device screen
`brightness, including whether the mobile device screen is on or off) in substantially the same way
`(receiving an indication through the hardware abstraction layer of the screen brightness level or
`power state) to achieve substantially the same result (mapping the power state of the display
`hardware to one or more values, such as brightness level, “on,” or “off”).
`
`delay a timing of one or more
`triggers for multiple
`applications on the mobile
`device,
`
`The Accused Products are configured, based on instructions stored in the memory, to delay a timing
`of one or more triggers for multiple applications on the mobile device.
`
`The Accused Products use triggers, such as jobs, sync adapters, or system alarms, to help applications
`schedule work.
`
`
`
`
`
`
`Page 8 of 62
`
`Page 9 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`See, e.g., Intelligent Job-Scheduling, Android Developers,
`https://developer.android.com/topic/performance/scheduling.html (last visited Jul. 11, 2017).
`
`For example, jobs can be used to schedule tasks to run at, or around, the same time based on specific
`conditions, such as network or idle conditions.
`
`
`
`
`
`
`
`
`Page 9 of 62
`
`Page 10 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`Id.
`
`In addition, system alarms trigger application code to run at a specific time.
`
`
`Id.
`
`For example, Alarm Manager allows alarms to be scheduled based on a particular trigger time.
`
`
`
`
`
`
`
`
`
`
`Page 10 of 62
`
`Page 11 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`See, e.g., AlarmManager, Android Developers,
`https://developer.android.com/reference/android/app/AlarmManager.html (last visited Jul. 7, 2017).
`
`Sync adapters may also be used to schedule tasks that sync data between a mobile device and a
`server.
`
`
`See, e.g., Intelligent Job-Scheduling, Android Developers,
`https://developer.android.com/topic/performance/scheduling.html (last visited Jul. 11, 2017).
`
`
`
`
`
`
`
`
`
`
`Page 11 of 62
`
`Page 12 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`The Accused Products are sold with multiple pre-installed applications that are associated with one or
`more triggers. For example, the Accused Products include Gmail and the Google App, which use
`alarms, jobs, or syncs to perform periodic tasks.
`
`While in Doze mode, the Accused Products are configured to delay a timing of one or more triggers
`for multiple applications on the mobile device. For example, Google’s developer documentation
`states that Doze mode “defers [applications’] jobs, syncs, and standard alarms.”
`
`
`See, e.g., Optimizing for Doze and App Standby, Android Developers,
`http://developer.android.com/training/monitoring-device-state/doze-standby.html (last visited Jul. 11,
`2017).
`
`While in Doze, alarms are deferred to the next maintenance window and sync adapters and jobs are
`not allowed to run.
`
`
`
`
`
`
`
`Page 12 of 62
`
`Page 13 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`Id.
`
`As set forth in Google’s developer materials referred to above, and further clarified in developer
`training videos, “Doze mode delays things like SyncAdapters, JobScheduler, and AlarmManager.”
`
`
`
`
`To achieve this, Doze mode delays things like SyncAdapters, JobScheduler, and
`AlarmManager so that they don’t burn through battery when the user isn't even on the
`device. But to be clear, Doze does not disable these services. They just get deferred to
`a later time.
`
`
`Joanna Smith, Android Marshmallow 6.0: Introduction to Doze Mode, YouTube (Sept. 29, 2015),
`https://www.youtube.com/watch?v= N72ksDKrX6c.
`
`wherein the timing is delayed The Accused Products are configured, based on instructions stored in the memory, to delay the
`
`
`
`
`
`Page 13 of 62
`
`Page 14 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`such that the triggers execute
`within a window of time,
`
`timing such that the triggers execute within a window of time.
`
`For example, the Accused Products are configured to defer the timing of jobs, alarms, and sync
`adapters, such that they execute within a maintenance window (shown below). During this
`maintenance window, the system runs all pending syncs, jobs, and alarms, and lets apps access the
`network.
`
`
`See, e.g., Optimizing for Doze and App Standby, Android Developers
`http://developer.android.com/training/monitoring-device-state/doze-standby.html (last visited Jul. 11,
`2017).
`
`
`
`wherein at least a subset of
`
`In the Accused Products, at least a subset of the triggers are associated with wakelocks.
`
`
`
`
`
`Page 14 of 62
`
`Page 15 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`the triggers are associated
`with wakelocks; and
`
`Infringement Contentions for Accused Products
`
`
`For example, at least a subset of the triggers include system alarms.
`
`
`See, e.g., AlarmManager, Android Developers,
`https://developer.android.com/reference/android/app/AlarmManager.html (last visited Jul. 7, 2017).
`
`System alarms are associated with wakelocks. For example, the Alarm Manager, which is a
`framework component that manages system alarms, holds a CPU wake lock as long as a particular
`alarm receiver’s onReceive() method is executing.
`
`
`
`
`
`
`
`
`Page 15 of 62
`
`Page 16 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`See, e.g., AlarmManager, Android Developers,
`https://developer.android.com/reference/android/app/AlarmManager.html (last visited Jul. 11, 2017).
`
`An individual application responding a trigger may also hold a separate wake lock policy to ensure
`that the phone continues running until a requested service becomes available.
`
`
`
`
`
`
`
`
`Page 16 of 62
`
`Page 17 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`See, e.g., Keeping the Device Awake, Android Developers,
`https://developer.android.com/training/scheduling/wakelock.html (last visited Jul. 26, 2017).
`
`
`
`exit the power save mode
`when the backlight of the
`mobile device turns on or
`motion of the mobile device
`
`The Accused Products are configured, based on instructions stored in the memory, to exit the power
`save mode when the backlight of the mobile device turns on or the motion of the mobile device is
`sensed.
`
`
`
`
`
`
`Page 17 of 62
`
`Page 18 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`is sensed.
`
`The Accused Products are configured to exit Doze when the backlight of the mobile device turns on
`(i.e. screen turns on) or the motion of the mobile device is sensed (e.g., user wakes the device by
`moving it).
`
`
`
`
`
`See, e.g., Optimizing for Doze and App Standby, Android Developers,
`http://developer.android.com/training/monitoring-device-state/doze-standby.html (last visited Jul. 2,
`2017).
`
`To the extent that a “backlight” or “backlight status” is not literally present in the Accused Products,
`this limitation is met under the doctrine of equivalents in various ways. For example, evaluating
`display power state in an Accused Product is equivalent to evaluating backlight status according to
`the claimed mobile device because it performs substantially the same function (determining mobile
`device screen brightness, including whether the mobile device screen is on or off) in substantially the
`same way (receiving an indication through the hardware abstraction layer of the screen brightness
`level or power state) to achieve substantially the same result (mapping the power state of the display
`hardware to one or more values, such as brightness level, “on,” or “off”).
`
`11. The mobile device of
`claim 10, wherein the triggers
`include alarms.
`
`In the Accused Products, the triggers include alarms.
`
`As described above, the Accused Products are configured with system alarms that trigger application
`code to run at some point in the future.
`
`
`
`
`
`
`Page 18 of 62
`
`Page 19 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`See, e.g., AlarmManager, Android Developers,
`https://developer.android.com/reference/android/app/AlarmManager.html (last visited Jul. 11, 2017).
`
`The developer documentation for Android instructs that alarms may be scheduled based on a
`particular trigger time.
`
`
`
`
`
`
`
`
`Page 19 of 62
`
`Page 20 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`Id.
`
`
`
`12. The mobile device of
`claim 11, wherein the triggers
`initiate scheduled tasks that
`use a network resource on the
`mobile device.
`
`In the Accused Products, the triggers initiate scheduled tasks that use a network resource on the
`mobile device.
`
`Triggers, such as jobs, syncs, and alarms, initiate scheduled tasks that use a network resource, such as
`the radio, on the mobile device.
`
`For example, a repeating system alarm can be used “to trigger network operations,” such as syncing
`data with a server.
`
`
`
`
`
`
`Page 20 of 62
`
`Page 21 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`See, e.g., Scheduling Repeating Alarms, Android Developers,
`https://developer.android.com/training/scheduling/alarms.html#tradeoffs (last visited Jan. 4, 2017).
`
`
`
` A
`
` sync adapter is another type of trigger that initiates scheduled tasks that use network resources in
`response to certain events, such as a new data message, user activity, or the time of day.
`
`
`
`
`Id.
`
` A
`
` sync adapter manages tasks that sync data between a mobile device, like any of the Accused
`Products, and a server.
`
`
`
`
`
`Page 21 of 62
`
`Page 22 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`
`
`See, e.g., Intelligent Job-Scheduling, Android Developers,
`https://developer.android.com/topic/performance/scheduling.html (Jan. 4, 2017).
`
`
`
` A
`
` job is another example of a trigger that initiates scheduled tasks that use a network resource on the
`mobile device. For example, the Job Scheduler can intelligently schedule network tasks, such as
`updating network resources and downloading information via the mobile radio.
`
`
`
`
`
`
`Page 22 of 62
`
`Page 23 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`See, e.g., Intelligent Job-Scheduling, Android Developers,
`https://developer.android.com/topic/performance/scheduling.html (last visited Jan. 4, 2017).
`
`Job Scheduler allows a job’s requirements for network and timing to be specified when it is
`registered.
`
`
`
`
`
`
`
`Page 23 of 62
`
`Page 24 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`See, e.g., Intelligent Job-Scheduling, Android Developers,
`https://developer.android.com/topic/performance/scheduling.html (Jan. 4, 2017).
`
`For example, the Job Scheduler may be instructed to run a job when a network (e.g., cellular or WiFi)
`or an unmetered network (e.g., WiFi) is available.
`
`
`
`
`
`
`
`Page 24 of 62
`
`Page 25 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`See, e.g., JobScheduler, Android Developers,
`https://developer.android.com/reference/android/app/job/JobScheduler.html (last visited Oct. 15,
`2015).
`
`
`
`
`
`
`
`Page 25 of 62
`
`Page 26 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`13. The mobile device of
`claim 12, wherein delaying
`the timing also optimizes the
`use of battery, CPU and
`memory resources.
`
`In the Accused Products, delaying the timing also optimizes the use of battery, CPU and memory
`resources.
`
`In Doze mode, the system attempts to conserve battery by restricting applications’ access to network
`and CPU-intensive services. For example, the system defers applications’ jobs, syncs, and standard
`alarms.
`
`
`See, e.g., Optimizing for Doze and App Standby, Android Developers,
`https://developer.android.com/training/monitoring-device-state/doze-standby.html (last visited Jul.
`11, 2017).
`
`Background tasks are allowed to run periodically during maintenance windows. However, over time,
`the system schedules maintenance windows less and less frequently.
`
`
`
`
`
`
`
`Page 26 of 62
`
`Page 27 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`Id.
`
`Thus, delaying the timing of triggers also optimizes the use of memory resources by reducing the
`number of times background tasks are run (fewer executions lead to less memory access).
`
`
`
`14. The mobile device of
`claim 11, wherein the triggers
`execute in alignment with
`each other.
`
`In the Accused Products, the triggers execute in alignment with each other.
`
`For example, while in Doze mode, syncs, jobs, and alarms, execute in alignment with each other
`during a maintenance window.
`
`
`
`
`
`
`Page 27 of 62
`
`Page 28 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`See, e.g., Optimizing for Doze and App Standby, Android Developers
`http://developer.android.com/training/monitoring-device-state/doze-standby.html (last visited Jul. 11,
`2017).
`
`In addition, network tasks scheduled using the Android M framework may be deferred and batched
`together, such that they execute opportunistically during a single radio power-on event. For example,
`network tasks scheduled using AlarmManager or JobScheduler may be batched together in order to
`reduce the number of times the device needs to “wake up,” thus minimizing battery use.
`
`
`
`
`
`
`
`
`Page 28 of 62
`
`Page 29 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`See, e.g., Alarm Manager, Android Developers,
`https://developer.android.com/reference/android/app/AlarmManager.html (last visited Jan. 4, 2017).
`
`Much like AlarmManager’s inexact alarms, Job Scheduler batches network calls into one call so that
`the mobile device avoids repeatedly paying the energy overhead associated with activating the
`mobile radio each time. For example, Google Project Manager, Megan Desai, stated:
`
`
`
`
`There’s a lot of legitimate times when you need to be connecting to the network or
`keeping a wake lock. So maybe you can coalesce a lot of these activities. If you have a
`lot of network calls in succession, you can group them together into one call, so you
`pay less of that overhead that we just talked about.
`
`
`Google Developers, Google I/O 2014 – Introduction to Project Volta, YouTube (Jun. 26, 2014),
`https://www.youtube.com/watch?v=KzSKIpJepUw.
`
`
`
`
`
`Page 29 of 62
`
`Page 30 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`
`Batching causes the triggers to execute in alignment, as evident from the bottom table in the figure
`below.
`
`
`
`Id.
`
`Google engineer, Matthew Williams, explained how the Android framework consolidates activations
`of the mobile radio by using deferral techniques made possible with the new Job Scheduler API.
`
`
`And let’s see what we got. So immediately, even from a layman’s perspective, the
`
`
`
`
`
`
`
`Page 30 of 62
`
`Page 31 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`bottom table is much cleaner. We don’t have nearly as many wakeups, which indicate
`that when the phone does wake up, you see the mobile network is active. So work is
`being done, and then it goes back to sleep at the end of that. Look at the shape of this
`mobile radio traffic at the bottom. It’s much more compact. There are much fewer of
`these boxes. So we’re paying much less of this overhead penalty per mobile radio
`active transition.
`
`
`Id.
`
`15. The mobile device of
`claim 10, wherein additional
`triggers from an application
`having triggers are not
`delayed.
`
`In the Accused Products, additional triggers from an application having triggers are not delayed.
`
`For example, certain types of triggers, such as an alarm using setExactAndAllowWhileIdle, are
`exempt from low-power idle modes (e.g., Doze) and therefore are not delayed.
`
`
`See, e.g., AlarmManager, Android Developers,
`https://developer.android.com/reference/android/app/AlarmManager.html (last visited Jul. 7, 2017).
`
`Another example of additional application triggers that are not delayed, are triggers from a
`whitelisted application that is “exempt from being subject to Doze.”
`
`
`
`
`
`
`
`
`Page 31 of 62
`
`Page 32 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`See, e.g., Power Management, Android Open Source Project,
`https://source.android.com/devices/tech/power/mgmt.html#exempt-apps (last visited Jan. 4, 2017).
`
`Whitelisted applications can use the network and hold partial wake locks. During a partial wake lock,
`a whitelisted application can still respond to some triggers, such as a system broadcast, which are not
`deferred.
`
`However, applications on the Battery Optimizations exceptions whitelist are only partially exempted
`from Doze optimizations. Other triggers, such as jobs and syncs, are deferred and coalesced.
`
`
`
`
`
`
`
`
`Page 32 of 62
`
`Page 33 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`An app that is whitelisted can use the network and hold partial wake locks during
`Doze and App Standby. However, other restrictions still apply to the whitelisted app,
`just as they do to other apps. For example, the whitelisted app’s jobs and syncs are
`deferred (on API level 23 and below), and its regular AlarmManager alarms do not
`fire. An app can check whether it is currently on the exemption whitelist by calling
`isIgnoringBatteryOptimizations().
`
`Optimizing for Doze and App Standby, Android Developers,
`http://developer.android.com/training/monitoring-device-state/doze-standby.html (last visited Jan. 4,
`2017).
`
`In addition, the Accused Products include computer code for additional message-based triggers, such
`as Google Cloud Messaging (GCM) or Firebase Cloud Messaging (FCM). Depending on the priority
`of the message, delivery of the message (and the corresponding trigger) may be immediate or
`deferred.
`
`
`
`
`
`
`Page 33 of 62
`
`Page 34 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`See, e.g., About FCM, Google Firebase, https://firebase.google.com/docs/cloud-messaging/concept-
`options (last visited Jul. 2, 2017).
`
`Google Cloud Messaging and Firebase Cloud Messaging (which replaces GCM) are included in the
`Google Play Services APK.
`
`
`
`
`
`
`
`Page 34 of 62
`
`Page 35 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`Set Up Google Play Services, Google APIs for Android,
`https://developers.google.com/android/guides/setup#ensure_devices_have_the_google_play_services
`_apk (last visited Jul. 1, 2017).
`
`The Google Play services APK contains the individual Google services and runs as a background
`service in the Android OS. Applications interact with the background service through the client
`library and the service carries out the actions on each application’s behalf.
`
`
`
`
`
`
`
`Page 35 of 62
`
`Page 36 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`Overview of Google Play Services, Google APIs for Android,
`https://developers.google.com/android/guides/overview (last visited Jul. 1, 2017).
`
`
`
`
`
`
`
`
`Page 36 of 62
`
`Page 37 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`Id. at Figure 1.
`
`Upon information and belief, the Accused Products are sold with Google Play Services pre-installed.
`
`
`
`
`
`
`
`
`Page 37 of 62
`
`Page 38 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`16. The mobile device of
`claim 10, wherein to enter
`and exit the power save mode
`is further based on a charging
`status of the mobile device.
`
`See, e.g., Google Play Services: What it is and why you need it?, Updato.com,
`http://updato.com/android-apps/google-play-services-need (last visited Jul. 1, 2017).
`
`
`
`Entering and exiting the power save mode on the Accused Products is further based on a charging
`status of the mobile device.
`
`Android documentation explains that “Doze mode does not engage when the device is plugged into a
`power charger.” Power Management, Android Open Source Project,
`https://source.android.com/devices/tech/power/mgmt.html#exempt-apps (last visited Jan. 4, 2017).
`
`In addition, each of the Accused Products exit Doze mode if it is connected to a charger. Google
`states in its developer documentation, “As soon as the user wakes the device by moving it, turning on
`the screen, or connecting a charger, the system exits Doze and all apps return to normal activity.”
`Optimizing for Doze and App Standby, Android Developers,
`http://developer.android.com/training/monitoring-device-state/doze-standby.html (last visited Jan. 4,
`2017).
`
`17. A non-transitory
`
`The Accused Products have a non-transitory computer-readable storage medium storing instructions
`
`
`
`
`
`Page 38 of 62
`
`Page 39 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`computer-readable storage
`medium storing instructions
`that when executed by a
`processor causes the
`processor to:
`
`that may be executed by a processor.
`
`The Accused Products have internal memory used to store the Android Operating system and other
`system and user software.
`
`For example, the Google Nexus 6P has 32 GB, 64 GB, or 128 GB of internal memory.
`
`
`See, e.g., Nexus tech specs, Nexus Help,
`https://support.google.com/nexus/answer/6102470?hl=en&ref_topic=3415518 (last visited Jul. 6,
`2017).
`
`The internal memory in the Google Nexus 6P is implemented using universal flash storage (shown in
`orange below), which is a non-transitory computer readable medium.
`
`
`
`
`
`
`
`Page 39 of 62
`
`Page 40 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`Infringement Contentions for Accused Products
`
`See, e.g., Nexus 6P Teardown, iFixit, https://www.ifixit.com/Teardown/Nexus+6P+Teardown/51660
`(“Samsung KLMBG4END-B0-31 32 GB eMMC 5.0 NAND Flash” is indicated in orange) (last
`visited Jul. 7, 2017).
`
`The “Memory” column in Schedule G-M provides additional examples of non-transitory computer
`readable media included in the Accused Products.
`
`The internal memory of the Accused Products is used to store the operating system and software
`used to operate the features of the phone. The operating system stored in the Accused Products’
`internal memory is Android Marshmallow. See, e.g., Nexus tech specs, Nexus Help,
`https://support.google.com/nexus/answer/6102470?hl=en&ref_topic=3415518 (last visited Jul. 6,
`2017).
`
`Additional Google smartphones and tablets that have been sold with or upgraded to Android M are
`identified in Schedule G-M.
`
`
`
`
`
`Page 40 of 62
`
`Page 41 of 63
`
`
`
`EXHIBIT E[MARSHMALLOW]: INFRINGEMENT CONTENTIONS FOR U.S. PATENT NO. 9,516,127
`
`Claim Language
`
`enter a power save mode
`based on a backlight status
`and sensed motion of a
`mobile device;
`
`Infri