Outils pour utilisateurs

Outils du site


numero61:tuto_libre_p._10-14

One of the great advantages of using Linux is that there are some great tools available to help you understand what is going on with your computer and diagnose possible problems. One of the most useful is the top command. I am going to cover some of the things you can do, and maybe mention one or two other commands as well. First of all, just to get it out of the way, there is an alternative called htop, and I do plan to cover it later. But htop generally needs to be installed before you can use it, while top should already be on your system, making it a good starting point. Usage of the command is simple: just open a terminal/console and type top. The result will be something like the image shown right. There is a lot of information on this screen, so it will take us a little time to go through all of the options. What you can see right away is that this is listing processes running on your computer, and you can see the Process ID for each one, how much RAM each one is using, what percentage of the CPU each one is using, the owner of each process, etc. Then you can see all sorts of cryptic numbers above this listing. We will cover all of it either in this article or one to follow, but to get there we need to get going!

Un des gros avantages de l'utilisation de Linux est que des outils géniaux sont disponibles pour vous aider à comprendre ce qui se passe dans votre ordinateur et à diagnostiquer des problèmes éventuels. Un des plus utiles est la commande top. Je vais parler de quelques-uns des trucs que vous pouvez faire avec et, peut-être, mentionner aussi une ou deux autres commandes.

Tout d'abord, histoire de s'en débarrasser tout de suite, il y a une commande alternative qui s'appelle htop et je compte bien en parler plus tard. Mais, en général, il faut installer htop avant de pouvoir l'utiliser, alors que top devrait se trouver sur votre système déjà, ce qui en fait un bon point de départ. Utiliser la commande est simple : il suffit d'ouvrir un terminal/console et de taper top. Quelque chose comme l'image montrée à droite en sera le résultat.

Il y a beaucoup d'informations sur cet écran et il nous faudra donc un peu de temps pour examiner toutes les options. Ce que vous constatez immédiatement, c'est que c'est une liste des processus s'exécutant sur votre ordinateur et vous pouvez voir la « Process ID » de chacun, combien de RAM est utilisée par chacun, quel pourcentage du CPU est utilisé par chacun, le propriétaire de chaque processus, etc. Et puis il y a toutes sortes de chiffres mystérieux au-dessus du listing. Nous allons traiter de tout cela soit dans cet article, soit dans un autre à venir, mais pour y arriver, il faut commencer !

CPU Usage By default, top lists processes in order of the amount of CPU each one is using, expressed as a percentage of the total available. This is important to know, since if your CPU is maxing out you will see degraded performance. This can show up as lags in responding to keyboard and/or mouse input, jerkiness on audio or video playback, etc. On my Kubuntu desktop, I have a side panel set up with monitors for CPU usage, CPU temperature, Memory usage, Swap usage, and network traffic - so that I can monitor these critical functions and prevent problems from getting out of hand. I have seen situations where the CPU usage maxed out at 100% and stayed there (usually as a result of Flash, which cannot die soon enough, but that is a rant for another day). When that happens, the top command lets me quickly check and see what application is problematic so I can kill it. One of the nice things about the top command is that it is interactive as long as you have it up in the terminal. So, you can kill a process quite easily by simply typing a k with the terminal open and top running. This will open a prompt above the process list asking you which process to kill. Just enter the Process ID of the misbehaving application and it will be gone. Now, if you are looking at the screenshot of top running on my computer you may have noticed something. I said that it gave the CPU usage as a percentage of the total. And if you looked carefully you might have seen that the percentages add up to more than 100%. How can that be, you ask? Well, the answer is that it is looking at these as percentages of the core that the process is running on. Since this computer is a dual-core machine, it has two processors and can distribute individual processes to whichever core it wishes. So I could theoretically see up to 200% if I added up the numbers here (though that would be bad since it would indicate I was maxed out). If I had a quad-core, I could have up to 400%, etc.

Utilisation du CPU

