<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Комментарии на сайте Немного здорового бреда</title>
	<atom:link href="http://tamerlan311.ru/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://tamerlan311.ru</link>
	<description>Очередной блог на WordPress</description>
	<lastBuildDate>Wed, 16 Mar 2011 18:48:45 +0300</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Комментарий к записи Разбор memorykiller механизма в Android (R.I.G.)</title>
		<link>http://tamerlan311.ru/2011/03/12/razbor-memorykiller-mexanizma-v-android/comment-page-1/#comment-250</link>
		<dc:creator>R.I.G.</dc:creator>
		<pubDate>Wed, 16 Mar 2011 18:48:45 +0000</pubDate>
		<guid isPermaLink="false">http://tamerlan311.ru/?p=239#comment-250</guid>
		<description>То что пересобирать все пакеты придется это я понимаю, только не понял их подписывать еще надо или нет, еще погуглю на эту тему. Кстати что меня удивило - название переменных в декомпилированном фреймворке (smali файлах) остались те же самые как в исходниках. Есть еще мысль собрать services.jar в который входит ActivityManagerService.java, незнаю пока как.

А этот лимит в 15 приложений это вообще плохая затея. Потому что в список этих приложений входят сервисы, системные процессы, контент-провайдеры и пр: звонилка, контакты, сообщения, оболчка Sense и т.д.) В результате даже без пользовательских приложений набирается даже больше 15-ти и получаем такую фигню (в logcat):

I/ActivityManager(  155): No longer want com.android.vending (pid 13822): hidden #16

W/ActivityManager(  155): Scheduling restart of crashed service com.android.vending/.licensing.LicensingService in 14944ms

I/ActivityManager(  155): No longer want com.maxmpz.audioplayer (pid 13813): hidden #16

W/ActivityManager(  155): Scheduling restart of crashed service com.maxmpz.audioplayer/.player.HeadsetMicroService in 14879ms

