Halaman ini menjelaskan subset antarmuka kernel Linux yang diandalkan Android agar berfungsi dengan baik. Kehadiran dan kebenaran antarmuka ini diuji sebagai bagian dari Vendor Test Suite (VTS) . Subset ini akan berkembang seiring berjalannya waktu untuk memuat porsi antarmuka kernel Android yang lebih besar.
Panggilan sistem
Semua panggilan sistem diharapkan memberikan tanda tangan dan semantik yang sama seperti pada kernel Linux upstream pada versi yang sama.
prctl
Selain operasi prctl
upstream untuk versi kernel yang didukung, Android mengandalkan operasi prctl
tambahan, yang implementasinya dapat ditemukan di kernel android-common.
PR_SET_TIMERSLACK_PID PR_SET_VMA
Sistem file
Kernel Linux mengekspor antarmuka melalui beberapa sistem file. Android mengharapkan antarmuka ini mengkomunikasikan informasi yang sama, dalam format yang sama, dan menyediakan semantik yang sama seperti pada kernel Linux upstream. Untuk antarmuka yang tidak ada di bagian hulu, perilaku yang sesuai ditentukan oleh cabang kernel umum Android yang sesuai.
procfs
Antarmuka | Keterangan |
---|---|
/proc/suara/ | File hanya-baca yang menampilkan daftar driver ALSA yang dikonfigurasi saat ini. |
/proc/cmdline | File hanya-baca yang berisi argumen baris perintah yang diteruskan ke kernel. |
/proc/config.gz | File hanya-baca yang berisi konfigurasi build kernel. |
/proc/cpuinfo | File hanya-baca yang berisi detail CPU khusus arsitektur. |
/proc/diskstats | File hanya-baca yang menampilkan statistik I/O perangkat blok. |
/proc/sistem file | Daftar file read-only, daftar filesystem yang saat ini didukung oleh kernel. |
/proc/kmsg | File hanya-baca yang menampilkan pesan kernel secara real-time. |
/proc/loadavg | File hanya-baca yang menunjukkan rata-rata beban CPU dan IO dari waktu ke waktu. |
/proc/meminfo | File hanya-baca yang menampilkan detail subsistem memori. |
/proc/lain-lain | File read-only berisi daftar driver lain-lain yang terdaftar pada perangkat utama lain-lain. |
/proc/modules | File hanya-baca yang berisi informasi tentang modul kernel yang dimuat. |
/proc/mount | Symlink ke /proc/self/mounts , yang merupakan file read-only yang mencantumkan informasi tentang sistem file yang dipasang. |
/proc/net | Direktori yang berisi berbagai parameter tumpukan jaringan. |
/proc/net/xt_qtaguid/ | File baca-tulis yang memberikan informasi tentang soket yang diberi tag. |
/proc/pagetypeinfo | File hanya-baca yang berisi informasi pengalokasi halaman. |
/proc/stat | File hanya-baca yang berisi berbagai statistik kernel dan sistem. |
/proc/swap | File hanya-baca yang menunjukkan pemanfaatan ruang swap. File ini opsional; konten dan izinnya akan diverifikasi di VTS hanya jika file tersebut ada . |
/proc/sys/abi/swp | File baca-tulis yang menentukan perilaku SWP instruksi ARM yang sudah usang. |
/proc/sys/fs/pipe-max-size | File baca-tulis yang melaporkan ukuran maksimum, dalam byte, dari buffer pipa individual. |
/proc/sys/fs/protected_hardlinks | File baca-tulis yang mengontrol perilaku pembuatan tautan keras. |
/proc/sys/fs/protected_symlinks | File baca-tulis yang mengontrol perilaku pembuatan tautan simbolik. |
/proc/sys/fs/suid_dumpable | File baca-tulis yang mengontrol mode dump inti untuk setuid atau biner yang dilindungi/tercemar. |
/proc/sys/kernel/core_pattern | File baca-tulis yang menentukan pola nama file core dump. |
/proc/sys/kernel/core_pipe_limit | File baca-tulis yang menentukan berapa banyak proses mogok bersamaan yang dapat disalurkan ke aplikasi pengguna secara paralel. |
/proc/sys/kernel/dmesg_restrict | File baca-tulis yang mengontrol apakah pengguna yang tidak memiliki hak istimewa dapat mengakses dmesg. |
/proc/sys/kernel/namadomain | File baca-tulis yang berisi nama domain YP/NIS sistem. |
/proc/sys/kernel/nama host | File baca-tulis yang menentukan nama host sistem. |
/proc/sys/kernel/hung_task_timeout_secs | File baca-tulis yang mengontrol batas waktu yang digunakan untuk menentukan kapan suatu tugas menjadi tidak responsif dan harus dianggap terhenti. File ini opsional; konten dan izinnya akan diverifikasi di VTS hanya jika file tersebut ada . |
/proc/sys/kernel/kptr_restrict | File baca-tulis yang menentukan apakah pointer kernel dicetak dalam file proc dan antarmuka lainnya. |
/proc/sys/kernel/modules_disabled | File baca-tulis yang mengontrol apakah modul kernel dapat dimuat. |
/proc/sys/kernel/panic_on_oops | File baca-tulis yang mengontrol perilaku kernel pada ups. |
/proc/sys/kernel/perf_event_max_sample_rate | File baca-tulis yang mengontrol laju sampel maksimum peristiwa kinerja. |
/proc/sys/kernel/perf_event_paranoid | File baca-tulis yang mengontrol penggunaan sistem peristiwa kinerja oleh pengguna yang tidak memiliki hak istimewa. |
/proc/sys/kernel/pid_max | File baca-tulis yang berisi nilai bungkus alokasi PID. |
/proc/sys/kernel/random/boot_id | File read-only yang berisi ID acak baru pada setiap boot. |
/proc/sys/kernel/randomize_va_space | File baca-tulis yang menentukan kebijakan pengacakan tata letak alamat untuk sistem. |
/proc/sys/kernel/sched_child_runs_first | File baca-tulis yang mengontrol apakah tugas yang baru dicabang lebih disukai dalam penjadwalan dibandingkan tugas induknya. |
/proc/sys/kernel/sched_latency_ns | File baca-tulis yang berisi latensi maksimum, dalam nanodetik, tugas mungkin dilakukan sebelum dijadwalkan. |
/proc/sys/kernel/sched_rt_period_us | File baca-tulis yang berisi panjang periode yang digunakan oleh batas eksekusi RT seluruh sistem dalam mikrodetik. |
/proc/sys/kernel/sched_rt_runtime_us | File baca-tulis yang berisi jumlah waktu, relatif terhadap sched_rt_period_us, di mana sistem dapat menjalankan tugas RT. |
/proc/sys/kernel/sched_tunable_scaling | File baca-tulis yang mengontrol apakah sched_latency_ns harus disesuaikan secara otomatis oleh penjadwal berdasarkan jumlah CPU. |
/proc/sys/kernel/sched_wakeup_granularity_ns | File baca-tulis yang berisi jumlah waktu proses virtual yang harus dimiliki tugas A dibandingkan tugas B dalam nanodetik agar tugas B dapat mendahuluinya. |
/proc/sys/kernel/sysrq | File baca-tulis yang mengontrol fungsi yang diizinkan untuk dipanggil melalui kunci sysrq. |
/proc/sistem/net/* | Direktori yang berisi berbagai parameter tumpukan jaringan. |
/proc/sysrq-trigger | File hanya tulis yang dapat digunakan untuk memulai fungsi sysrq. |
/proc/sys/vm/dirty_background_ratio | File baca-tulis yang berisi, sebagai persentase dari total memori yang tersedia (halaman bebas dan halaman yang dapat diklaim kembali), jumlah halaman di mana thread kernel flusher latar belakang akan mulai menulis data kotor. |
/proc/sys/vm/dirty_expire_centisecs | File baca-tulis yang menentukan kapan data kotor sudah cukup umur untuk memenuhi syarat untuk ditulis oleh thread kernel flusher. |
/proc/sys/vm/drop_caches | File baca-tulis yang dapat digunakan untuk memaksa kernel membuang cache yang bersih. |
/proc/sys/vm/extra_free_kbytes | File baca-tulis yang dapat digunakan untuk menyimpan memori bebas ekstra antara ambang batas saat pengambilan kembali latar belakang (kswapd) dimulai, dan ambang batas saat pengambilan kembali langsung (dengan mengalokasikan proses) dimulai. File ini bersifat opsional; konten dan izinnya akan diverifikasi di VTS hanya jika file tersebut ada . |
/proc/sys/vm/max_map_count | File baca-tulis yang berisi jumlah maksimum area peta memori yang mungkin dimiliki suatu proses. |
/proc/sys/vm/mmap_min_addr | File baca-tulis yang menentukan alamat minimum yang dapat mmap 'd. |
/proc/sys/vm/mmap_rnd_bits | File baca-tulis yang menentukan jumlah keacakan di alamat mmap . |
/proc/sys/vm/mmap_rnd_compat_bits | File baca-tulis yang menentukan jumlah keacakan di alamat mmap . |
/proc/sys/vm/overcommit_memory | File baca-tulis yang menentukan mode penghitungan memori virtual kernel. |
/proc/sys/vm/page-cluster | File baca-tulis yang mengontrol jumlah halaman hingga halaman berturut-turut dibaca dari swap dalam satu upaya. |
/proc/uid_cputime/remove_uid_range | File hanya-tulis yang, ketika ditulis, menghapus UID agar tidak ditampilkan di /proc/uid_cputime/show_uid_stat . |
/proc/uid_cputime/show_uid_stat | File hanya-baca yang berisi waktu yang dihabiskan proses UID di ruang pengguna dan kernel. |
/proc/uid_io/stats | File hanya-baca yang berisi daftar statistik I/O untuk setiap UID dalam sistem |
/proc/uid_procstat/set | File hanya tulis yang digunakan untuk mengonfigurasi UID sebagai latar depan atau latar belakang. |
/proc/uid_time_in_state | File hanya-baca yang berisi waktu yang dihabiskan setiap proses UID untuk mengeksekusi pada setiap frekuensi yang tersedia. File ini opsional; konten dan izinnya akan diverifikasi di VTS hanya jika file tersebut ada . |
/proc/waktu aktif | File read-only yang menunjukkan berapa lama sistem telah berjalan. |
/proc/version | File hanya-baca yang berisi string yang menjelaskan versi kernel. |
/proc/vmallocinfo | File hanya-baca yang berisi rentang vmalloc 'd. |
/proc/vmstat | File read-only yang berisi statistik memori virtual dari kernel. |
/proc/zoneinfo | File hanya-baca yang berisi informasi tentang zona memori. |
dev
Antarmuka | Keterangan |
---|---|
/dev/ashmem | File perangkat memori bersama anonim. |
/dev/binder | File perangkat pengikat. |
/dev/hwbinder | File perangkat pengikat perangkat keras. |
/dev/tun | File perangkat TUN/TAP universal. |
/dev/xt_qtaguid | File perangkat netfilter QTAGUID. |
sysfs
Antarmuka | Keterangan |
---|---|
/sys/class/net/*/mtu | File baca-tulis yang berisi unit transmisi maksimum untuk setiap antarmuka. |
/sys/class/rtc/*/hctosys | File hanya-baca yang menunjukkan apakah rtc tertentu menyediakan waktu sistem saat boot dan melanjutkan. |
/sys/perangkat/sistem/cpu/ | Direktori yang berisi informasi tentang konfigurasi dan frekuensi CPU. |
/sys/kernel/wakeup_reasons | Direktori file read-only yang berisi waktu penangguhan terakhir dan alasan melanjutkan. |
/sys/power/state | File baca-tulis yang mengontrol status tidur sistem. |
/sys/power/wake_lock | File baca-tulis yang berisi penguncian layar aktif saat aktif. |
/sys/power/wake_unlock | File baca-tulis yang berisi penguncian layar aktif non-aktif. |
/sys/power/wakeup_count | File baca-tulis yang dapat digunakan untuk mengalihkan sistem ke kondisi tidur sambil memperhitungkan kedatangan peristiwa bangun secara bersamaan. |
selinuxfs
Kerangka kerja ini memasang selinuxfs
di /sys/fs/selinux
.
Jalur | Keterangan |
---|---|
/sys/fs/selinux/checkreqprot | File baca/tulis yang berisi flag biner yang menentukan bagaimana perlindungan selinux diperiksa pada panggilan mmap dan mprotect . |
/sys/fs/selinux/null | Baca/tulis perangkat null untuk digunakan oleh selinux. |
/sys/fs/selinux/policy | File read-only yang berisi kebijakan selinux dalam bentuk biner. |