[英]How to modify android kernel process scheduler?
我想自己修改android調度程序“ CFS”。
我想為以啟發式或其他方式區分的用戶交互任務分配實時優先級。
因此,我只想修改android內核,構建修改后的內核並研究性能。
我怎樣才能做到這一點?
從安全的角度來看,修改Android的內核調度策略是不太可能的。 但是基於“實時”的各種功能,您始終可以使程序滿足以下要求:
一種。 響應速度:通過確保輸入回路盡可能高效,並始終盡可能快地響應輸入。 在Linux內核中,這是通過“自願搶占”完成的。
b。 低延遲:通過將每個作業盡可能細地拼湊在一起,以便可以將控制傳遞回去以響應輸入,或者在音頻的情況下,可以在時鍾的精確開始時發出控制(SCHED_DEADLINE調度)。 Android確實為此提供了一些API:
http://source.android.com/devices/audio/latency_design.html
通常,改變優先級並不是解決實時需求的理想選擇(例如,給一個進程更高的優先級可能會導致另一個進程的性能下降)。 實際完成的操作(例如,LynxOS,這是一種用於導彈系統的實時操作系統,不是Linux,但是其某些組件(如TCP / IP來自FreeBSD))是為了對系統進行調整,以使其在許多備用硬件容量。 因此,在LynxOS中,許多系統閾值限制都非常低,因此硬件總是足夠自由以對輸入事件做出快速響應。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.