Carte PC

On Jul 2, 3:13 am, DEMAINE Benoit-Pierre

Non, cela ne m'est jamais arriv=E9.

Non, cela ne m'est pas arriv=E9 non plus.

Par contre il y a quinze/vingt ans, je me suis fait tabasser par une bande de "zyva" avec des couteaux et toute la panoplie, =E0 cinq contre un, qui ont vu de loin arriver ma face de craie. Et oui, je t'avoue que ca m'a vraiment fait flipper, je croyais qu'ils allaient me planter et le laisser pour mort, mais ils ont =E9t=E9 gentils : ils se sont content=E9s de me tabasser !

Maintenant quand je vois une bande descendre en ville pour s'y touver une victime, oui, je change de trottoir. Alors je comprends tr=E9s bien qu'il est traumatisant de se faire tabasser par un malade comme il y en a, h=E9las ! Mais je n'imagine pas pour autant que tout le monde va m'agresser, je n'oserais plus jamais sortir seul, et ce serait de la parano.

Un type cherche un syst=E8me pour bloquer un PC =E0 une heure donn=E9e, tu en conclus que ses enfants ont =E9t=E9 viol=E9s ou je ne sais quoi ... ! Faut pas g=E9n=E9raliser et mettre tout le monde dans le meme sac, sinon on tourne facho, et ca devient pire pour tout le monde.

Reply to
Jean-Christophe
Loading thread data ...

On Jul 2, 10:08 am, Den

Oui, je suis tout =E0 fait d'accord avec toi. L'informatique (au moins la nano et micro informatique) fait partie int=E9grante de la culture d'un =E9lectronicien. Mais la r=E9ciproque est plus rare.

Serais-tu pr=EAt =E0 embaucher un gars qui passe pour un bon =E9lectronicien aux yeux des informaticiens, et pour un bon informaticien aux yeux des =E9lectroniciens ?

(pour =E9viter tout malentendu, je pr=E9cise que cette remarque n'a rien =E0 voir avec B.P Demaine, qui semble avoir un CV en b=E9ton)

C'est sur qu'utiliser la force n'est pas le meilleur moyen, mais il est des parents qui ne savent pas faire autrement. (et on constate qu'une fois que leurs enfants ont grandi, ils font la meme chose avec leurs propres enfants, etc ...)

Des momes qui ob=E9issent au doigt et =E0 l'oeil et ne font jamais de b=E9tise, ca n'existe pas, et si ca existait, ce serait un tr=E9s mauvais signe : ca en ferait de futurs moutons sans personnalit=E9 qui ob=E9issent aveugl=E9ment, comme ceux qu'on trouve parmi les extr=E9mistes et les fafs.

Bon, on a tous fait des b=E9tises quand on =E9tait momes, mais certains pr=E9f=E9rent l'oublier pour se croire parfaits. Et quand des mecs se croient parfaits, c'est-=E0-dire mieux que les autres, c'est-=E0-dire "sup=E9rieurs" aux autres, on sait comment ca finit ...

Oui, moi aussi. D'ailleurs on est en plein dedans.

Ouais ... c'est pas faux :-)

Reply to
Jean-Christophe

Tu vas nous la raconter, n'est ce pas ? Je suis personnellement avide d'anecdotes techniques croustillantes. ;)

Reply to
cLx

Le 02-07-2010, cLx > l'uptime d'un W2003 de compétition.

Tu veux vraiment ? J'ai dû installer un serveur (d'application) chez un client qui ne voulait entendre parler que des saletés de Petimou. J'ai remplacé son ancien serveur (que j'avais installé moi même, une machine avec deux disques U320 en raid, 2 Go de mémoire et deux opterons à 2 GHz) tournant sous Solaris par une machine un peu plus péchue (huit opterons à 2,4 Ghz, deux disques U320, 8 Go de mémoire) tournant sous... Windows Advanced Server 2003. Autant donner de la confiture à un cochon.

L'uptime _utile_ du bestiau était de quatre à six heures. Je dis _utile_ parce qu'il ne plantait pas mais devenait de plus en plus lent jusqu'à être parfaitement inutilisable. Il fallait rebooter ce serveur à 7h00, 13h00 et 19h00 _tous_ les jours pour qu'il soit utile. L'ancien ramait, mais il avait des uptimes de plusieurs mois avec le même logiciel d'application.

