Aller au contenu

Le Linux BAR - Discussion de tout et de rien


Dark26

Messages recommandés

Salut à tous (ça faisait longtemps!):

je viens de lire le tuto de remy sur le noyau, et je lis ça:

1.2.3 Reduction du time slice d'un facteur 10.

Les programmes que vous lancez sont decoupes en processus, qui

sont eux memes decoupes en activites ( threads ). Lorsqu'un

processeur execute une thread, on dit qu'il execute une tache (

task ). Le probleme, c'est qu'il ne peut en traiter qu'une a la

fois lorsqu'il est monocore ( ce qui est le cas

actuellement de tous les processeurs x86, aka pc ). Donc, lorsque

vous lancez mozilla et que vous ecoutez votre mp3 favori avec xmms

par exemple, il va falloir remedier a un souci, satisfaire a la fois mozilla et xmms.

Le processeur dispose d'un ordonnanceur qui

va decouper les besoins de xmms et de mozilla en tranches infimes

et leur attribuera un court lap de temps les ressources du processeur. Notez que

ce temps est si court ( cela depend du systeme, mais nous

resterons simples sur cette partie destinee aux debutants ) que

vous ne ressentez pas ce decoupage du temps; la lecture de votre mp3 est fluide.

Il s'ecoule un certain temps entre le moment ou l'ordonnanceur

dit a mozilla "arrete toi un peu histoire que je redonne du

temps a xmms" et le moment ou il dit a xmms " vas y c'est a toi

!". Ce lap de temps est appele time slice.

Etant reduit 10fois sur un noyau 2.6 ( par rapport a un noyau

2.4 ) vous imaginez bien les performances supplementaires...

Sauf erreur de ma part, il se trompe:

le time slice est la durée pendant laquelle un processus est autorisé à s'éxécuter, et pas la durée pendant laquelle on switche d'un processus à l'autre. Ce temps de "latence" est celui de la commutation de contexte, qu'on n'a, il me semble, pas réussi à évaluer précisément.

Donc, le timeslice avait bien été réduit d'un facteur 10 (passant de 10 à 1 ms), mais la conséquence est juste un plus grande réactivité, mais au prix d'une moins bonne "efficacité", puisque le processeur passe 10 fois plus de temps à effectuer des changements de contexte (sauvegarde des registres, etc dans la pile).

D'ailleurs, il me semble que depuis le 2.6.13, il a été ramené à 4ms (250Hz).

En cas d'erreur, merci de me corriger.

neo

Lien vers le commentaire
Partager sur d’autres sites

petites modifications dans le bandeau de titre

le topic sur le noyau à disparu (à priori, si on veut compiler soi meme on doit pouvoir aller tout seul dans les meilleurs liens pour le lire :mdr: )

bootloader a été francisé ( en espérant que ca parle plus aux débutant... )

C'est petites modifications ont pour but de faciliter la vie des débutants qui débarquent sur le forum.

J'espère que ca ne dérangera pas les habitués.

Sinon, faites une réclamation :transpi:

Modifié par Duke98
Lien vers le commentaire
Partager sur d’autres sites

Voila et j'ai aussi rajouté un È à REGLES, c'est plus français :byebye:

