डिवाइस शेड्यूलिंग मॉड्यूल में ऐसा लॉजिक होता है जिससे यह पता चलता है कि डिवाइस कुछ समय से इस्तेमाल में नहीं है या नहीं. साथ ही, यह भी पता चलता है कि डिवाइस को बिना किसी रुकावट के फिर चालू किया जा सकता है या नहीं.
यह मॉड्यूल, सॉफ़्टवेयर अपडेट के इस्तेमाल की दर को बेहतर बनाता है. इसके लिए, यह इंस्टॉलर को रीबूट करने की तैयारी का भरोसेमंद सिग्नल देता है. रीबूट करने की सुविधा से जुड़ा भरोसेमंद सिग्नल, इंस्टॉलर को अपडेट लागू करने के लिए डिवाइस को रीबूट करने की सुविधा देता है. इससे उन्हें यह पता चलता है कि अपडेट की वजह से उपयोगकर्ता को कोई परेशानी नहीं हुई है.
डिवाइस के इस्तेमाल में न होने पर, उसे अपने-आप रीबूट होने की सुविधा चालू करने से, डिवाइस को तेज़ी से अपडेट किया जा सकता है. ऐसा तब होता है, जब डिवाइस को अपने-आप रीबूट होने के लिए इंतज़ार किया जाता है. अपडेट लागू होने में लगने वाला समय कम होने से, उपयोगकर्ताओं को ज़रूरी फ़िक्स जल्दी मिल जाते हैं. इससे उनके डिवाइस की परफ़ॉर्मेंस बेहतर होती है. अपडेट को तेज़ी से अपनाने से, रिग्रेशन का पता भी जल्दी चल जाता है.
इस लॉजिक को अपडेट किया जा सकता है, क्योंकि किसी डिवाइस को रीबूट करने के लिए तैयार है या नहीं, यह तय करने के लिए कई शर्तों को ध्यान में रखना होता है. ये शर्तें समय के साथ बदल सकती हैं. इसलिए, इस लॉजिक को अपडेट करने की सुविधा से यह पक्का किया जा सकता है कि रीबूट करने की सुविधा से जुड़ा सिग्नल मान्य बना रहे.
मॉड्यूल की सीमा
Android 12 में, इस मॉड्यूल में कोड मौजूद होता है. यह कोड, यहां दी गई नई डायरेक्ट्री में होता है:
packages/modules/Scheduling
पैकेज का फ़ॉर्मैट
डिवाइस शेड्यूलिंग मॉड्यूल (com.android.scheduling) को APEX पैकेज के तौर पर शिप किया जाता है.
इस मॉड्यूल में दो JAR फ़ाइलें शामिल हैं:
framework-scheduling.jar:इसमें वह एपीआई प्लैटफ़ॉर्म होता है जिससे इंस्टॉलर इंटरैक्ट करता है. यहbootclasspathका हिस्सा है.service-scheduling.jar: इसमें नई सिस्टम सेवा,RebootReadinessManagerServiceशामिल है. इसे सिस्टम सर्वर प्रोसेस से लोड किया जाता है.
डिपेंडेंसी
इस मॉड्यूल में कोई बाहरी डिपेंडेंसी नहीं है.