Coup de téléphone au support de niveau 2 puis 3. Un expert microsoftien s'est même déplacé. Rien. Tout ce beau monde a juste réussi à me dire que ce fonctionnement était tout à fait normal, que le système était vendu pour 99,5 % de disponibilité et que ça correspondait peu ou prou à 3 reboots par jours. Avec la meilleure volonté du monde, ils n'ont pas réussi à configurer la chose mieux que moi ne serait-ce que pour arriver à un reboot quotidien.

Au bout de deux mois, le client en question a disjoncté et la machine s'est retrouvée sous NetBSD où il n'y avait plus aucun problème.

J'ai une autre anecdote avec l'installation d'un IBM quelque chose (un système avec 8 pentiums pro et un NT 4 qui ne s'installait que sur deux processeurs aux maximum. Si encore il se contentait d'ignorer les six processeurs surnuméraires, mais non ! On a terminé l'installation du truc au fer à souder ! Et hop, retour en charte !)

JKB

--
Le cerveau, c'est un véritable scandale écologique. Il représente 2% de notre
masse corporelle, mais disperse à lui seul 25% de l'énergie que nous
consommons tous les jours.
=> http://grincheux.de-charybde-en-scylla.fr
Reply to
JKB

"JKB" a écrit dans le message de groupe de discussion : snipped-for-privacy@rayleigh.systella.fr...

Mais oui, mais oui, chez Microsoft, depuis une trentaine d'années, il n'y a que des nuls, c'est l'évidence même.

Etrange, hein ?

très bien , à toi le richesse et la renommée.

Qu'il soit possible de faire mieux que Microsoft, oui, tout est perfectible. Et "xBSD, xVMS ou Linux ", ne sont-ils pas perfectibles ?

Reply to
Ael Rowen TERENCE

Le 02-07-2010, Ael Rowen TERENCE a écrit :

Je n'ai jamais dit ça. Et pour connaître personnellement des types qui bossent des MS, ce ne sont pas des nuls. Ils n'ont juste pas les moyens de faire les choses proprement pour des raisons qui ne sont pas des raisons techniques mais commerciales.

Ça dérange juste les utilisateurs et crois-moi (ou ne me crois pas, je m'en contrefiche), ça commence même à râler très fort.

Remarque parfaitement idiote.

Relis-moi bien attentivement. Je n'ai _jamais_ écris que ces systèmes étaient parfaits. En revanche, ils sont parfaitement documentés et lorsqu'une erreur est détectée, elle est corrigée. Le problème de Windows, c'est que le système de base est bancal (on a rajouté sur un noyau OS/2 version 2 amputé de tout ce qui était purement IBM des bouts comme une couche réseau - issue des Unix BSD -, une API 32 bits, une gestion des processus à la va-comme-je-te-pousse et j'en passe). Il est _inadmissible_ que des fonctions de l'API système de base ne fassent pas exactement ce qu'elles sont censées faire. Dire qu'après, on se demande pourquoi il faut rebooter très régulièrement ce système...

Après, on peut discuter de design d'OS, mais je ne sais pas pourquoi, j'ai l'impression que la discussion sera stérile avec toi. Le design de Windows est nullissime (mais parfaitement assumé par MS). C'est même pour cela qu'il n'est que métastable.

? JKB

--
Le cerveau, c'est un véritable scandale écologique. Il représente 2% de notre
masse corporelle, mais disperse à lui seul 25% de l'énergie que nous
consommons tous les jours.
=> http://grincheux.de-charybde-en-scylla.fr
Reply to
JKB

"JKB" a écrit dans le message de groupe de discussion : snipped-for-privacy@rayleigh.systella.fr...

Impec, moi aussi je vais éviter de m'engager dans une impasse. La seule chose que je dis c'est : avant de critiquer MS il faudrait au minimum faire aussi bien.

Il ne peut y avoir de discussion lorsque je lis :

Microsoft ne fait pas du tout la différence entre une zone statique et une zone allouée dynamiquement, ce qui fait que l'immense majorité des programmes qui effectuent ses appels système en boucle ont des fuites conséquentes

C'est d'une bêtise sans nom. Mais comment, ... comment .... peut-on proférer de telles absurdités ?

Cela me laisse sans voix ...

PS: mais quand même, des trois débilités exprimées dans la citation celle que je préfère c'est :

"l'immense majorité des programmes qui effectuent ses appels système en boucle" ... Hahaha ... une perle ! T'est-il possible de citer un programme qui "effectuent ses appels système en boucle" mais serait dans la minorité des programme qui n'ont pas de fuite mémoire ?

Reply to
Ael Rowen TERENCE

