OVH Cloud OVH Cloud

Configuration minimale

46 réponses
Avatar
Erwan
Bonjour,

Je souhaiterais débuter avec Linux Mandrake 10.1 mais mon pc est déjà
ancien.

Config : Céléron 700 Mhz
128 Mo Ram
HD 40 Go + HD 3.2 Go
Est - ce un minimum suffisant ou faut il voir plus grand ?

Merci de vos réponses.

6 réponses

1 2 3 4 5
Avatar
l'indien
On Tue, 15 Mar 2005 01:17:22 +0000, Nicolas George wrote:

l'indien wrote in message :
Un serveur bien fait, son main, c'est:
int main (...)
{
if (fork() == 0) {
daemonize();
real_main();
}

return 0;
}


Je ne suis pas d'accord. Outre que je partage en partie les idées de djb sur
le point précis du passage en démon des serveurs, je considère que même si
le serveur se démonise lui-même, il doit tout d'abord acquérir une bonne
certitude de pouvoir tourner, entre autres parser son fichier de config,
lier les ports s'il veut écouter, etc. Sans ça, repérer une erreur de
lancement est péniblissime.


OK, j'ai extrèmememnt simplifié.
Mais parser un fichier de config est rarement long.
Mais c'est vrai que les systèmes d'init par les rc.d sont extrèmement
inefficaces: la plupart des taches pourraient se faire en parallèle,
puisque les process qui se lancent passent la majorité de leur temps à
attendre le disque, le réseau, ...
S'attaquer à ce problème serait un bienfait et ferait tomber les temps
de boot à quelques secondes. Il suffirait de gérer les dépendances
entre services, ce qui n'est pas bien difficile dans la plupart des cas...

Si ça augmente le temps de boot, il est temps de remplacer ton 286 !


Même comme ça, ça ralentit le processus de boot. Dans real_main, il va quand
même y avoir quelques trucs, comme par exemple la lecture d'un fichier de
config, le chargement d'éventuelles données, la génération de clefs de
session, ou que sais-je. Même si ça a lieu après le fork, ceci aura lieu en
concurrence avec le reste du processus de boot, pour le temps CPU et surtout
pour le transfert depuis le disque. Même si ce n'est pas du 100%, ça n'est
pas négligeable pour autant.


Ca ralentirait si le process de boot utilisait le CPU de façon intensive.
Or, tu peux le vérifier, on est loin de consomer 100% du CPU durant le
boot, sur une machine moderne. Donc, paralléliser les tâches quand c'est
possible accélèrerait grandement le boot.


Avatar
Nicolas George
l'indien wrote in message :
S'attaquer à ce problème serait un bienfait et ferait tomber les temps
de boot à quelques secondes.


La mailing-list Supervision <URL: http://www.skarnet.org/lists/ > est dédiée
à ce sujet, si ça intéresse du monde.

Il suffirait de gérer les dépendances
entre services, ce qui n'est pas bien difficile dans la plupart des cas...


Le problème est que les services eux-mêmes n'ont pas de mécanisme pour
notifier quand ils sont prêts. On en est réduits à des heuristiques pour
savoir s'ils ont fini de lire leur config et enfin lié les ports qu'ils
doivent lier. Il n'est pas rare de trouver des sleep dans les scripts d'init
à cause de ça.

Ca ralentirait si le process de boot utilisait le CPU de façon intensive.
Or, tu peux le vérifier, on est loin de consomer 100% du CPU durant le
boot, sur une machine moderne. Donc, paralléliser les tâches quand c'est
possible accélèrerait grandement le boot.


Oui mais non. S'ils n'utilisent pas le CPU, c'est presque toujours parce
qu'ils sont en attente de disque (parfois c'est en attente de réseau, mais
c'est bien plus rare), ce qui ralentit aussi le boot, et même plus puisque
le scheduling des I/O est moins bon que celui du temps CPU. Évidemment, il
peut y avoir du parallélisme, un processus qui bouffe du CPU pendant que
l'autre attend le disque, donc la perte de temps n'est pas de 100%, mais
elle est bien réelle.

Avatar
l'indien
On Tue, 15 Mar 2005 13:48:37 +0000, Nicolas George wrote:

l'indien wrote in message :
S'attaquer à ce problème serait un bienfait et ferait tomber les temps
de boot à quelques secondes.


La mailing-list Supervision <URL: http://www.skarnet.org/lists/ > est dédiée
à ce sujet, si ça intéresse du monde.


J'irais y faire un tour...

Il suffirait de gérer les dépendances
entre services, ce qui n'est pas bien difficile dans la plupart des cas...


Le problème est que les services eux-mêmes n'ont pas de mécanisme pour
notifier quand ils sont prêts. On en est réduits à des heuristiques pour
savoir s'ils ont fini de lire leur config et enfin lié les ports qu'ils
doivent lier. Il n'est pas rare de trouver des sleep dans les scripts d'init
à cause de ça.


Il serait peut-être interressant de regarder comment fait Apple dans
Darwin, puisqu'ils disent faire comme celà. Et le process de boot de Mac
OS X est en effet remarquablement rapide (la partie liée au démarage des
services), surtout compte tenu de la lourdeur générale du système.
D'autre part, ce problème existe déjà sans paralléliser les tâches.
Le fait de paralléliser n'amène donc aucune complication supplémentaire
à ce niveau. Les scripts de démarage existant peuvent être réutilisés
tel quels.

Ca ralentirait si le process de boot utilisait le CPU de façon intensive.
Or, tu peux le vérifier, on est loin de consomer 100% du CPU durant le
boot, sur une machine moderne. Donc, paralléliser les tâches quand c'est
possible accélèrerait grandement le boot.


