<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Linux User Group of Mauritius &#187; proc</title>
	<atom:link href="http://lugm.org/tag/proc/feed/" rel="self" type="application/rss+xml" />
	<link>http://lugm.org</link>
	<description>Promoting open source software in our beautiful island</description>
	<lastBuildDate>Wed, 25 Jan 2012 19:44:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>Se la jouer avec la VM linux</title>
		<link>http://lugm.org/2011/02/18/se-la-jouer-avec-la-vm-linux/</link>
		<comments>http://lugm.org/2011/02/18/se-la-jouer-avec-la-vm-linux/#comments</comments>
		<pubDate>Fri, 18 Feb 2011 12:18:38 +0000</pubDate>
		<dc:creator>Dominique Derrier</dc:creator>
				<category><![CDATA[Tip]]></category>
		<category><![CDATA[cache]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[memory]]></category>
		<category><![CDATA[proc]]></category>
		<category><![CDATA[vm]]></category>

		<guid isPermaLink="false">http://lugm.org/?p=483</guid>
		<description><![CDATA[Source: http://blog.nasa.fr/wp/linux/2011-02-18/se-la-jouer-avec-la-vm-linux/ Vous voulez jouer au malin avec la gestion Virtual Memory de linux... Ce tips est pour vous. Il permet de vider la mémoire cache et avoir de la mémoire libre. Mais j'entends au fond de la salle : qu'est-ce qui est dans le cache ? Et bien facile, mon ptit gars... il va [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-608" title="linux-memory" src="http://blog.nasa.fr/wp/wp-content/uploads/linux-memory.jpg" alt="linux virtual memory" width="200" height="200" /><br />
Source: <a href="http://blog.nasa.fr/wp/linux/2011-02-18/se-la-jouer-avec-la-vm-linux/">http://blog.nasa.fr/wp/linux/2011-02-18/se-la-jouer-avec-la-vm-linux/</a></p>
<p>Vous voulez jouer au malin avec la gestion Virtual Memory de linux... Ce tips est pour vous. Il permet de vider la mémoire cache et avoir de la mémoire libre.</p>
<p>Mais j'entends au fond de la salle : qu'est-ce qui est dans le cache ?<br />
Et bien facile, mon ptit gars... il va contenir les fichiers qui sont extraits du disque avant d'être utilisés. Le but est d'accélérer l'accès lors d'une lecture suivante.<br />
<span id="more-483"></span><br />
Alors, oui cela ne sert pas à grand chose de vider le cache en mode de fonctionnement normal, car Linux sait gérer correctement le cache pour recycler et utiliser au besoin la mémoire en cas de besoin.</p>
<p>Mais rien ne vous empêche d'être un psychopathe et de vider le cache si:</p>
<ul>
<li>Vous n'utiliserez pas une nouvelle fois le programme ou les fichiers que vous venez d'ouvrir</li>
<li>Vous avez peur qu'on puisse lire le contenu de la mémoire.</li>
</ul>
<p>Cela a quand même le mérite d'illustrer le fonctionnement de linux.</p>
<p>#Pour libérer le cache:<br />
echo 1 > /proc/sys/vm/drop_caches<br />
#To free dentries and inodes:<br />
echo 2 > /proc/sys/vm/drop_caches<br />
#To free pagecache, dentries and inodes:<br />
echo 3 > /proc/sys/vm/drop_caches</p>
<p><img class="aligncenter size-full wp-image-599" title="free_cache" src="http://blog.nasa.fr/wp/wp-content/uploads/free_cache.png" alt="" width="497" height="187" /></p>
<p>Pour les petits malins, cela permet de s'assurer que les données sont bien hors de la mémoire... en général sur le disque. (Si jamais vous voulez tester votre grub via "quemu -hda /dev/sda")</p>
<p>il est à noter qu'il faut un kernel à partir de 2.6.16.</p>
<p>Si vous voulez aller plus loin, vous pouvez avoir quelques aperçus des possibilités sous linux ici:<br />
<a href="http://www.westnet.com/~gsmith/content/linux-pdflush.htm">http://www.westnet.com/~gsmith/content/linux-pdflush.htm</a><br />
<a href="http://www.linuxhowtos.org/System/Linux%20Memory%20Management.htm">http://www.linuxhowtos.org/System/Linux%20Memory%20Management.htm</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lugm.org/2011/02/18/se-la-jouer-avec-la-vm-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>/proc le coffre aux trésors</title>
		<link>http://lugm.org/2009/06/25/proc-le-coffre-aux-tresors/</link>
		<comments>http://lugm.org/2009/06/25/proc-le-coffre-aux-tresors/#comments</comments>
		<pubDate>Thu, 25 Jun 2009 13:40:24 +0000</pubDate>
		<dc:creator>Dominique Derrier</dc:creator>
				<category><![CDATA[Tip]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[OS]]></category>
		<category><![CDATA[proc]]></category>
		<category><![CDATA[systeme]]></category>

		<guid isPermaLink="false">http://lugm.org/?p=148</guid>
		<description><![CDATA[Autour du kernel, nous utilisons tous une foule de programmes pour récupérer les informations et utiliser notre système du mieux possible. Sous linux, toutes ces informations sont accessibles via /proc. Un peu de curiosité vous montrera les bijoux techniques qu'il est possible de récupérer. Processus /proc permet de connaitre tous les processus qui tournent sur [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://lugm.org/wp-content/uploads/2009/06/coffre_tresor.jpg" alt="coffre_tresor" title="coffre_tresor" width="64" height="57" class="alignleft size-full wp-image-186" />Autour du kernel, nous utilisons tous une foule de programmes pour récupérer les informations et utiliser notre système du mieux possible. Sous linux, toutes ces informations sont accessibles via /proc. Un peu de curiosité vous montrera les bijoux techniques qu'il est possible de récupérer.<br />
<span id="more-148"></span></p>
<h2>Processus</h2>
<p>/proc permet de connaitre tous les processus qui tournent sur la machine. Chaque chiffre correspond au PID de processus, à l'intérieur se trouvent toutes les informations concernant le programme.</p>
<ul>
<li><strong>exe</strong>: le nom de l'executable</li>
<li><strong>cmdline</strong>: les paramètres de lancement</li>
<li><strong>root</strong>: le chroot du programme</li>
<li><strong>environ</strong>: les variables d'environnement valables pour le programme.</li>
<li><strong>fd/</strong> la liste des fichiers ouverts.</li>
<li><strong>maps</strong>: les liens avec les bibliothèques</li>
<li><strong>status:</strong> informations Ram, User,...</li>
</ul>
<p>Si vous supprimez des fichiers en cours d'utilisation, il est possible de copier le fichier qui est dans /proc/$PID/fd/[numero].</p>
<p><code>cp /proc/1/exe  /tmp/init.recup</code></p>
<p>/!\ certains root-kit modifient la libproc et peuvent se masquer. Pour faire cela avec /proc il faut recompiler et rebooter le kernel: Ce qui est moins évident à faire.</p>
<h2>Informations Kernel</h2>
<p>Il n'y a pas que les processus mais tout ce qui se passe en "live" sur votre machine.</p>
<ul>
<li>la ram: <a href="file:///proc/meminfo">/proc/meminfo</a> (used,free, swap, commited...)</li>
<li>le cpu: <a href="file:///proc/cpuinfo">/proc/cpuinfo</a> (capacité de traitement, nombre,...)</li>
<li>le réseau: <a href="file:///proc/dev/net">/proc/dev/net </a></li>
<li>le kernel: <a href="file:///proc/kcore">/proc/kcore</a> (gdb /boot/vmlinuz /proc/kcore)</li>
<li>l'activité:  <a href="file:///proc/stat">/proc/stat</a></li>
<li>les disques: <a href="file:///proc/diskstats">/proc/diskstats</a></li>
</ul>
<p>La documentation se trouve dans les sources du kernel et si le coeur vous en dit vous pouvez aller faire un tour dans les fichiers.c pour créer ou adapter à vos besoins.</p>
<h2>Ecriture</h2>
<p>En écrivant dans certains fichiers, il est possible de régler les paramètres du kernel plus ou moins complexes... Pour ma part j'utilise davantage ceux qui concernent le réseau (nf_conntrack_max, ip_forward ...). Mais il y a shmall (pour la mémoire partagée), les sémaphores, swappiness ... group process ...</p>
<p>Dominique DERRIER</p>
<h3>Ref</h3>
<p><a href="file:///usr/src/linux/Documentation/filesystems/proc.txt">file:///usr/src/linux/Documentation/filesystems/proc.txt</a><br />
<a href="file:///usr/src/linux/Documentation/cgroups/cgroups.txt">file:///usr/src/linux/Documentation/cgroups/cgroups.txt</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lugm.org/2009/06/25/proc-le-coffre-aux-tresors/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