Par défaut, top liste les processus selon la quantité de processeur central utilisée par chacun, exprimée comme pourcentage du total disponible. C'est important de le savoir, puisque si votre processeur a atteint son maximum, vous constaterez une performance amoindrie. Cela peut se manifester comme des délais de réponse au clavier ou à la souris, du son ou de la vidéo haché, etc. Sur mon bureau Kubuntu, il y a un panneau sur le côté avec des moniteurs pour l'utilisation du CPU, sa température, l'utilisation de la RAM, de Swap et le trafic réseau, ce qui me permet de contrôler ces fonctions critiques et d'essayer de résoudre des problèmes avant qu'ils ne deviennent trop sérieux. J'ai vu des situations où l'utilisation du processeur était à 100 % et y est restée (généralement à cause de Flash, qui ne sait pas mourir assez tôt, mais j'en ferai la critique un autre jour). Quand cela arrive, la commande top me permet de vérifier rapidement quelle application est problématique et je peux ainsi la tuer.

Une des choses que j'aime dans la commande top, c'est qu'elle est interactive aussi longtemps qu'elle est affichée dans le terminal. Ainsi, vous pouvez tuer un processus très facilement si vous tapez un k pendant que le terminal est ouvert et top s'exécute. Cela affichera une invite au-dessus de la liste des processus vous demandant lequel il faut tuer. Il suffit alors de saisir la « Process ID » de l'application qui se conduit mal et elle disparaîtra.