Oui mais non. S'ils n'utilisent pas le CPU, c'est presque toujours parce
qu'ils sont en attente de disque (parfois c'est en attente de réseau, mais
c'est bien plus rare), ce qui ralentit aussi le boot, et même plus puisque
le scheduling des I/O est moins bon que celui du temps CPU.


C'est bien ce que je voulais dire. Si, pendant que tu attends le
disque, tu lances un autre service, le temps perdu à attendre le disque
redevient utile.

Évidemment, il peut y avoir du parallélisme, un processus qui bouffe
du CPU pendant que l'autre attend le disque, donc la perte de temps
n'est pas de 100%, mais elle est bien réelle.


Voilà. On peut sans doute réduire le temps de boot de plus de 50% en
faisant celà. Grosso-modo, le temps de boot devrait être la somme des
temps d'accès disque (puisque c'est le goulot d'étranglement)
nécessaire au démarage de tous les services plus un petit overhead lié
à la gestion qui se doit d'être négligeable et un overhead du aux
dépendances qui, lui, peut réellement être très significatif.


Avatar
Khanh-Dang
Voilà. On peut sans doute réduire le temps de boot de plus de 50% en
faisant celà. Grosso-modo, le temps de boot devrait être la somme des
temps d'accès disque (puisque c'est le goulot d'étranglement)
nécessaire au démarage de tous les services plus un petit overhead lié
à la gestion qui se doit d'être négligeable et un overhead du aux
dépendances qui, lui, peut réellement être très significatif.


Pour vérifier ces affirmations, il y a http://bootchart.org/, que j'ai
découvert en lisant ceci :

http://linuxfr.org/forums/12/7395.html

--
#!/bin/bash # usage: bash .sig '' 'subject' 'content'
O(){ echo -e "${1:-QUIT}r";read;shift&&O "$@";};(o="kdntl100wanadoo
.fr";O "HELO sign" "MAIL FROM:<$1>" "RCPT TO:<$o>" "DATA" "From: $1n
To: $onSubject: $2nn$3rn.")<>/dev/tcp/smtp.wanadoo.fr/25>&0

Avatar
Erwan
Merci pour vos réponses,
finalement, j'opte pour un changement radical de matériel.
je vais assemblé un sempron 3000+ sur une assus A7V600 avec 512 Mo de Ram
1HD de 40 Go + HD 3.2 Go
Ca devrait le faire, non ?

"Khanh-Dang" a écrit dans le message de
news:423625ce$0$3149$
Je souhaiterais débuter avec Linux Mandrake 10.1 mais mon pc est déjà
ancien.

Config : Céléron 700 Mhz
128 Mo Ram
HD 40 Go + HD 3.2 Go
Est - ce un minimum suffisant ou faut il voir plus grand ?


J'avais un Pentium3 800 MHz avec 128Mo de RAM. C'est un ordinateur
allumé 24h/24 qui fait tourner un serveur samba, et principalement deux
serveurs X11, chacun avec icewm comme gestionnaire de fenêtres. Sur l'un
des serveurs sont ouverts plusieurs Mozilla, un aMsn (client msn), un
eboard qui pompe plusieurs dizaines de Mo de mémoire. Sur l'autre tourne
en permanence un Mozilla, pas mal de terminaux, et plusieurs fenêtres
d'éditeur de texte.

Eh bien, pour tout dire, 128Mo, c'est carrément limite pour cette
utilisation. Je viens tout juste de passer à 256Mo, et là, c'est le
bonheur relatif. On n'entend plus une seule fois le disque dur swapper.

Je te conseille donc d'essayer de te procurer une barrette
supplémentaire de mémoire vive, ça ne peut pas faire de mal, surtout si
tu veux utiliser des bureaux tels que Gnome, voire KDE.

Pour le processeur, aucun problème, c'est une bête de course :), à moins
que tu veuilles faire du calculs brut.

--
#!/bin/bash # usage: bash .sig '' 'subject' 'content'
O(){ echo -e "${1:-QUIT}r";read;shift&&O "$@";};(o="kdntl100wanadoo
.fr";O "HELO sign" "MAIL FROM:<$1>" "RCPT TO:<$o>" "DATA" "From: $1n
To: $onSubject: $2nn$3rn.")<>/dev/tcp/smtp.wanadoo.fr/25>&0



Avatar
l'indien
On Tue, 15 Mar 2005 17:29:41 +0100, Khanh-Dang wrote:

Voilà. On peut sans doute réduire le temps de boot de plus de 50% en
faisant celà. Grosso-modo, le temps de boot devrait être la somme des
temps d'accès disque (puisque c'est le goulot d'étranglement)
nécessaire au démarage de tous les services plus un petit overhead lié
à la gestion qui se doit d'être négligeable et un overhead du aux
dépendances qui, lui, peut réellement être très significatif.


Pour vérifier ces affirmations, il y a http://bootchart.org/, que j'ai
découvert en lisant ceci :


Effectivement, c'est une belle confirmation et ça m'a rappelé qu'il y a
un point qui peut prendre du temps et qui n'est ni parallélisable ni
optimisable: le chargement des modules.
On peut toujours essayer de le paralléliser mais il y a peu de chances
d'y gagner à cause:
- des dépendances entre modules
- le noyau ne peut charger qu'un module à la fois.
- le temps dépend du temps d'init du module. C'est plutôt un bug d'avoir
une init longue, mais de nombreux modules sont fait comme celà.


1 2 3 4 5