Система убивает сервисы, которые затем сразу же перезапускаются, и этот процесс похоже бесконечен. 
Ну и с пользовательской точки зрения неудобства: например в android 2.1 открытые в браузере вкладки и их содержимое хранилось в памяти ну очень долго, если не бесконечно, бывали случаи когда я через неделю открывал браузер и там всё было ровно на том месте где я в прошлый раз остановился. Сейчас на 2.2 через час-два браузер всё &quot;забывает&quot;, да и не только он, стандартный сенсовский плеер тоже быстро забывал позицию воспроизведения, меня это особенно раздражало - слушаю длинные сеты. Заменил его на poweramp - он сохраняет позицию в своих настройках, и даже после убийства процесса воспроизводит с прошлой позиции. 
Мессенджеры опять же, если зайти в сеть, и свернуть приложение - через некоторое время процесс умирает, но не всегда.</description>
		<content:encoded><![CDATA[<p>То что пересобирать все пакеты придется это я понимаю, только не понял их подписывать еще надо или нет, еще погуглю на эту тему. Кстати что меня удивило &#8211; название переменных в декомпилированном фреймворке (smali файлах) остались те же самые как в исходниках. Есть еще мысль собрать services.jar в который входит ActivityManagerService.java, незнаю пока как.</p>
<p>А этот лимит в 15 приложений это вообще плохая затея. Потому что в список этих приложений входят сервисы, системные процессы, контент-провайдеры и пр: звонилка, контакты, сообщения, оболчка Sense и т.д.) В результате даже без пользовательских приложений набирается даже больше 15-ти и получаем такую фигню (в logcat):</p>
<p>I/ActivityManager(  155): No longer want com.android.vending (pid 13822): hidden #16</p>
<p>W/ActivityManager(  155): Scheduling restart of crashed service com.android.vending/.licensing.LicensingService in 14944ms</p>
<p>I/ActivityManager(  155): No longer want com.maxmpz.audioplayer (pid 13813): hidden #16</p>
<p>W/ActivityManager(  155): Scheduling restart of crashed service com.maxmpz.audioplayer/.player.HeadsetMicroService in 14879ms</p>
<p>Система убивает сервисы, которые затем сразу же перезапускаются, и этот процесс похоже бесконечен.<br />
Ну и с пользовательской точки зрения неудобства: например в android 2.1 открытые в браузере вкладки и их содержимое хранилось в памяти ну очень долго, если не бесконечно, бывали случаи когда я через неделю открывал браузер и там всё было ровно на том месте где я в прошлый раз остановился. Сейчас на 2.2 через час-два браузер всё &laquo;забывает&raquo;, да и не только он, стандартный сенсовский плеер тоже быстро забывал позицию воспроизведения, меня это особенно раздражало &#8211; слушаю длинные сеты. Заменил его на poweramp &#8211; он сохраняет позицию в своих настройках, и даже после убийства процесса воспроизводит с прошлой позиции.<br />
Мессенджеры опять же, если зайти в сеть, и свернуть приложение &#8211; через некоторое время процесс умирает, но не всегда.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Комментарий к записи Разбор memorykiller механизма в Android (tamerlan311)</title>
		<link>http://tamerlan311.ru/2011/03/12/razbor-memorykiller-mexanizma-v-android/comment-page-1/#comment-249</link>
		<dc:creator>tamerlan311</dc:creator>
		<pubDate>Tue, 15 Mar 2011 20:56:16 +0000</pubDate>
		<guid isPermaLink="false">http://tamerlan311.ru/?p=239#comment-249</guid>
		<description>Посмотрел, в ява части конечно всё довольно грустно....

Просто пропатчить фреймворк вам не удасться, придётся перебирать все пакеты фреймоврка и приложений - это долго и муторно.

Мне не совсем понятно чем не устраивает лимит на 15приложений которые висят и никак не используются? Как негативно это влияет на ходовые качества?</description>
		<content:encoded><![CDATA[<p>Посмотрел, в ява части конечно всё довольно грустно&#8230;.</p>
<p>Просто пропатчить фреймворк вам не удасться, придётся перебирать все пакеты фреймоврка и приложений &#8211; это долго и муторно.</p>
<p>Мне не совсем понятно чем не устраивает лимит на 15приложений которые висят и никак не используются? Как негативно это влияет на ходовые качества?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Комментарий к записи Разбор memorykiller механизма в Android (R.I.G.)</title>
		<link>http://tamerlan311.ru/2011/03/12/razbor-memorykiller-mexanizma-v-android/comment-page-1/#comment-248</link>
		<dc:creator>R.I.G.</dc:creator>
		<pubDate>Mon, 14 Mar 2011 14:29:17 +0000</pubDate>
		<guid isPermaLink="false">http://tamerlan311.ru/?p=239#comment-248</guid>
		<description>Кажется я разобрался почему система прибивает системные приложения в фоне. Смотрел в logcat момент когда происходит убивание процесса системой, и в этот момент в логе писалось что то вроде ActivityManager: No longer want %имя приложения%.
Поискал в исходниках ядра фразу &quot;No longer want&quot; - не нашел. 
Такая фраза есть в исходниках фреймворка, файл ActivityManagerService.java причем там есть переменная:

 318     // The maximum number of hidden processes we will keep around before
 319     // killing them; this is just a control to not let us go too crazy with
 320     // keeping around processes on devices with large amounts of RAM.
 321     static final int MAX_HIDDEN_APPS = 15;

Еще сравнил функционал ActivityManagerService.java от Froyo и от Eclair - в Eclair такого кода вообще нет (когда фреймворк убивает процесс).
Попробую разобрать фреймфорк и отредактировать параметр MAX_HIDDEN_APPS, но сомневаюсь что получится... Я так понимаю у HTC он модифицированный, и собрать из исходников не получится.

P.S. ссылка на ActivityManagerService.java из 2.2 - http://android.git.kernel.org/?p=platform/frameworks/base.git;a=blob;f=services/java/com/android/server/am/ActivityManagerService.java;h=0c11940b1b83f34b0d3a29e19c9ffa373b06440b;hb=refs/heads/froyo-release

из 2.1 - http://android.git.kernel.org/?p=platform/frameworks/base.git;a=blob;f=services/java/com/android/server/am/ActivityManagerService.java;h=20ccfdcbaaf0b13940880ba1ecfc72926eaa79ef;hb=refs/heads/eclair-release</description>
		<content:encoded><![CDATA[<p>Кажется я разобрался почему система прибивает системные приложения в фоне. Смотрел в logcat момент когда происходит убивание процесса системой, и в этот момент в логе писалось что то вроде ActivityManager: No longer want %имя приложения%.<br />
Поискал в исходниках ядра фразу &laquo;No longer want&raquo; &#8211; не нашел.<br />
Такая фраза есть в исходниках фреймворка, файл ActivityManagerService.java причем там есть переменная:</p>
<p> 318     // The maximum number of hidden processes we will keep around before<br />
 319     // killing them; this is just a control to not let us go too crazy with<br />
 320     // keeping around processes on devices with large amounts of RAM.<br />
 321     static final int MAX_HIDDEN_APPS = 15;</p>
<p>Еще сравнил функционал ActivityManagerService.java от Froyo и от Eclair &#8211; в Eclair такого кода вообще нет (когда фреймворк убивает процесс).<br />
Попробую разобрать фреймфорк и отредактировать параметр MAX_HIDDEN_APPS, но сомневаюсь что получится&#8230; Я так понимаю у HTC он модифицированный, и собрать из исходников не получится.</p>
<p>P.S. ссылка на ActivityManagerService.java из 2.2 &#8211; <a href="http://android.git.kernel.org/?p=platform/frameworks/base.git;a=blob;f=services/java/com/android/server/am/ActivityManagerService.java;h=0c11940b1b83f34b0d3a29e19c9ffa373b06440b;hb=refs/heads/froyo-release" rel="nofollow">http://android.git.kernel.org/?p=platform/frameworks/base.git;a=blob;f=services/java/com/android/server/am/ActivityManagerService.java;h=0c11940b1b83f34b0d3a29e19c9ffa373b06440b;hb=refs/heads/froyo-release</a></p>
<p>из 2.1 &#8211; <a href="http://android.git.kernel.org/?p=platform/frameworks/base.git;a=blob;f=services/java/com/android/server/am/ActivityManagerService.java;h=20ccfdcbaaf0b13940880ba1ecfc72926eaa79ef;hb=refs/heads/eclair-release" rel="nofollow">http://android.git.kernel.org/?p=platform/frameworks/base.git;a=blob;f=services/java/com/android/server/am/ActivityManagerService.java;h=20ccfdcbaaf0b13940880ba1ecfc72926eaa79ef;hb=refs/heads/eclair-release</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>Комментарий к записи Разбор memorykiller механизма в Android (R.I.G.)</title>
		<link>http://tamerlan311.ru/2011/03/12/razbor-memorykiller-mexanizma-v-android/comment-page-1/#comment-247</link>
		<dc:creator>R.I.G.</dc:creator>
		<pubDate>Sun, 13 Mar 2011 21:25:39 +0000</pubDate>
		<guid isPermaLink="false">http://tamerlan311.ru/?p=239#comment-247</guid>
		<description>Сейчас менеджер процессов в телефоне показывает свободной 107 Мб.
часть из cat /proc/zoneinfo :
 nr_free_pages 6739
 nr_file_pages 21467

в сумме 28206 или 110 Мб - что как раз соответствует показаниям менеджера процессов.

У меня HTC Legend, прошивка - модифицированная. Свапа нет. Ядро тоже модифицированное, но пробовал стоковое от HTC - та же фигня. Еще пробовал взять lowmemorykiller.c от ядра 2.1 версии и собрать с ним, но эффекта это не дало. Или я неправильно адаптировал lowmemorykiller от 2.1 - с языком С вообще не знаком, не программист я, раньше только баловался на дельфях :)</description>
		<content:encoded><![CDATA[<p>Сейчас менеджер процессов в телефоне показывает свободной 107 Мб.<br />
часть из cat /proc/zoneinfo :<br />
 nr_free_pages 6739<br />
 nr_file_pages 21467</p>
<p>в сумме 28206 или 110 Мб &#8211; что как раз соответствует показаниям менеджера процессов.</p>
<p>У меня HTC Legend, прошивка &#8211; модифицированная. Свапа нет. Ядро тоже модифицированное, но пробовал стоковое от HTC &#8211; та же фигня. Еще пробовал взять lowmemorykiller.c от ядра 2.1 версии и собрать с ним, но эффекта это не дало. Или я неправильно адаптировал lowmemorykiller от 2.1 &#8211; с языком С вообще не знаком, не программист я, раньше только баловался на дельфях <img src='http://tamerlan311.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Комментарий к записи Разбор memorykiller механизма в Android (tamerlan311)</title>
		<link>http://tamerlan311.ru/2011/03/12/razbor-memorykiller-mexanizma-v-android/comment-page-1/#comment-246</link>
		<dc:creator>tamerlan311</dc:creator>
		<pubDate>Sun, 13 Mar 2011 21:09:40 +0000</pubDate>
		<guid isPermaLink="false">http://tamerlan311.ru/?p=239#comment-246</guid>
		<description>Ну я бы не стал очень доверять показаниям менеджеров процессов, для меня большая загадка откуда они берут эти цифры.

Советую посмотреть доступную память там, где её смотрит сам мемори киллер (adb shell cat /proc/zoneinfo) или на худой конец adb shell free .

Еще хочу отметить что 6144 страницы это 24 мегабайта.

Какое устройство и какая прошивка у вас? Используется ли свап?

P.S. с управлением процессами во фреймворке я пока не разобрался до конца, там всё куда запутанней. Но насколько я понял фреймворк тоже имеет полномочия завершать приложения не дожидаясь пока это сделает мемори киллер, хотя не уверен до конца.</description>
		<content:encoded><![CDATA[<p>Ну я бы не стал очень доверять показаниям менеджеров процессов, для меня большая загадка откуда они берут эти цифры.</p>
<p>Советую посмотреть доступную память там, где её смотрит сам мемори киллер (adb shell cat /proc/zoneinfo) или на худой конец adb shell free .</p>
<p>Еще хочу отметить что 6144 страницы это 24 мегабайта.</p>
<p>Какое устройство и какая прошивка у вас? Используется ли свап?</p>
<p>P.S. с управлением процессами во фреймворке я пока не разобрался до конца, там всё куда запутанней. Но насколько я понял фреймворк тоже имеет полномочия завершать приложения не дожидаясь пока это сделает мемори киллер, хотя не уверен до конца.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Комментарий к записи Разбор memorykiller механизма в Android (R.I.G.)</title>
		<link>http://tamerlan311.ru/2011/03/12/razbor-memorykiller-mexanizma-v-android/comment-page-1/#comment-245</link>
		<dc:creator>R.I.G.</dc:creator>
		<pubDate>Sun, 13 Mar 2011 20:54:47 +0000</pubDate>
		<guid isPermaLink="false">http://tamerlan311.ru/?p=239#comment-245</guid>
		<description>Очень интересная статья. Как раз сейчас пытаюсь исправить слишком агрессивный (такой стал после обновления Android 2.1 -&gt; 2.2) memorykiller. Он прибивает висящие в фоне и нужные процессы, хотя памяти достаточно (в minfree 1536, 2048, 4096, 5120, 5632, 6144 а различные мониторы и менеджеры процессов на телефоне показывают свободной памяти около 100 мб, и такой размер система постоянно держит свободным). Такое ощущение что неправильно определяется свободной памяти. Интересно, а этот модуль сам определяет,что мало памяти и надо какие то приложения прибивать, или другой модуль определяет что памяти мало и запускает memorykiller?</description>
		<content:encoded><![CDATA[<p>Очень интересная статья. Как раз сейчас пытаюсь исправить слишком агрессивный (такой стал после обновления Android 2.1 -&gt; 2.2) memorykiller. Он прибивает висящие в фоне и нужные процессы, хотя памяти достаточно (в minfree 1536, 2048, 4096, 5120, 5632, 6144 а различные мониторы и менеджеры процессов на телефоне показывают свободной памяти около 100 мб, и такой размер система постоянно держит свободным). Такое ощущение что неправильно определяется свободной памяти. Интересно, а этот модуль сам определяет,что мало памяти и надо какие то приложения прибивать, или другой модуль определяет что памяти мало и запускает memorykiller?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Комментарий к записи Системы искусственного интеллекта. (nekro20)</title>
		<link>http://tamerlan311.ru/2009/04/07/sistemy-iskusstvennogo-intellekta/comment-page-1/#comment-210</link>
		<dc:creator>nekro20</dc:creator>
		<pubDate>Tue, 07 Apr 2009 08:50:52 +0000</pubDate>
		<guid isPermaLink="false">http://tamerlan311.ru/?p=171#comment-210</guid>
		<description>ты на конференции задвинь про Г1 и вербуй вербуй... =)</description>
		<content:encoded><![CDATA[<p>ты на конференции задвинь про Г1 и вербуй вербуй&#8230; =)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Комментарий к записи Системы искусственного интеллекта. (lex-bystroff)</title>
		<link>http://tamerlan311.ru/2009/04/07/sistemy-iskusstvennogo-intellekta/comment-page-1/#comment-209</link>
		<dc:creator>lex-bystroff</dc:creator>
		<pubDate>Tue, 07 Apr 2009 05:56:21 +0000</pubDate>
		<guid isPermaLink="false">http://tamerlan311.ru/?p=171#comment-209</guid>
		<description>А зря, тех поддержка была бы рада, если бы самю тупую работу типа ребута модема и проверки средств на лицевом счету абонеты делали бы сами, без звонка в саппорт :)

а внешний вид он много значит, но это нужно курить специальную литературу и данной работе это действительно не принципиально</description>
		<content:encoded><![CDATA[<p>А зря, тех поддержка была бы рада, если бы самю тупую работу типа ребута модема и проверки средств на лицевом счету абонеты делали бы сами, без звонка в саппорт <img src='http://tamerlan311.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>а внешний вид он много значит, но это нужно курить специальную литературу и данной работе это действительно не принципиально</p>
]]></content:encoded>
	</item>
	<item>
		<title>Комментарий к записи Системы искусственного интеллекта. (timyr-lan.livejournal.com/)</title>
		<link>http://tamerlan311.ru/2009/04/07/sistemy-iskusstvennogo-intellekta/comment-page-1/#comment-208</link>
		<dc:creator>timyr-lan.livejournal.com/</dc:creator>
		<pubDate>Tue, 07 Apr 2009 05:27:37 +0000</pubDate>
		<guid isPermaLink="false">http://tamerlan311.ru/?p=171#comment-208</guid>
		<description>Ну времени и желания на проработку базы вопросов у меня небыло совершенно. Вся база наодится в текстовом виде в файле landiag.pl

Исходя из внешнего вида посчитал что неопределенный ответ должен находится между определенными. Помойму это не сильно принципиально. Тем более в продакшн это поделие никто толкать не собирается.</description>
		<content:encoded><![CDATA[<p>Ну времени и желания на проработку базы вопросов у меня небыло совершенно. Вся база наодится в текстовом виде в файле landiag.pl</p>
<p>Исходя из внешнего вида посчитал что неопределенный ответ должен находится между определенными. Помойму это не сильно принципиально. Тем более в продакшн это поделие никто толкать не собирается.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Комментарий к записи Системы искусственного интеллекта. (lex-bystroff)</title>
		<link>http://tamerlan311.ru/2009/04/07/sistemy-iskusstvennogo-intellekta/comment-page-1/#comment-207</link>
		<dc:creator>lex-bystroff</dc:creator>
		<pubDate>Tue, 07 Apr 2009 05:11:50 +0000</pubDate>
		<guid isPermaLink="false">http://tamerlan311.ru/?p=171#comment-207</guid>
		<description>Леш, при всем уваженивопросы в разделе &#039;параметры поиска&#039; либо знают, либо не удовлетворятся ответами в &#039;возможные проблемами&#039; и &#039;решения&#039;. И ещё почему ответ &quot;не знаю&quot; находится между &quot;да&quot; и &quot;нет&quot;, вроде везде пишут  &quot;да нет не знаю&quot;</description>
		<content:encoded><![CDATA[<p>Леш, при всем уваженивопросы в разделе &#8216;параметры поиска&#8217; либо знают, либо не удовлетворятся ответами в &#8216;возможные проблемами&#8217; и &#8216;решения&#8217;. И ещё почему ответ &laquo;не знаю&raquo; находится между &laquo;да&raquo; и &laquo;нет&raquo;, вроде везде пишут  &laquo;да нет не знаю&raquo;</p>
]]></content:encoded>
	</item>
</channel>
</rss>

