متطلبات الواجهة

تصف هذه الصفحة مجموعة فرعية من واجهات Linux kernel التي يعتمد عليها Android ليعمل بشكل صحيح. يتم اختبار وجود وصحة هذه الواجهات كجزء من مجموعة اختبار البائع (VTS) . ستنمو هذه المجموعة الفرعية بمرور الوقت لتحتوي على جزء أكبر من واجهات Android kernel.

مكالمات النظام

من المتوقع أن توفر جميع استدعاءات النظام نفس التوقيعات والدلالات كما هو الحال في نواة Linux الأولية لنفس الإصدار.

prctl

بالإضافة إلى عمليات prctl الأولية لإصدارات kernel المدعومة، يعتمد Android على عمليات prctl إضافية، والتي يمكن العثور على تنفيذها في kernel android المشترك.

PR_SET_TIMERSLACK_PID
PR_SET_VMA

أنظمة الملفات

يقوم Linux kernel بتصدير الواجهات عبر العديد من أنظمة الملفات. يتوقع Android أن تقوم هذه الواجهات بتوصيل نفس المعلومات وبنفس التنسيق وتوفير نفس الدلالات كما هو الحال في نواة Linux الأولية. بالنسبة للواجهات غير الموجودة في المنبع، يتم تحديد السلوك المناسب بواسطة الفرع المقابل من نواة Android الشائعة.

com.procfs

