Forum Programmation.shell Récupération infos architecture: Endian, 32/64 ...

Posté par  .
Étiquettes : aucune
0
10
août
2008
Bonjour,
je cherche à récupérer en bash les informations suivantes:
Little ou big endian;
La taille de l'entier utilisé sur le système;
La taille de la RAM totale disponible.

... sur les systèmes suivants:
Linux (Suse et REHL);
Solaris (Sparc/Amd 5.8/5.10);
Cygwin

j'ai seulement trouvé pour la RAM sous Linux (/proc/meminfo).

Je suis un peu novice en UNIX alors toute bonne info est la bienvenue.

Merci d'avance,
risioux
  • # rosetta stone for unix

    Posté par  . Évalué à 6.

    cela pourra sans doute t'aider en partie : http://bhami.com/rosetta.html

    pour l'endianesse, regarde ici : (pas sûr que l'on puisse l'avoir en bash, mais sachant que cela dépend de l'architecture, avec uname tu devrais pouvoir le déduire)
    http://techforb.blogspot.com/2007/10/little-endian-vs-big-en(...)

    Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it

  • # en C

    Posté par  . Évalué à 3.

    Bonjour,
    je sais que la question demande d'utiliser le shell, mais je ne vois pas trop de moyen d'obtenir des information sur l'endianess ou le sizeof(int) de cette façon. Comme cela a été suggéré, il est possible de faire une gros switch/case avec les noms des systemes, mais ce n'est pas tres extensible, et reste approximatif.
    Le mieux serait peut etre d'utiliser un petit programme C (resultat de "get system endianess sur google) :
    http://www.linuxforums.org/forum/linux-programming-scripting/63464-finding-out-systems-endianness.html

    Note : Je ne sais pas trop à quoi vont servir ces infos, mais si c''est en vue de compiler des programmes, cela rentre en plein dans le champ d'application des autotools (ou cmake et autres). Il existe meme des macros automake/autoconf pour determiner l'endianess.

    • [^] # Re: en C

      Posté par  . Évalué à 1.

      Merci castorpilot,
      c'est effectivement pour la phase de génération à partir de source en C++. Mon système de build est bien avancé maintenant, il s'appuie sur les Makefiles sans Autotools. Je dois reconnaitre que je ne maitrise pas autotools. J'y ai bien pensé mais ça à l'air trop compliqué pour moi.
      Sinon c'est quoi les macros que je jette un coup d'oeil?
      Cdlt.
    • [^] # Re: en C

      Posté par  . Évalué à 1.

      Oups, je viens de voir que votre lien indiquait la Macro.
      Est-ce que vous avez une idée du minimum à installer pour pouvoir utiliser cette macro?

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.