{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:22:13Z","timestamp":1750306933290,"version":"3.41.0"},"reference-count":24,"publisher":"Association for Computing Machinery (ACM)","issue":"1s","license":[{"start":{"date-parts":[[2013,3,1]],"date-time":"2013-03-01T00:00:00Z","timestamp":1362096000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/501100003725","name":"National Research Foundation of Korea","doi-asserted-by":"publisher","id":[{"id":"10.13039\/501100003725","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100003662","name":"Korea Evaluation Institute of Industrial Technology","doi-asserted-by":"publisher","id":[{"id":"10.13039\/501100003662","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100002994","name":"Ministry of Knowledge Economy","doi-asserted-by":"publisher","id":[{"id":"10.13039\/501100002994","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Embed. Comput. Syst."],"published-print":{"date-parts":[[2013,3]]},"abstract":"<jats:p>Memory reservation in embedded systems is a prevalent approach to provide a physically contiguous memory region to its integrated devices, such as a camera device and a video decoder. Inefficiency of the memory reservation becomes a more significant problem in emerging embedded systems, such as smartphones and smart TVs. Many ways of using these systems increase the idle time of their integrated devices, and eventually decrease the utilization of their reserved memory.<\/jats:p>\n          <jats:p>In this article, we propose a scheme to minimize the memory inefficiency caused by the memory reservation. The memory space reserved for a device can be rented for other purposes when the device is not active. For this scheme to be viable, latencies associated with reallocating the memory space should be minimal. Volatile pages are good candidates for such page reallocation since they can be reclaimed immediately as they are needed by the original device. We also provide two optimization techniques, lazy-migration and adaptive-activation. The former increases the lowered utilization of the rental memory by our volatile page allocations, and the latter saves active pages in the rental memory during the reallocation.<\/jats:p>\n          <jats:p>We implemented our scheme on a smartphone development board with the Android Linux kernel. Our prototype has shown that the time for the return operation is less than 0.77 seconds in the tested cases. We believe that this time is acceptable to end-users in terms of transparency since the time can be hidden in application initialization time. The rental memory also brings throughput increases ranging from 2% to 200% based on the available memory and the applications' memory intensiveness.<\/jats:p>","DOI":"10.1145\/2435227.2435239","type":"journal-article","created":{"date-parts":[[2013,3,19]],"date-time":"2013-03-19T13:34:23Z","timestamp":1363700063000},"page":"1-21","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":15,"title":["Rigorous rental memory management for embedded systems"],"prefix":"10.1145","volume":"12","author":[{"given":"Jinkyu","family":"Jeong","sequence":"first","affiliation":[{"name":"Korea Advanced Institute of Science and Technology"}]},{"given":"Hwanju","family":"Kim","sequence":"additional","affiliation":[{"name":"Korea Advanced Institute of Science and Technology"}]},{"given":"Jeaho","family":"Hwang","sequence":"additional","affiliation":[{"name":"Korea Advanced Institute of Science and Technology"}]},{"given":"Joonwon","family":"Lee","sequence":"additional","affiliation":[{"name":"Sungkyunkwan University"}]},{"given":"Seungryoul","family":"Maeng","sequence":"additional","affiliation":[{"name":"Korea Advanced Institute of Science and Technology"}]}],"member":"320","published-online":{"date-parts":[[2013,3,21]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1535\/itj.1003.02"},{"key":"e_1_2_1_2_1","unstructured":"AMD. 2011. IOMMU architectural specification. http:\/\/support.amd.com\/us\/Processor_TechDocs\/48882. pdf.  AMD. 2011. IOMMU architectural specification. http:\/\/support.amd.com\/us\/Processor_TechDocs\/48882. pdf."},{"key":"e_1_2_1_3_1","volume-title":"Proceedings of OLS'07","author":"Ben-Yehuda M.","year":"2007","unstructured":"Ben-Yehuda , M. , Xenidis , J. , Ostrowski , M. , Rister , K. , Bruemmer , A. , and Van Doorn , L. 2007 . The price of safety: Evaluating IOMMU performance . In Proceedings of OLS'07 . 71--86. Ben-Yehuda, M., Xenidis, J., Ostrowski, M., Rister, K., Bruemmer, A., and Van Doorn, L. 2007. The price of safety: Evaluating IOMMU performance. In Proceedings of OLS'07. 71--86."},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/1064212.1064230"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1109\/40.296155"},{"key":"e_1_2_1_6_1","unstructured":"Corbet J. 2010. Contiguous memory allocation for drivers. http:\/\/lwn.net\/Articles\/396702\/.  Corbet J. 2010. Contiguous memory allocation for drivers. http:\/\/lwn.net\/Articles\/396702\/."},{"key":"e_1_2_1_7_1","unstructured":"Corbet J. 2011. A reworked contiguous memory allocator. http:\/\/lwn.net\/Articles\/446836\/.  Corbet J. 2011. A reworked contiguous memory allocator. http:\/\/lwn.net\/Articles\/446836\/."},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/1966445.1966468"},{"volume-title":"Proceedings of WIOV'08","author":"Dong Y.","key":"e_1_2_1_9_1","unstructured":"Dong , Y. , Yu , Z. , and Rose , G . 2008. SR-IOV networking in Xen: architecture, design and implementation . In Proceedings of WIOV'08 . USENIX Association, Berkeley, CA, 10--10. Dong, Y., Yu, Z., and Rose, G. 2008. SR-IOV networking in Xen: architecture, design and implementation. In Proceedings of WIOV'08. USENIX Association, Berkeley, CA, 10--10."},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/1814433.1814453"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.5555\/1128020.1128563"},{"volume-title":"Proceedings of OLS'04","author":"Hansen D.","key":"e_1_2_1_12_1","unstructured":"Hansen , D. , Kravetz , M. , and Christiansen , B . 2004. Hotplug memory and the Linux VM . In Proceedings of OLS'04 . Hansen, D., Kravetz, M., and Christiansen, B. 2004. Hotplug memory and the Linux VM. In Proceedings of OLS'04."},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISCE.2004.1375974"},{"key":"e_1_2_1_14_1","unstructured":"Intel. 2005. Intel dynamic video memory technology (DVMT) 3.0. http:\/\/download.intel.com\/design\/chipsets\/applnots\/30262305.pdf.  Intel. 2005. Intel dynamic video memory technology (DVMT) 3.0. http:\/\/download.intel.com\/design\/chipsets\/applnots\/30262305.pdf."},{"key":"e_1_2_1_15_1","volume-title":"Sysbench: A system performance benchmark","author":"Kopytov A.","year":"2004","unstructured":"Kopytov , A. 2004 . Sysbench: A system performance benchmark . http:\/\/sysbench.sourceforge.net\/. Kopytov, A. 2004. Sysbench: A system performance benchmark. http:\/\/sysbench.sourceforge.net\/."},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/1950365.1950387"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1109\/TC.2007.1008"},{"key":"e_1_2_1_18_1","volume-title":"Linux Kernel Development","author":"Love R.","unstructured":"Love , R. 2010. Linux Kernel Development 3 rd Ed. Addison Wesley . Love, R. 2010. Linux Kernel Development 3rd Ed. Addison Wesley.","edition":"3"},{"key":"e_1_2_1_19_1","unstructured":"Morrill D. 2008. Inside the Android application framework. Google I\/O.  Morrill D. 2008. Inside the Android application framework. Google I\/O."},{"key":"e_1_2_1_20_1","unstructured":"Nazarewicz M. 2010. Contiguous memory allocator version 6. http:\/\/lwn.net\/Articles\/419639\/.  Nazarewicz M. 2010. Contiguous memory allocator version 6. http:\/\/lwn.net\/Articles\/419639\/."},{"volume-title":"Proceedings of OLS'05","author":"Schopp J. H.","key":"e_1_2_1_21_1","unstructured":"Schopp , J. H. , Hansen , D. , Kravetz , M. , Takahashi , H. , Toshihiro , I. , Goto , Y. , Hiroyuki , K. , Tolentino , M. , and Picco , B . 2005. Hotplug memory redux . In Proceedings of OLS'05 . Schopp, J. H., Hansen, D., Kravetz, M., Takahashi, H., Toshihiro, I., Goto, Y., Hiroyuki, K., Tolentino, M., and Picco, B. 2005. Hotplug memory redux. In Proceedings of OLS'05."},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1109\/JPROC.2004.839622"},{"volume-title":"Proceedings of USENIX ATC'08","author":"Willmann P.","key":"e_1_2_1_23_1","unstructured":"Willmann , P. , Rixner , S. , and Cox , A. L . 2008. Protection strategies for direct access to virtualized I\/O devices . In Proceedings of USENIX ATC'08 . 15--28. Willmann, P., Rixner, S., and Cox, A. L. 2008. Protection strategies for direct access to virtualized I\/O devices. In Proceedings of USENIX ATC'08. 15--28."},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1815695.1815718"}],"container-title":["ACM Transactions on Embedded Computing Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2435227.2435239","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2435227.2435239","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T08:35:40Z","timestamp":1750235740000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2435227.2435239"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2013,3]]},"references-count":24,"journal-issue":{"issue":"1s","published-print":{"date-parts":[[2013,3]]}},"alternative-id":["10.1145\/2435227.2435239"],"URL":"https:\/\/doi.org\/10.1145\/2435227.2435239","relation":{},"ISSN":["1539-9087","1558-3465"],"issn-type":[{"type":"print","value":"1539-9087"},{"type":"electronic","value":"1558-3465"}],"subject":[],"published":{"date-parts":[[2013,3]]},"assertion":[{"value":"2011-06-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2012-03-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2013-03-21","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}