واجهه المستخدم وصف
/بروك/الصوت/ ملف للقراءة فقط يعرض قائمة برامج تشغيل ALSA التي تم تكوينها حاليًا.
/proc/cmdline ملف للقراءة فقط يحتوي على وسيطات سطر الأوامر التي تم تمريرها إلى النواة.
/proc/config.gz ملف للقراءة فقط يحتوي على تكوين بناء kernel.
/proc/cpuinfo ملف للقراءة فقط يحتوي على تفاصيل وحدة المعالجة المركزية الخاصة بالهندسة المعمارية.
/proc/diskstats ملف للقراءة فقط يُظهر إحصائيات الإدخال/الإخراج لأجهزة الحظر.
/proc/أنظمة الملفات أنظمة الملفات التي تحتوي على قوائم للقراءة فقط والتي تدعمها النواة حاليًا.
/proc/kmsg ملف للقراءة فقط يُظهر رسائل kernel في الوقت الفعلي.
/proc/loadavg ملف للقراءة فقط يُظهر متوسط ​​تحميل وحدة المعالجة المركزية والإدخال/الإخراج بمرور الوقت.
/proc/meminfo ملف للقراءة فقط يُظهر تفاصيل النظام الفرعي للذاكرة.
/proc/misc ملف للقراءة فقط يسرد برامج التشغيل المتنوعة المسجلة على الجهاز الرئيسي المتنوع.
/proc/modules ملف للقراءة فقط يحتوي على معلومات حول وحدات kernel المحملة.
/proc/mounts رابط رمزي إلى /proc/self/mounts ، وهو ملف للقراءة فقط يسرد معلومات حول أنظمة الملفات المحملة.
/proc/net دليل يحتوي على مجموعة متنوعة من معلمات مكدس الشبكة.
/proc/net/xt_qtaguid/ ملف القراءة والكتابة الذي يوفر معلومات حول المقابس ذات العلامات.
/proc/pagetypeinfo ملف للقراءة فقط يحتوي على معلومات مخصص الصفحة.
/proc/stat ملف للقراءة فقط يحتوي على إحصائيات مختلفة للنواة والنظام.
/proc/swaps ملف للقراءة فقط يُظهر استخدام مساحة المبادلة. هذا الملف اختياري؛ سيتم التحقق من محتوياته وأذوناته في VTS فقط في حالة وجود الملف .
/proc/sys/abi/swp ملف القراءة والكتابة الذي يحدد سلوك تعليمات ARM المتقادمة SWP.
/proc/sys/fs/pipe-max-size ملف القراءة والكتابة الذي يُبلغ عن الحجم الأقصى، بالبايت، للمخزن المؤقت للأنبوب الفردي.
/proc/sys/fs/protected_hardlinks ملف القراءة والكتابة الذي يتحكم في سلوك إنشاء الروابط الثابتة.
/proc/sys/fs/protected_symlinks ملف القراءة والكتابة الذي يتحكم في سلوك إنشاء الروابط الرمزية.
/proc/sys/fs/suid_dumpable ملف القراءة والكتابة الذي يتحكم في وضع التفريغ الأساسي للثنائيات setuid أو المحمية/الملوثة.
/proc/sys/kernel/core_pattern ملف القراءة والكتابة الذي يحدد نمط اسم ملف التفريغ الأساسي.
/proc/sys/kernel/core_pipe_limit ملف القراءة والكتابة الذي يحدد عدد عمليات التعطل المتزامنة التي قد يتم نقلها إلى تطبيقات المستخدم بالتوازي.
/proc/sys/kernel/dmesg_restrict ملف القراءة والكتابة الذي يتحكم في إمكانية وصول المستخدمين غير المميزين إلى dmesg.
/proc/sys/kernel/domainname ملف القراءة والكتابة الذي يحتوي على اسم مجال YP/NIS للنظام.
/proc/sys/kernel/hostname ملف القراءة والكتابة الذي يحدد اسم المضيف للنظام.
/proc/sys/kernel/hung_task_timeout_secs ملف القراءة والكتابة الذي يتحكم في المهلة المستخدمة لتحديد متى تصبح المهمة غير مستجيبة ويجب اعتبارها معلقة. هذا الملف اختياري؛ سيتم التحقق من محتوياته وأذوناته في VTS فقط في حالة وجود الملف .
/proc/sys/kernel/kptr_restrict ملف القراءة والكتابة الذي يحدد ما إذا كانت مؤشرات kernel مطبوعة في ملفات proc والواجهات الأخرى.
/proc/sys/kernel/modules_disabled ملف القراءة والكتابة الذي يتحكم في إمكانية تحميل وحدات kernel.
/proc/sys/kernel/panic_on_oops ملف القراءة والكتابة الذي يتحكم في سلوك النواة عند عفوًا.
/proc/sys/kernel/perf_event_max_sample_rate ملف القراءة والكتابة الذي يتحكم في الحد الأقصى لمعدل أحداث الأداء.
/proc/sys/kernel/perf_event_paranoid ملف القراءة والكتابة الذي يتحكم في استخدام نظام أحداث الأداء من قبل المستخدمين غير المميزين.
/proc/sys/kernel/pid_max ملف القراءة والكتابة الذي يحتوي على قيمة التفاف تخصيص PID.
/proc/sys/kernel/random/boot_id ملف للقراءة فقط يحتوي على معرف عشوائي جديد في كل عملية تمهيد.
/proc/sys/kernel/randomize_va_space ملف القراءة والكتابة الذي يحدد سياسة التوزيع العشوائي لتخطيط العنوان للنظام.
/proc/sys/kernel/sched_child_runs_first ملف القراءة والكتابة الذي يتحكم في ما إذا كانت المهام المتشعبة حديثًا مفضلة في الجدولة على المهام الأصلية.
/proc/sys/kernel/sched_latency_ns ملف القراءة والكتابة الذي يحتوي على الحد الأقصى لزمن الوصول، بالنانو ثانية، الذي قد تحدثه المهمة قبل جدولتها.
/proc/sys/kernel/sched_rt_period_us ملف القراءة والكتابة الذي يحتوي على طول الفترة المستخدمة بواسطة حد تنفيذ RT على مستوى النظام بالميكروثانية.
/proc/sys/kernel/sched_rt_runtime_us ملف القراءة والكتابة الذي يحتوي على مقدار الوقت، بالنسبة إلى sched_rt_period_us، الذي قد يقوم فيه النظام بتنفيذ مهام RT.
/proc/sys/kernel/sched_tunable_scaling ملف القراءة والكتابة الذي يتحكم في ما إذا كان يجب ضبط sched_latency_ns تلقائيًا بواسطة المجدول بناءً على عدد وحدات المعالجة المركزية (CPUs).
/proc/sys/kernel/sched_wakeup_granularity_ns ملف القراءة والكتابة الذي يحتوي على المقدار الذي يجب أن تمتلكه مهمة وقت التشغيل الافتراضية A أكثر من المهمة B بالنانو ثانية حتى تتمكن المهمة B من استباقها.
/proc/sys/kernel/sysrq ملف القراءة والكتابة الذي يتحكم في الوظائف المسموح باستدعائها عبر مفتاح sysrq.
/بروك/سيس/نت/* دليل يحتوي على مجموعة متنوعة من معلمات مكدس الشبكة.
/proc/sysrq-trigger ملف للكتابة فقط يمكن استخدامه لبدء وظائف sysrq.
/proc/sys/vm/dirty_background_ratio ملف القراءة والكتابة الذي يحتوي، كنسبة مئوية من إجمالي الذاكرة المتوفرة (الصفحات المجانية والصفحات القابلة للاسترداد)، على عدد الصفحات التي ستبدأ عندها مؤشرات ترابط فلوشير kernel الخلفية في كتابة البيانات القذرة.
/proc/sys/vm/dirty_expire_centisecs ملف القراءة والكتابة الذي يحدد متى تصبح البيانات القذرة قديمة بما يكفي لتكون مؤهلة للكتابة بواسطة مؤشرات ترابط فلوشير kernel.
/proc/sys/vm/drop_caches ملف القراءة والكتابة الذي يمكن استخدامه لإجبار النواة على إسقاط ذاكرة التخزين المؤقت النظيفة.
/proc/sys/vm/extra_free_kbytes ملف القراءة والكتابة الذي يمكن استخدامه للاحتفاظ بذاكرة خالية إضافية بين العتبة التي تبدأ فيها استعادة الخلفية (kswapd)، والعتبة التي تبدأ فيها الاستعادة المباشرة (عن طريق تخصيص العمليات). هذا الملف اختياري؛ سيتم التحقق من محتوياته وأذوناته في VTS فقط في حالة وجود الملف .
/proc/sys/vm/max_map_count ملف القراءة والكتابة الذي يحتوي على الحد الأقصى لعدد مناطق خريطة الذاكرة التي قد تحتوي عليها العملية.
/proc/sys/vm/mmap_min_addr ملف القراءة والكتابة الذي يحدد الحد الأدنى للعنوان مما يمكن أن يكون mmap 'd.
/proc/sys/vm/mmap_rnd_bits ملف القراءة والكتابة الذي يحدد مقدار العشوائية في عناوين mmap 'd.
/proc/sys/vm/mmap_rnd_compat_bits ملف القراءة والكتابة الذي يحدد مقدار العشوائية في عناوين mmap 'd.
/proc/sys/vm/overcommit_memory ملف القراءة والكتابة الذي يحدد وضع محاسبة الذاكرة الظاهرية لـ kernel.
/proc/sys/vm/page-cluster ملف القراءة والكتابة الذي يتحكم في عدد الصفحات التي يتم حتى قراءة الصفحات المتتالية من المبادلة في محاولة واحدة.
/proc/uid_cputime/remove_uid_range ملف للكتابة فقط، عند كتابته، يزيل UIDs من الظهور في /proc/uid_cputime/show_uid_stat .
/proc/uid_cputime/show_uid_stat ملف للقراءة فقط يحتوي على الوقت الذي تستغرقه عمليات UID في مساحة المستخدم ومساحة kernel.
/proc/uid_io/stats ملف للقراءة فقط يحتوي على قائمة بإحصائيات الإدخال/الإخراج لكل UID في النظام
/proc/uid_procstat/set ملف للكتابة فقط يُستخدم لتكوين UID كمقدمة أو خلفية.
/proc/uid_time_in_state ملف للقراءة فقط يحتوي على الوقت الذي تقضيه كل عمليات UID في التنفيذ عند كل تردد متاح. هذا الملف اختياري؛ سيتم التحقق من محتوياته وأذوناته في VTS فقط في حالة وجود الملف .
/proc/uptime ملف للقراءة فقط يُظهر مدة تشغيل النظام.
/proc/version ملف للقراءة فقط يحتوي على سلسلة تصف إصدار النواة.
/proc/vmallocinfo ملف للقراءة فقط يحتوي على نطاقات vmalloc 'd.
/proc/vmstat ملف للقراءة فقط يحتوي على إحصائيات الذاكرة الافتراضية من النواة.
/proc/zoneinfo ملف للقراءة فقط يحتوي على معلومات حول مناطق الذاكرة.

ديف

واجهه المستخدم وصف
/dev/ashmem ملف جهاز الذاكرة المشتركة المجهول.
/dev/binder ملف الجهاز الموثق.
/dev/hwbinder ملف جهاز ربط الأجهزة.
/dev/tun ملف جهاز TUN/TAP العالمي.
/dev/xt_qtaguid ملف جهاز QTAGUID netfilter.

sysfs

واجهه المستخدم وصف
/sys/class/net/*/mtu ملف قراءة وكتابة يحتوي على الحد الأقصى لوحدة الإرسال لكل واجهة.
/sys/class/rtc/*/hctosys ملف للقراءة فقط يوضح ما إذا كان RTC معين يوفر وقت النظام عند التمهيد والاستئناف.
/sys/devices/system/cpu/ دليل يحتوي على معلومات حول تكوين وحدة المعالجة المركزية وتكرارها.
/sys/kernel/wakeup_reasons دليل الملفات للقراءة فقط التي تحتوي على آخر وقت تعليق وسبب الاستئناف.
/sys/power/state ملف القراءة والكتابة الذي يتحكم في حالات سكون النظام.
/sys/power/wake_lock ملف القراءة والكتابة الذي يحتوي على أقفال التنبيه النشطة.
/sys/power/wake_unlock ملف القراءة والكتابة الذي يحتوي على أقفال التنبيه غير النشطة.
/sys/power/wakeup_count ملف القراءة والكتابة الذي يمكن استخدامه لوضع النظام في حالة سكون مع مراعاة الوصول المتزامن لأحداث التنبيه.

com.selinuxfs

يقوم الإطار بتثبيت selinuxfs على /sys/fs/selinux .

طريق وصف
/sys/fs/selinux/checkreqprot ملف قراءة/كتابة يحتوي على علامة ثنائية تحدد كيفية التحقق من حماية selinux على مكالمات mmap و mprotect .
/sys/fs/selinux/null قراءة/كتابة جهاز فارغ للاستخدام بواسطة selinux.
/sys/fs/selinux/policy ملف للقراءة فقط يحتوي على سياسة selinux في شكل ثنائي.