Le 02-07-2010, Ael Rowen TERENCE a écrit :

Ce n'est _pas_ difficile. Avec NetBSD, on fait au moins aussi bien. Et vu que je participe, j'ai le droit de critiquer Windows.

C'est ça. getcwd() est censé renvoyer un pointeur sur une zone statique. C'est la doc Windows qui dit cela. Sauf que la zone est dans les faits allouée par un malloc() au moins jusqu'à W2K inclus. À chaque fois que tu appelles getcwd(), tu as une fuite de quelques octets (et une fragmentation supplémentaire de la mémoire, mais ça doit t'échapper). Donc pour la bêtise sans nom, tu repasseras. Les codes qui doivent être portables sont caviardés de #ifdef WIN32 à cause de ces conneries, et tu en rates _toujours_ ! Le pire, c'est lorsque le truc est corrigé, un code qui fonctionnait très bien se casse la gueule parce que tu fais un free() sur une zone statique.

Je parle des appels systèmes que tu appelles _explicitement_, pas de ceux qui sont fait au travers d'une bibliothèque système. Heureusement d'ailleurs que cela sont débuggués.

À cours d'argument ? Retourne jouer aux billes. Que tu défendes Microsoft est ton choix le plus strict. Je trouve que ce système a son utilité comme système sur un poste client (encore que, avec un BSD ou un Linux bien configuré...), mais prétendre que son design est bon et qu'il est fiable est d'un tout autre niveau ! Ou alors on parle de la définition de la fiabilité selon Microsoft, ce qui est tout autre chose. Ma définition de la fiabilité, ce serait plutôt celle de DEC.

JKB

--
Le cerveau, c'est un véritable scandale écologique. Il représente 2% de notre
masse corporelle, mais disperse à lui seul 25% de l'énergie que nous
consommons tous les jours.
=> http://grincheux.de-charybde-en-scylla.fr
Reply to
JKB

Salut, Bon, nous sommes tous d'accord pour dire que les questions des intervenants sont toutes influencées pas des ressentis personnels... qui ont pour conséquence, une orientation subjective des réponses... ... moi je dis qu'il faut forcer le "Reset"... ou le "Ram refresh"... ... et moi aussi ... je dis "Pas les lunettes !"... "Pas les lunettes !"... (parfois ça marche avec ma femme!) ... si dans mon enfance mes parents m'avaient interdit d'ordinateur... interdit de vivre une passion... ... je serais plus con... et je serai un père Anti-Ordinateur à 23h...

Reply to
GzavSnap

Salut,

|> Pour l'instant, on est quand-même loin de se faire phagocyter ! |Ouais ... c'est pas faux :-) Je ne sais pas si on peut se faire phlogosliper si facilement... J'en doute fort. Donc, j'ai pensé au système d'horloge à LED, que l'on trouve en kit... (... en elécronique ... quoi !) Donc, toutes des heures, un led est allumée. Si l'on met des straps sur les 12 sorties, pour allumer ou éteindre le relai, ça devrais marcher. Le problème ce pose sur les 12 autres heures (car il y a 24heures dans une journée!). Là, il faut trouver un système pour différencier ces heures et les démultipléxer (2x12h) en TTL. Donc, on ce trouve avec 24 straps... Les straps fermés permettent le fonctionnement du relai, les autre coupe son alimentation. Pas de programmation, seullement des straps de configuration, avec accès résteint dans le micro. Fonctionnement sur piles rechargeables, alimentée par le +5 du bus PCI. Je donne le cahier des charges à mon gamin, il me trouve les trucs sur le net... Et il me fait le projet. Il me donne le liste des composants pour l'achat. Il m'installe la carte... je referme le tout et je mets le tournevis à la poubelle. Si le micro fume... il sera interdit de micro pour un mois. (... non deux ou trois) Et Si y veux pas ... qu'il aille voir sa mêre !

Change mes gamins contre ceux des autres. (bonne état, vaccinés... mais ados!)

Reply to
GzavSnap

getcwdOn Jul 2, 8:22 pm, JKB

Sans prendre parti pour un OS ou un autre, =E0 propos de getcwd la doc de mon VC++ (v6.0 de 1994/1998) pr=E9cise bien que le *ptr est malloqu=E9 :

(_getcwd ...) a buffer (...) will automatically be allocated, using malloc, to store the path. This buffer can later be freed by calling free ...

Reply to
Jean-Christophe

Le 02-07-2010, Jean-Christophe a écrit :