Bien. Si vous êtes en train de regarder la capture d'écran de top lancé sur mon ordinateur, vous aurez peut-être remarqué quelque chose. J'ai dit qu'il donne l'utilisation du CPU comme pourcentage du total. Et si vous avez regardé attentivement, vous aurez pu voir que la somme des pourcentages fait plus de 100 %. Comment est-ce possible ? Eh bien, la réponse est qu'il traite ceux-ci comme des pourcentages du cœur sur lequel le processus est lancé. Puisque cet ordinateur est une machine à double cœur, il a deux processeurs et peut donner le processus qu'il veut à celui qu'il veut. Ainsi, théoriquement, je pourrais voir jusqu'à 200 % si je faisais la somme des chiffres affichés (mais ce serait mauvais, puisque cela voudrait dire que j'étais au maximum). Si j'avais un CPU à quatre cœurs, il pourrait y avoir jusqu'à 400 %, etc.

Priority and Niceness The idea of niceness is to determine which processes should get more goodies when running, and which should be put in the background. In other words, to set some priorities of access to the CPU. This is done by using a niceness number, which appears in the column NI. In the screen capture you see that all of these processes are running at a niceness number of 0. What that means is that they are running at a default priority which has not been altered in any way. Niceness numbers run from -20 to +19, with -20 being the highest priority. I said that 0 is the default, but you can check it on your system by running the command nice without any arguments. What is returned is the default niceness level. I will leave this topic here for now, but if you want to know more there is a good web page on this topic at http://www.ibm.com/developerworks/linux/library/l-lpic1-v3-103-6/. This article will explain how you can change niceness levels for certain processes if you wish to do so.

Priorité et « Niceness » (gentillesse)

L'idée derrière la « niceness » est de choisir quels processus devraient être favorisés une fois lancés et lesquels devraient fonctionner en arrière-plan. Autrement dit, d'établir des priorités en ce concerne l'accès au CPU. On le fait en utilisant un chiffre de « niceness » qui figure dans la colonne NI. Dans la capture d'écran, vous voyez que tous ces processus s'exécutent avec un chiffre de « niceness » de 0. Cela veut dire qu'ils s'exécutent à la priorité par défaut et que celle-ci n'a pas été changée de quelque façon que ce soit. Les chiffres de « niceness » varient de -20 à +19, la priorité maximum étant à -20; J'ai dit que défaut est 0, mais vous pouvez le vérifier en lançant la commande nice sans arguments. Le résultat est le niveau de « niceness » par défaut. Je vais laisser ce sujet dans l'état pour le moment, mais si vous voulez en savoir davantage, il y a une bonne page web à ce sujet à http://www.ibm.com/developerworks/linux/library/l-lpic1-v3-103-6/. L'article vous explique comment changer les niveaux de « niceness » pour certains processus, si vous voulez le faire.

Memory Next to the column on CPU usage in the screenshot is a column for memory usage, again expressed as a percentage of the total available. In this case, it happens that the process using the most CPU is also the one using the most memory, which is not unusual. But suppose you wanted to see your processes sorted in the order of the memory they consume? Well, as I mentioned before, the top command is interactive. To change the sort order, just press an upper-case letter O while the command is running in the terminal. This brings up a very useful screenful of sort options (shown below). With this screen open you can press a lower case letter n, then enter, and get a listing in order of memory percentage used. Or you can sort in other ways if needed.

Mémoire

À côté de la colonne concernant l'utilisation du CPU dans la capture d'écran se trouve une colonne pour l'utilisation de la mémoire, à nouveau donnée comme pourcentage du total disponible. Dans ce cas, il se trouve que le processus qui utilise le plus de CPU est également celui qui utilise le plus de mémoire, ce qui n'est pas inhabituel. Supposons toutefois que vous voulez trier les processus dans l'ordre de la consommation de mémoire. Eh bien, comme déjà mentionné, la commande top est interactive. Pour changer les critères de tri, il suffit d'appuyer sur la lettre O majuscule pendant que la commande s'exécute dans le terminal. Cela fait afficher un écran très utile, plein d'options de tri (voir ci-dessous).

Lorsque cet écran est ouvert, vous pouvez appuyer sur la lettre n (minuscule), puis sur Entrée, ce qui affichera un listing dans l'ordre du pourcentage de la mémoire utilisée. Ou vous pouvez trier d'autres façons en cas de besoin.

Again, this is useful if you find you are running out of memory and need to know where it is going. If one process is using a lot of memory unexpectedly, that would definitely be an indication. That does imply you have some idea of what constitutes normal in these situations. The best way to build a sense of that is to check periodically, and observe what is going on. In my case, I build my machines with 16GB of RAM these days, so I don't expect to see very high percentage usage in most cases. For instance, right now I have my bottom panel filled with program icons for programs I have open (18 of them right now), and a quick scan of the output of top shows I am using somewhere in the 35-40% range of my total memory. In the screenshot, you do see one big memory hog, but that is actually expected. I had VirtualBox open and running a virtual machine at the time, and I had configured it to use 4GB of RAM (plus other resources, of course.) So, in this case, I did see what I expected to see. But if I saw Firefox using that much memory, I would know it was a problem and I would shut it down promptly.

Là encore, c'est utile si vous constatez que vous allez manquer de mémoire et vous avez besoin de savoir ce qui l'utilise le plus. Si un processus utilise beaucoup de mémoire intempestivement, ce serait une indication certaine. Il est vrai que ceci implique que vous ayez une idée de ce qui est normal dans ces situations. La meilleure façon d'acquérir un sens de cela est de vérifier de temps en temps et d'observer ce qui se passe. Pour ce qui me concerne, ces jours-ci, je construis mes machines avec 16 Go de RAM et je ne m'attends donc pas à voir un très haut pourcentage d'utilisation dans la plupart des cas. Par exemple, en ce moment, j'ai le panneau d'en bas rempli d'icônes de programmes correspondant aux programmes qui sont ouverts (18 actuellement) et un coup d'œil sur l'écran de top montre que j'utilise environ 35 à 40 % de la mémoire totale.

Dans la capture d'écran un gros dévoreur de mémoire est visible, mais c'est en fait attendu. VirtualBox était ouvert et une machine virtuelle était en cours d'exécution ; je l'avais configurée pour utiliser 4 Go de RAM (plus d'autres ressources, bien entendu). Dans ce cas, donc, j'ai vu ce que je pensais voir. Mais si j'avais constaté que Firefox utilisait autant de mémoire, j'aurais su qu'il y avait un problème et je l'aurais fermé illico.

q for Quit If you have top running in your terminal, you might want to know how to get out of it, and that is simple, just press the letter q (for Quit), and you will be back at your terminal prompt. You can get more information in either of two ways: the old-school way is to type man top in the terminal, but the new, improved, way is to type info top. Though I think you will find the same result either way. The point is that this is a rich command with a lot of options

q pour Quitter

Si top s'exécute dans votre terminal, vous voudriez peut-être savoir comment en sortir et c'est simple : il suffit d'appuyer sur la lettre q (pour Quitter) et vous vous retrouverez devant l'invite de votre terminal. Vous pouvez obtenir d'autres informations de deux façons : celle de la vieille école, où vous saisissez man top dans le terminal et celle qui est nouvelle et améliorée, où vous tapez info top. Mais je crois que les deux donneront le même résultat. Ce qui importe, c'est que c'est une commande riche avec beaucoup d'options.

Interpretation of System Data We’ve looked at some basics of the top command, and focused on looking at the process listings to spot and correct possible problems. This is still a very useful thing, of course, but there is also a lot of system data in the output that is useful. Recall the screenshot we used last time to display the output of this command (shown below) Now we want to focus on those numbers on the top that are presenting some very useful system data. So let's start at the top (literally): Line 1, the Top line On the first line (above), we have the uptime. Actually, this is information you could get using the uptime command as well: So this is a clue that the top command is gathering information that is available individually from other commands and bringing it together in one package of awesome goodness. Very convenient that is.

Interprétation des données système

Nous venons d'aborder quelques points essentiels concernant la commande top et nous nous sommes concentrés sur l'examen du listing des processus pour pouvoir identifier et corriger des problèmes éventuels. Cela reste très utile, bien entendu, mais il y a aussi beaucoup de données système qui sont utiles. Souvenez-vous de la capture d'écran que nous avons utilisée pour afficher le résultat de cette commande (voir ci-dessous).

Maintenant, nous voulons nous concentrer sur les chiffres tout en haut, qui présentent quelques données systèmes très utiles. Commençons tout à fait en haut :

Ligne 1, la ligne Top

À la première ligne (ci-dessus), nous trouvons le temps pendant lequel l'ordinateur a fonctionné. En fait, vous pourriez avoir cette information avec la commande uptime aussi :

C'est donc une indication que la commande top récupère des informations disponibles de façon individuelle avec d'autres commandes et les rassemble dans un seul ensemble super formidable. C'est très commode.

So in order we see that the time is 15:52:05, and the computer has been up over 17 days. It has two users right now, which is normal. One of the users is root, but you should never run as root for ordinary activities. That is a dangerous and insecure practice. As long as you are logged in as root, any software that runs on your system has root-level privileges. The preferred way to run is to create an ordinary user who does not have quite so high a level of rights, and run as that user. In this case, that user is kevin. By the way, Ubuntu makes it very difficult for you to do anything other than this procedure. If you need higher rights, you use the sudo command to give yourself temporary privileges. The last part of this line is called load. These three numbers are giving the load for the previous 1, 5, and 15 minutes. But what is load? It is the average number of processes that are runnable, or are uninterruptible. Basically, without getting too technical, it is how occupied the CPU is most of the time. But the wrinkle is that it is not adjusted (normalized) for the number of CPUs. What this means is that a single CPU system with a load of 1 is loaded all of the time. But on my dual core system, I never got to 2, so I am OK. If you had a quad-core, the magic number would be 4, and so on.

Bon, dans l'ordre, nous voyons qu'il est 15:52:05 et que l'ordinateur fonctionne depuis plus de 17 jours. Il y a deux utilisateurs actuellement, ce qui est normal. L'un des utilisateurs est root, mais vous ne devriez jamais utiliser root pour vos activités quotidiennes. C'est une pratique dangereuse et qui mène à des situations d'insécurité. Pendant que vous êtes connecté en tant que root, tout logiciel lancé sur votre système a les droits de root. Il est préférable de créer un utilisateur ordinaire qui n'a pas autant de droits et de travailler comme celui-ci. Dans ce cas, cet utilisateur est kevin. D'ailleurs, sous Ubuntu, ce serait très difficile de fonctionner autrement. Si vous avez besoin de plus de droits, vous utilisez la commande sudo pour vous accorder des privilèges temporaires.

La dernière partie de cette ligne s'appelle « load ». Ces trois chiffres indiquent le load pour les dernières 1, 5 et 15 minutes. Mais qu'est-ce que le load ? C'est le nombre moyen des processus qui sont exécutables ou qui ne peuvent pas être interrompus. En fait, sans rentrer dans des détails techniques, il s'agit de l'occupation du CPU la plupart du temps. Mais il faut savoir que ce n'est pas ajusté (normalisé) selon le nombre de CPU. Ce qui veut dire qu'un système ayant un seul CPU et un load de 1 est toujours occupé. Mais, sur mon système à double cœur, je n'ai jamais atteint 2, et donc tout baigne. Si vous aviez un processeur à quatre cœurs, le nombre magique serait 4 et ainsi de suite.

Line 2, Tasks There is nothing interesting to see here. That last category, zombie, sounds like it ought to be at least interesting, but it really isn't. Zombie processes are runs that have finished running, and will shortly be closed. Line 3, CPU(s) This is worth a look or two. Last time we looked at the processes on the bottom of the top command's output to see if any one process was hogging things. On this line, instead of looking at the individual processes, we are looking at the total picture of what is going on. And here we don't need to worry about how many cores we have, these numbers aggregate all of the data for all cores.

Ligne 2, Tâches

Il n'y a rien d'intéressant à voir ici. La dernière catégorie, là, zombie, donne l'impression qu'elle devrait être au moins intéressante, mais, en fait, ce n'est pas le cas. Les processus zombie sont des processus qui ont fini de s'exécuter et qui seront fermés incessamment sous peu.

Ligne 3, CPU

Celle-ci vaut un coup d'œil ou deux. La dernière fois, nous avons regardé les processus en bas des résultats de la commande top pour voir si un seul processus utilisait toutes les ressources. Sur cette ligne, au lieu de regarder les processus individuels, nous regardons une image complète de ce qui se passe. Et ici nous n'avons pas besoin de nous préoccuper du nombre de cœurs, ces chiffres rassemblent toutes les données pour tous les cœurs.

The first statistic is %us, which in this case is 32.0%. This is the percentage of the CPU cycles that are taken up by user processes. This does not necessarily mean ones that a person started, they can mean processes kicked off by Apache, MySQL, etc. If this percentage is very high, it can be an indication of a problem, since we have other demands to consider. For example, the next statistic is %sy, which is the percentage of CPU cycles that are taken up by the kernel and by other system processes. Obviously you need to have some cycles available for this or you won't have a functioning computer. The third one, %id, is percentage of time the CPU is idle, and the higher the better here (within reason, you need to actually use the computer!). As long as you have some reasonable idle time available, you probably don't have a problem. You can double-check this by looking at the fourth statistic, %wa. This is the percentage of time that a process had to wait for access to the CPU. In this case, .2% is good. You won't be likely to see this at 0.0% too much, since, by the nature of computing, processes are competing for CPU time, but a high number here would definitely indicate a problem. The rest of the statistics are pretty ignorable, as they deal with really obscure issues, but you can look them in the man page for top.

La première statistique est %us, qui, ici, est de 32,0 %. Il s'agit du pourcentage des cycles du CPU pris, accaparés par des processus utilisateur. Cela ne veut pas dire, nécessairement, des processus démarrés par une personne, mais cela peut être des processus lancés par Apache, MySQL, etc. Si ce pourcentage est très élevé, cela peut indiquer un problème, puis qu'il faut prendre en compte d'autres demandes. Par exemple, la statistique suivante est %sy, qui est le pourcentage des cycles CPU accaparés par le noyau et par d'autres processus systèmes. Bien entendu, il faut avoir quelques cycles disponibles pour cela ou votre ordinateur ne fonctionnera plus. La troisième, %id, est le pourcentage de temps où le CPU est en repos et plus c'est élevé, mieux c'est (dans la limite du raisonnable, car vous avez en fait besoin d'utiliser votre machine !) Tant qu'il y a du temps de repos raisonnable disponible, il est probable qu'il n'y a pas de problème. Vous pouvez le vérifier à nouveau en regardant la quatrième statistique, %wa. Il s'agit du pourcentage de temps qu'un processus a dû attendre pour pouvoir accéder au CPU. Dans ce cas, O,2 % est bien. Il est peu probable de voir ceci souvent à 0,0 %, puisque, étant donné la nature de l'informatique, les processus sont en compétition pour le temps du CPU, mais un chiffre élevé ici indiquerait incontestablement un problème.

Vous pouvez, sans grand risque, ignorer les autres statistiques, car ils traitent de questions obscures, mais vous pouvez les chercher dans la page man pour top.

Lines 4 & 5, Memory and Swap These two lines are best addressed together, since you need to combine this information to tell a complete story. What we need to know is how much memory is being used, and how much is available, at any one time. This is important because lack of RAM is the most common cause of a slow, sluggish computer. This can sometimes look like a different problem altogether, which is why it is important to look at the actual data. For instance, if you noticed your hard drive was constantly “chattering” (known as thrashing), you might think you had a hard drive or I/O problem, but in fact this is most commonly caused by a lack of RAM. When there is not enough RAM to hold all of the program code and data currently in use, some of it gets copied out to the hard drive (called paging) to free up space for other code and data. The place where this data gets copied is called the swap area. So when your hard drive is constantly thrashing, it usually means that code and data is constantly being written to and read from the swap area, and more RAM would eliminate this problem.

Lignes 4 & 5, Mémoire et Swap

Il vaut mieux examiner ces deux lignes ensemble, puisque vous avez besoin de combiner cette information pour avoir une vision complète des choses. Nous avons besoin de connaître la quantité de mémoire utilisée et la quantité disponible à un moment donné. C'est très important parce que, si un ordinateur est lent et mou, la plupart du temps c'est à cause d'un manque de RAM. Ceci peut vous sembler être un tout autre problème, ce qui explique l'importance de regarder les données réelles. Par exemple, si vous avez remarqué que votre disque dur ne cessait de « piailler » (dit aussi « thrashing »), vous pouviez penser que le problème est dans votre disque dur ou un problème I/O, mais en fait la cause la plus fréquente en est un manque de RAM. Quand il n'y a pas assez de RAM pour contenir tous les codes et les données des programmes actuellement utilisés, certaines choses sont copiées vers le disque dur (ça s'appelle du paging) pour libérer de l'espace pour d'autres codes et données. L'endroit ou ces données sont copiées s'appelle le secteur swap. Ainsi, quand votre disque dur ne cesse de faire du « thrashing », la plupart du temps cela veut dire que du code et des données sont constamment écrits vers et lus à partir du secteur swap. Davantage de RAM éliminerait ce problème.

Now, one of the things you need to understand to interpret this data is that writing to the hard drive and reading from it is approximately 4 gazillion times slower than reading and writing to RAM. So you want to minimize the use of swap for performance reasons. But because RAM is so much faster than the hard drive, the operating system will prefer to use it whenever possible. One way to speed things up is to keep code in memory even when you have closed the program. After all, you might open it up again, and pulling it from RAM will speed it up a lot. So the operating system caches a lot of code in RAM that is not currently being actively used. Because of this, the reported RAM usage will look like you are on the verge of running out, but this may not be the case. You need to look at all of the data to assess this. In this case, we start off by noting that this machine has 15,949,272k of RAM. In other words, 16GB, which I knew because that is what I installed in this box. And the next number says that practically all of this 16GB is being used. Is this a problem? Not really. If you look at the second line, you see that I have 6GB of swap space, but hardly any of it is being used (I am using just under 2MB of RAM here). And the last number tells the story. Of my 16GB of RAM, fully half of it, 8GB, is being used to cache code. If I wanted to open a program that was already in the cache, great, the code is already there and it will open quickly. If I want to open some other program, the operating system will delete some of the code that is in cache to free up the space, so there is no problem.

Bien. Une des choses qu'il faut comprendre pour pouvoir interpréter ces données est que l'écriture et la lecture de et vers le disque dur est environ 4 millions de fois plus lent que l'écriture et la lecture de et vers la RAM. Vous voulez donc minimiser l'utilisation du swap pour des besoins de performance. Mais, parce que la RAM est tellement plus rapide que le disque dur, le système d'exploitation préférera l'utiliser si possible. Une façon d’accélérer les choses est de garder le code dans la mémoire même après la fermeture du programme. Après tout, il se peut que vous l'ouvriez à nouveau et l'avoir tout de suite à partir de la RAM augmentera sa vitesse de façon considérable. Et donc le système d'exploitation cache beaucoup de code qui n'est pas utilisé activement dans la RAM. À cause de cela, l'utilisation de la RAM affichée vous donnera l'impression que vous n'en aurez plus dans peu de temps, mais ce n'est peut-être pas le cas. Il faut regarder toutes les données pour pouvoir l'évaluer.

Dans ce cas, nous commençons par remarquer que cette machine a 15.949.272k de RAM. Autrement dit, 16 Go, ce que je savais, car c'est ce que j'avais installé dans la boîte. Et le chiffre suivant indique que pratiquement tout est utilisé. S'agit-il d'un problème ? Pas vraiment. Si vous regardez la deuxième ligne, vous verrez que j'ai 6 Go d'espace swap, mais que presque rien est utilisé (j'utilise un peu moins de 2 Mo de RAM ici). Et le dernier chiffre explique tout. Des 16 Go de RAM, la moitié, 8 Go, est actuellement utilisée pour cacher du code. Si je voulais ouvrir un programme déjà présent dans le cache, ce serait formidable ; le code y est déjà et s'ouvrira très rapidement. Si je veux ouvrir un autre programme, le système d'exploitation supprimera une partie du code dans le cache pour libérer de l'espace et il n'y a donc aucun problème.

Htop, the Alternative I actually prefer top, but some people like htop better, and I think you will see why. For some things it is easier to work with, particularly if you need to do some tasks related to processes. But note that it is not installed by default on many systems, so you will need to install it first. On Ubuntu machines, install it with sudo apt-get install htop First, you can see that it presents much the same data on individual processes as the top command. Processes are still listed in order of CPU usage by default, you still see the process ID, User, CPU%, and MEM%, just as before. You can see the command that launched the process, instead of just the program name. Unlike top, htop lets you scroll horizontally using the arrow keys. On htop, you do have one interesting addition, which is a separate graphical display of the CPU usage for each CPU or core that you have, in this case 1 and 2 since it is a dual-core machine. And you can see the memory and swap usage in ways that you might find easier to read. Uptime. Loads, and Tasks, are shown on the top right.

Htop, l'alternative

Moi, je préfère en fait top, mais d'aucuns préfèrent htop et je pense que vous verrez pourquoi. Il est plus facile de travailler avec pour des choses précises, spécialement si vous avez besoin d'accomplir des tâches autour des processus. Mais il faut savoir que ce n'est pas installé par défaut sur plein de systèmes ; vous aurez donc besoin de l'installer d'abord. Sur des machines Ubuntu, installez-le avec

sudo apt-get install htop

Vous verrez d'abord qu'il fournit à peu près les mêmes données concernant les processus individuels que la commande top. Les processus sont toujours listés dans l'ordre d'utilisation du CPU par défaut, vous voyez toujours le Process ID, Utilisateur, CPU% et MEM% tout à fait comme avant. Vous pouvez voir la commande qui a lancé le processus au lieu du simple nom de programme. Contrairement à top, htop vous donne la possibilité de faire un défilement horizontal avec les touches fléchées.

Sur htop, il y a une chose intéressante en plus : un affichage graphique distinct de l'utilisation du CPU pour chaque CPU ou cœur que vous avez, dans ce cas, 1 et 2, puisqu'il s'agit d'une machine à double cœur. Et vous pouvez voir l'utilisation de la mémoire et du swap affichée de sorte que cela puisse vous paraître plus facile à lire. Uptime, Loads et les Tâches (Tasks) sont montrés en haut à droite.

The real advantage of htop comes when you want to do something to one or more of your processes. You simply use the up and down arrow to highlight the process, then use one of the function keys shown on the bottom. For instance, if you highlight a process and then press F9 you will kill the process. Pressing F7 (Nice -) will lower the nice number, thus increasing the priority (yes, this is not intuitive). And pressing F8 will reduce the priority by raising the nice number. But be aware that to give a really high priority to a process you would need to have root access, perhaps by using the command sudo htop Personally, I don't have much reason to mess with this, but the worst that could happen is that you would need to reboot your computer if you really screw it up. Other function keys let you quickly change the sort order, change the field to sort on, and so on. In summary, I think htop is very useful, but I tend to use top more often for two reasons. First is that I like the more detailed information it gives me. And second is that I know it will be available on any system I am likely to sit down to, while htop will need to be installed, and that means a working Internet connection, which I might not have. But, in general, these two commands do much the same thing, and are a crucial addition to your Linux tool kit.

Vous constaterez le véritable avantage de htop quand vous voudrez faire quelque chose à un ou plusieurs de vos processus. Il suffit de mettre le processus en surbrillance au moyen des flèches vers le haut ou le bas, puis d'utiliser une des touches fonction listées en bas de l'écran. Par exemple, si vous mettez un processus en surbrillance, puis appuyez sur F9, vous tuerez le processus. Si vous appuyez sur F7 (Nice -), le chiffre du « niceness » baissera, ce qui augmentera la priorité du processus (et, oui, ce n'est pas intuitif). En appuyant sur F8, vous baisserez la priorité en augmentant le chiffre « nice ». Toutefois, il faut savoir que pour assigner une très haute priorité à un processus vous devrez avoir un accès root, en utilisant sans doute la commande

sudo htop

Personnellement, je n'ai pas beaucoup de raisons de m'enquiquiner avec tout cela, mais le pire qui puisse arriver serait de devoir redémarrer l'ordinateur si vous le bousillez vraiment.

D'autres touches fonction vous permettent de changer rapidement l'ordre de tri, le champ du tri, etc.

En résumé, je pense que htop est très utile, mais j'ai tendance à utiliser top plus souvent pour deux raisons. La première est que j'aime avoir les informations plus détaillées qu'il fournit. Et la deuxième est que je sais qu'il sera disponible sur n'importe quel système que j'ai des chances d'utiliser, alors que j'aurais besoin d'installer htop et cela veut dire une connexion à internet, ce qui n'est pas toujours disponible. Mais, en général, ces deux commandes font à peu près la même chose et sont un complément indispensable à votre « coffre d'outils » linux.

numero61/tuto_libre_p._10-14.txt · Dernière modification : 2012/08/11 18:30 de andre_domenech