Il s'agit d'un simple xterm avec $PS1=\[\016\]l\[\017\]-\[\e[31;1m\](\[\e[36m\]\d, \t\[\e[31;1m\])\[\e[0m\]-\[\e[31;1m\](\[\e[32;1m\]\u@\H\[\e[31;1m\]) \[\e[0m\]-\[\e[31;1m\](\[\e[34;1m\]\w\[\e[31;1m\])\[\e[0m\]-·\n\[\016\]m\[\017\] $\[\e[0m\]

Mon shell est bash (si jamais ça a quelque chose à voir...)

Ça a carrément à voir, c'est un .bashrc, pas un .term. C'est bash qui interprête.

Bon, c'est bien bordélique, je me suis permis de tout reprendre depuis le début pour refaire un truc comme sur ton screen :boulet:

    red='\[\033[0;31m\]'
   RED='\[\033[1;31m\]'
   green='\[\033[0;32m\]'
   GREEN='\[\033[1;32m\]'
   yellow='\[\033[0;33m\]'
   YELLOW='\[\033[1;33m\]'
   blue='\[\033[0;34m\]'
   BLUE='\[\033[1;34m\]'
   pink='\[\033[0;35m\]'
   PINK='\[\033[1;35m\]'
   cyan='\[\033[0;36m\]'
   CYAN='\[\033[1;36m\]'
   white='\[\033[0;37m\]'
   WHITE='\[\033[1;37m\]'
   NC='\[\033[0m\]'
   top='\[\033)0\016\]\[\]lq\[\017\033(B\]'
   bottom='\[\033)0\016\]\[\]mq\[\017\033(B\]'

Comme ça ça nous fait des lignes PS1 moins mystiques :zarb:

    PS1="${top}${RED}(${CYAN}\d, \t${RED})${NC}-${RED}(${GREEN}\u@\H${RED})${NC}-${RED}(${BLUE}\w${RED})${NC}-·\n${bottom}> $ "

EDIT : Et voila. (J'ai rajouté un >, ça fait plus beau :win: )

EDIT2 : Et puis aussi tu peux virer ton '-' après le top, par contre tu peux rajouter autant de 'q' que tu veux, c'est plus propre.

EDIT 3 : Et puis au passage, tu pourrais configurer ton système pour avoir la date en français :p

EDIT 4 : Et puis tiens, puisque tu veux un truc de geek, tu peux mettre ça à la fin

\n${bottom}${pink}[\#]${NC}-> $ "

:transpi:

EDIT 5 : J'ai tout repris finalement ^_^ :

 PS1="${top}${RED}(${CYAN}\d, \t${RED})${NC}-${RED}(${GREEN}\u@\H${RED})${NC}-${RED}(${BLUE}\w${RED})${NC}-\n${middle}${pink}[\#]${NC}\n${bottom}-> $ "

Avec middle='\[\033)0\016\]\[\]x\[\017\033(B\]' # barre verticale (le x peut être remplacé par t u ou n)

:mdr:

Modifié par theocrite
Lien vers le commentaire
Partager sur d’autres sites

;) theo champion du monde intergalactique :incline:

Ça a carrément à voir, c'est un .bashrc, pas un .term. C'est bash qui interprête.

Bon, c'est bien bordélique, je me suis permis de tout reprendre depuis le début pour refaire un truc comme sur ton screen :p

    red='\[\033[0;31m\]'
   RED='\[\033[1;31m\]'
   green='\[\033[0;32m\]'
   GREEN='\[\033[1;32m\]'
   yellow='\[\033[0;33m\]'
   YELLOW='\[\033[1;33m\]'
   blue='\[\033[0;34m\]'
   BLUE='\[\033[1;34m\]'
   pink='\[\033[0;35m\]'
   PINK='\[\033[1;35m\]'
   cyan='\[\033[0;36m\]'
   CYAN='\[\033[1;36m\]'
   white='\[\033[0;37m\]'
   WHITE='\[\033[1;37m\]'
   NC='\[\033[0m\]'
   top='\[\033)0\016\]\[\]lq\[\017\033(B\]'
   bottom='\[\033)0\016\]\[\]mq\[\017\033(B\]'

Comme ça ça nous fait des lignes PS1 moins mystiques :p

    PS1="${top}${RED}(${CYAN}\d, \t${RED})${NC}-${RED}(${GREEN}\u@\H${RED})${NC}-${RED}(${BLUE}\w${RED})${NC}-·\n${bottom}> $ "

Bon forcement avec des variables c'est plus compréhensible pour le commun des mortels et on s'y retrouve mieux :yes:
EDIT : Et voila. (J'ai rajouté un >, ça fait plus beau ;) )
C'est subjectif mais pourquoi pas :p
EDIT2 : Et puis aussi tu peux virer ton '-' après le top, par contre tu peux rajouter autant de 'q' que tu veux, c'est plus propre.
OK :transpi:
EDIT 3 : Et puis au passage, tu pourrais configurer ton système pour avoir la date en français :p
Ça c'est par choix :chinois:, LANG et LC_MESSAGES sont en anglais le reste en français.
EDIT 4 : Et puis tiens, puisque tu veux un truc de geek, tu peux mettre ça à la fin
\n${bottom}${pink}[\#]${NC}-> $ "

:D

:D bon ça je l'ai gardé mais en début de deuxième ligne parce que bon un prompt de 3 lignes ça commence à faire beaucoup :transpi:
EDIT 5 : J'ai tout repris finalement ^_^  :

 PS1="${top}${RED}(${CYAN}\d, \t${RED})${NC}-${RED}(${GREEN}\u@\H${RED})${NC}-${RED}(${BLUE}\w${RED})${NC}-\n${middle}${pink}[\#]${NC}\n${bottom}-> $ "

Avec  middle='\[\033)0\016\]\[\]x\[\017\033(B\]'          # barre verticale (le x peut être remplacé par t u ou n)

:transpi:

Du coup pas besoin du ${middle}

Bon ensuite les "coins" ne passant pas sous la console, j'ai mis des tests dans bashrc pour savoir si j'étais sous la console ou sous autre chose. Plus une hisoire étrange de guillements qui empechent le fonctionnement correcte de \$ :zarb: mais bon avec les tests sur l'UID ça gène pas =)

:yes: merci beaucoup ! :transpi::smack: :tchintchin:

Pour de la doc complète sur le sujet : http://www.tldp.org/HOWTO/Bash-Prompt-HOWTO/index.html

Lien vers le commentaire
Partager sur d’autres sites

Salut les gens.

Ce matin, j'ai eu une idée de tuto, "l'optimisation sous GNU/Linux" .

En gros, je passerais en revue différents points critiques qui ne sont pas, généralement, optimisés de base.

Je procéderais par "difficulté" croissante, afin d'éviter aux gens de faire n'importe quoi:

1. Services lancés au démarrage:

les identifier, désactiver ceux inutiles : permet de réduire l'occupation mémoire et accélère le démarrage

2. Les terminaux

par défaut, 6 ou 7 terminaux virtuels lancés, cela fait beaucoup, et cela occupe de la mémoire. On peut le diminuer en éditant /etc/inittab

3. Le disque dur

hdparm, avec différents paramètres

4. L'ordonnanceur d'entrées-sorties

cfq vs anticipatory

5. Les options du noyau en fonction de l'archi, les modules

Voilà.

Si ça peut être intéressant, je m'y mets, mais il me faudrait de l'aide pour les processus lancés au démarrage, je ne connais le système que sous Debian

neo

Lien vers le commentaire
Partager sur d’autres sites

(donc préciser dans le topic optimisation que ce n'est pas grave si Linux bouffe 98% de la RAM, tant qu'il n'attaque pas la swap ...)

bon je me suis fait rare ces derniers jours, mais ça va empirer ! en effet je décolle mardi pour 4 semaines chez les kangourous (voyage de noce :oops: et on y va à l'aventure, donc pas trop de chance que je croise un PC connecté ... donc silence radio pdt qq temps ! Mais bonne continuation au forum, et j'attends plein de bonnes surprises :zarb:

Lien vers le commentaire
Partager sur d’autres sites

Ce matin, j'ai eu une idée de tuto, "l'optimisation sous GNU/Linux" .

ça peut le faire :oops:

2. Les terminaux

par défaut, 6 ou 7 terminaux virtuels lancés, cela fait beaucoup, et cela occupe de la mémoire. On peut le diminuer en éditant /etc/inittab

ça m'étonnerais vraiment beaucoup que la désactivation d'un (ou même tous) terminal améliore les perfs.

Pour le reste, ouais...

services, hdparm, scheduler, noyau (choix du bon, options...), prelink et enfin recompilation de tout le système (gentoo)

Lien vers le commentaire
Partager sur d’autres sites

ça m'étonnerais vraiment beaucoup que la désactivation d'un (ou même tous) terminal améliore les perfs.

Pour le reste, ouais...

services, hdparm, scheduler, noyau (choix du bon, options...), prelink et enfin recompilation de tout le système (gentoo)

Pas les performances, mais cela libérerait de la mémoire.

Dans mon cas, en ne gardant que tty 7 (pour X) et tty 1, je gagne 4-5 Mo. Ce n'est pas énorme, mais c'est déjà ça.

Pour ce qui est de prelink et de la recompilation, je le laisse aux gentooiste, qui s'y connaissent bien mieux que moi.

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...