Pardon, je me suis mélangé les pinceaux. C'est POSIX qui prétend que le pointeur est alloué grâce à malloc() et Windows 2000 qui renvoie un pointeur sur une zone statique. Je viens de vérifier dans mes vieilles bibliothèques de gestion de fichiers.

Le problème de fuite venait de strdup() qui n'utilise _pas_ malloc() mais un mécanisme totalement foireux qui fait que le remplacement de malloc()/free() par un système un peu plus efficace aboutit à des fuites (à moins de surcharger strdup()).

JKB

--
Le cerveau, c'est un véritable scandale écologique. Il représente 2% de notre
masse corporelle, mais disperse à lui seul 25% de l'énergie que nous
consommons tous les jours.
=> http://grincheux.de-charybde-en-scylla.fr
Reply to
JKB

On 3 juil, 11:01, JKB

=E9

loc

=E9tend que

renvoie un

ieilles

loc() mais un

lloc()/free()

moins de

C'est =E9tonnant, la doc MSDN de mon compilo (toujours MS-VC++ v6.0) pr=E9tend le contraire :

char *_strdup( const char *strSource ); The _strdup function calls malloc to allocate storage space for a copy of strSource and then copies strSource to the allocated space.

Je veux bien qu'il s'agisse d'une coquille (?) mais le code donn=E9 en exemple appelle explicitement free() ...

Reply to
Jean-Christophe

Le 03-07-2010, Jean-Christophe a écrit :

que

renvoie un

vieilles

mais un

malloc()/free()

de

Je n'ai _jamais_ utilisé VC++. Je n'ai donc pas la doc en question. J'ai simplement dû fiabiliser des bibliothèques de gestion de fichiers (pour du traitement du signal) en contournant tous les problèmes typiquement Windowziens. strdup() permet de faire un free() sur le résultat, mais seulement à partir du moment où tu utilises le malloc()/free() du système. Le problème est là, mais la doc n'est pas fausse. Le malloc() embarqué dans ladite fonction doit simplement être 'inliné', ce qui n'est écrit nulle part (et qui est pourtant important).

Je n'ai pas les sources du strdup() en question, mais il ne permet pas de surcharger le malloc() du système. Si tu utilises un autre allocateur, tu ne peux pas effectuer un free() sur le resultat de strdup(). Enfin si, tu peux, mais le résultat est tout sauf prévisible. En fonction des versions de Windows, ça va d'une erreur d'accès mémoire à une belle fuite de mémoire. Il faut bidouiller des trucs à coups de macros pour pouvoir libérer le résultat du strdup() ou mieux, réécrire un strdup() sous la forme de macro en utilisant un vrai appel malloc() pour qu'il soit cohérent avec ton allocateur.

Remarque, MacOS X au moins jusqu'à 10.5.8 présente un problème assez similaire.

JKB

--
Le cerveau, c'est un véritable scandale écologique. Il représente 2% de notre
masse corporelle, mais disperse à lui seul 25% de l'énergie que nous
consommons tous les jours.
=> http://grincheux.de-charybde-en-scylla.fr
Reply to
JKB

On 3 juil, 11:25, JKB

malloc() mais un

malloc()/free()

=E0 moins de

ion. J'ai

iers (pour du

ment

, mais

) du syst=E8me.

Oui.

embarqu=E9 dans

=E9crit nulle

char * __cdecl _strdup ( const char * string ) { char *memory;

if( !string ) return(NULL);

if( memory =3D malloc(strlen(string) + 1) ) return( strcpy(memory,string) );

return(NULL); }

Vu au microscope :

