Apli­ka­cja cały czas w ramie

Czę­sto mamy tak, że chce­my mieć jaką­kol­wiek apli­ka­cję napraw­dę zawsze w pamię­ci RAM. Jest to na przy­kład laun­cher. Opi­szę, jak to usta­wić. Wyma­ga to conajm­niej roota i emu­la­to­ra ter­mi­na­la.

1.Potrzebujemy nume­ru PID, jakie­go aku­rat uży­wa apli­ka­cja. Znam na to 2 spo­so­by:

1a. komen­da: # pro­crank
i w spi­sie pro­ce­sów szu­ka­my tego, do któ­re­go chce­my się dobrać i zmie­nić mu prio­ry­tet. W pierw­szej kolum­nie będzie numer PID, nazwa apli­ka­cji będzie w ostat­niej kolum­nie.

1b. komen­da: $ ps | grep [nazwa_pakietu_aplikacji]
nie wyma­ga roota ani Busy­bo­xa, więc pew­nie będzie łatwiej­sza dla więk­szo­ści osób.

2.Wpisujemy pole­ce­nie: echo [pożądany_priorytet] > /proc/[numerPID]/oom_adj & chmod 444 /proc/[numerPID]/oom_adj

3. Aby spraw­dzić, czy się nam uda­ło, wpi­su­je­my: cat /proc/[numerPID]/oom_adj War­tość powin­na się zga­dzać z tą, któ­rą chcie­li­śmy usta­lić. Ten krok moc­na pomi­nąć.

Goto­we, może­my uży­wać od -17 do 17, ale oso­bi­ście nie uży­wam zwy­kle war­to­ści na minu­sie, powo­do­wa­ły jakieś pro­ble­my. Prio­ry­tet jest usta­wio­ny tyl­ko do cza­su następ­ne­go włą­cze­nia apki, czy­li w przy­pad­ku laun­che­ra zapew­ne do restar­tu tele­fo­nu. Spró­bu­ję opi­sać takie­go coś, żeby w init.d był skrypt, któ­ry to wyko­nu­je co rebo­ot.