{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:09:58Z","timestamp":1750306198300,"version":"3.41.0"},"reference-count":7,"publisher":"Association for Computing Machinery (ACM)","issue":"3","license":[{"start":{"date-parts":[[2017,1,5]],"date-time":"2017-01-05T00:00:00Z","timestamp":1483574400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["GetMobile: Mobile Comp. and Comm."],"published-print":{"date-parts":[[2017,1,5]]},"abstract":"<jats:p>Applications that perform continuous sensing on mobile phones have the potential to revolutionize everyday life. Examples range from medical and health monitoring applications, such as pedometers and fall detectors, to participatory sensing applications, such as noise pollution, traffic and seismic activity monitoring. Unfortunately, current mobile devices are a poor match for continuous sensing applications as they require the device to remain awake for extended periods of time, resulting in poor battery life. We present Sidewinder, a new approach toward offloading sensor data processing to a lowpower processor and waking up the main processor when events of interest occur. Sidewinder differs from other heterogeneous architectures in that developers are presented with a programming interface that lets them construct custom wake-up conditions by linking together and parameterizing predefined sensor data processing algorithms. Sidewinder's wake-up conditions achieve energy efficiency matching fully programmable offloading, but do so with a much simpler programming interface that facilitates deployment and portability.<\/jats:p>","DOI":"10.1145\/3036699.3036710","type":"journal-article","created":{"date-parts":[[2017,4,10]],"date-time":"2017-04-10T12:27:17Z","timestamp":1491827237000},"page":"34-37","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":0,"title":["SIDEWINDER"],"prefix":"10.1145","volume":"20","author":[{"given":"Daniyal","family":"Liaqat","sequence":"first","affiliation":[{"name":"University of Toronto"}]},{"given":"Silviu","family":"Jingoi","sequence":"additional","affiliation":[{"name":"University of Toronto"}]},{"given":"Wilson","family":"To","sequence":"additional","affiliation":[{"name":"University of Toronto"}]},{"given":"Ashvin","family":"Goel","sequence":"additional","affiliation":[{"name":"University of Toronto"}]},{"given":"Eyal","family":"de Lara","sequence":"additional","affiliation":[{"name":"University of Toronto"}]}],"member":"320","published-online":{"date-parts":[[2017,1,5]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"Pok\u00e9mon Go. http:\/\/www.pokemongo.com\/en-us\/.  Pok\u00e9mon Go. http:\/\/www.pokemongo.com\/en-us\/."},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/2150976.2150979"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1109\/MPRV.2011.28"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/1067170.1067198"},{"key":"e_1_2_1_5_1","unstructured":"Core motion framework reference. https:\/\/developer.apple.com\/library\/ios\/documentation\/coremotion\/reference\/coremotion_reference\/index.html.  Core motion framework reference. https:\/\/developer.apple.com\/library\/ios\/documentation\/coremotion\/reference\/coremotion_reference\/index.html."},{"key":"e_1_2_1_6_1","unstructured":"Android motion sensors.  Android motion sensors."},{"key":"e_1_2_1_7_1","unstructured":"SensorManager | Android developers. https:\/\/developer.android.com\/reference\/android\/hardware\/SensorManager.html.  SensorManager | Android developers. https:\/\/developer.android.com\/reference\/android\/hardware\/SensorManager.html."}],"container-title":["GetMobile: Mobile Computing and Communications"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3036699.3036710","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3036699.3036710","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T03:50:26Z","timestamp":1750218626000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3036699.3036710"}},"subtitle":["Efficient and Easy-to-Use Continuous Sensing"],"short-title":[],"issued":{"date-parts":[[2017,1,5]]},"references-count":7,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2017,1,5]]}},"alternative-id":["10.1145\/3036699.3036710"],"URL":"https:\/\/doi.org\/10.1145\/3036699.3036710","relation":{},"ISSN":["2375-0529","2375-0537"],"issn-type":[{"type":"print","value":"2375-0529"},{"type":"electronic","value":"2375-0537"}],"subject":[],"published":{"date-parts":[[2017,1,5]]},"assertion":[{"value":"2017-01-05","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}