1: /*** 2: *strdup.c - duplicate a string in malloc'd memory 3: * 4: * Copyright (c) 1985-1997, Microsoft Corporation. All rights reserved. 5: * 6: *Purpose: 7: * defines _strdup() - grab new memory, and duplicate the string into it. 8: * 9: ***/ 10: 11: #include 12: #include 13: #include 14: 15: /*** 16: *char *_strdup(string) - duplicate string into malloc'd memory 17: * 18: *Purpose: 19: * Allocates enough storage via malloc() for a copy of the 20: * string, copies the string into the new memory, and returns 21: * a pointer to it. 22: * 23: *Entry: 24: * char *string - string to copy into new memory 25: * 26: *Exit: 27: * returns a pointer to the newly allocated storage with the 28: * string in it. 29: * 30: * returns NULL if enough memory could not be allocated, or 31: * string was NULL. 32: * 33: *Uses: 34: * 35: *Exceptions: 36: * 37: ***************************************************************************= ****/ 38: 39: char * __cdecl _strdup ( 40: const char * string 41: ) 42: { 00402F40 55 push ebp 00402F41 8B EC mov ebp,esp 00402F43 51 push ecx 43: char *memory; 44: 45: if (!string) 00402F44 83 7D 08 00 cmp dword ptr [string],0 00402F48 75 04 jne _strdup+0Eh (00402f4e) 46: return(NULL); 00402F4A 33 C0 xor eax,eax 00402F4C EB 35 jmp _strdup+43h (00402f83) 47: 48: if (memory =3D malloc(strlen(string) + 1)) 00402F4E 8B 45 08 mov eax,dword ptr [string] 00402F51 50 push eax 00402F52 E8 19 31 00 00 call strlen (00406070) 00402F57 83 C4 04 add esp,4 00402F5A 83 C0 01 add eax,1 00402F5D 50 push eax 00402F5E E8 4D E1 FF FF call malloc (004010b0) 00402F63 83 C4 04 add esp,4 00402F66 89 45 FC mov dword ptr [memory],eax 00402F69 83 7D FC 00 cmp dword ptr [memory],0 00402F6D 74 12 je _strdup+41h (00402f81) 49: return(strcpy(memory,string)); 00402F6F 8B 4D 08 mov ecx,dword ptr [string] 00402F72 51 push ecx 00402F73 8B 55 FC mov edx,dword ptr [memory] 00402F76 52 push edx 00402F77 E8 04 30 00 00 call strcpy (00405f80) 00402F7C 83 C4 08 add esp,8 00402F7F EB 02 jmp _strdup+43h (00402f83) 50: 51: return(NULL); 00402F81 33 C0 xor eax,eax 52: } 00402F83 8B E5 mov esp,ebp 00402F85 5D pop ebp 00402F86 C3 ret
Reply to
Jean-Christophe

Le 03-07-2010, Jean-Christophe a écrit :

malloc() mais un

malloc()/free()

moins de

J'ai

(pour du

système.

Et c'est bien là qu'il y a comme un problème. Si je veux remplacer le malloc()/free() par défaut, je _dois_ pouvoir le faire !

embarqué dans

nulle

*******************************************************************************/

C'est justement là que ça coince. Mais comme on ne parle pas de la même chose, on ne peut se comprendre.

Bon. Fin de la discussion stérile.

JKB

--
Le cerveau, c'est un véritable scandale écologique. Il représente 2% de notre
masse corporelle, mais disperse à lui seul 25% de l'énergie que nous
consommons tous les jours.
=> http://grincheux.de-charybde-en-scylla.fr
Reply to
JKB

On 3 juil, 12:13, JKB

mais

loc()/free() du syst=E8me.

eux remplacer le

!

Vu !

0)

Ok.

Tu dois me confondre avec quelqu'un d'autre :-)

Reply to
Jean-Christophe

Le 03-07-2010, Jean-Christophe a écrit :

malloc()/free() du système.

remplacer le

Exact. Mes plus plates excuses...

JKB

--
Le cerveau, c'est un véritable scandale écologique. Il représente 2% de notre
masse corporelle, mais disperse à lui seul 25% de l'énergie que nous
consommons tous les jours.
=> http://grincheux.de-charybde-en-scylla.fr
Reply to
JKB

Un grand merci aux contributeurs "électroniciens" pour leurs réponses, pour les usagers "du café du commerce" et autres donneurs de leçons, je les laisse aux prises avec leurs opinions, qu'on ne leur demande pas mais qu'ils nous imposent quand même. Un peu angoissant d'ouvrir chaque réponse en se disant "et là on va me traiter de con ou de facho ?", de lire la prose en question et de se dire "je n'ai rien appris". Mais bon, c'est la vie...

Reply to
Yop

Oulalala, mais qu'est-ce que tu vas chercher comme embrouillamini ?

Des Arguments ? Tu ne me pas bien lu je ne vais pas parler technique avec un forcené complètement bouché.

La question que je te posais : "Test-il possible de citer .... ", et à laquelle tu fais diversion, était juste là pour essayer de mettre en évidence l'absurdité de la phrase que tu as écrit.

Point important, je ne tiens pas défendre Microsoft à tout prix. Je pense que pour faire mieux que Microsoft, cracher stupidement dessus est CONTRE-PRODUCTIF. Il est plus judicieux de faire la part des choses.

Reply to
Ael Rowen TERENCE

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.