Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

plate forme x86, x64, ia64 et systems d'exploitation 32bits et 64bits

108 views
Skip to first unread message

Stephane

unread,
Sep 18, 2009, 8:23:37 AM9/18/09
to
bonjour,

quelqu'un pourrait il m'expliquer concr�tement ce que signifient plate forme
x86, x64, ia64 ainsi que les systems d'exploitation 32bits et 64bits ?

merci d'avance et bonne journ�e.

JF

unread,
Sep 18, 2009, 9:47:37 AM9/18/09
to
> bonjour,
Bonjour
>
> quelqu'un pourrait il m'expliquer concrᅵtement ce que signifient plate forme
> x86, x64, ia64

x86 = Intel
cette appellation vient de l'Intel 8086 et de son jeu d'instructions
http://fr.wikipedia.org/wiki/X86

x64 = AMD
http://fr.wikipedia.org/wiki/X64

ia64 = processeurs pour serveurs
http://fr.wikipedia.org/wiki/IA-64
http://fr.wikipedia.org/wiki/Itanium

> ainsi que les systems d'exploitation 32bits et 64bits ?

1/ Tous les processeurs actuels sont 64 bits

2/ Systᅵme d'exploitation 32 bits
Son adressage ne dᅵpasse pas un nombre binaire constituᅵ de 32 bits :
11111111 11111111 11111111 11111111 = 2puissance32-1 = (2^32-1)
Entrer ce nombre en binaire dans la calculatrice scientifique de
Windows (WIN+R, calc) ==>
FFFFFFFF en hexadᅵcimal
4 294 967 295 en dᅵcimal
On dit que ce systᅵme ne peut adresser plus de 4 Giga d'emplacements
mᅵmoire d'un octet, on parle couramment de limite mᅵmoire de 4 Go.

3/ Systᅵme d'exploitation 64 bits
Devrait adresser 2^64-1 octets ==>
1111111111111111111111111111111111111111111111111111111111111111
FFFFFFFFFFFFFFFF
18 446 744 073 709 551 615
18 Exa octets
En pratique c'est moins
http://www.presence-pc.com/actualite/windows-4go-ram-64bits-33121/

Les cartes mᅵres sont souvent limitᅵes ᅵ 6 ou 8 Go.

Un os 64 bits saura faire fonctionner les applis 32 bits.
Mais les applis 64 bits utiliseront toutes les ressource du processeur
et de son systᅵme d'adressage. Elles ne sont pas nombreuses.

Le gros inconvᅵnient est celui des pilotes. Les fabricants ne
fournissent pas toujours les drivers adᅵquats pour les matᅵriels.

Le gros avantage est la possibilitᅵ d'utiliser plusieurs Go de RAM. On
peut alors travailler trᅵs confortablement avec de grosses
applications, faire fonctionner plusieurs machines virtuelles en mᅵme
temps, etc.

Comment faire pour dᅵterminer si votre ordinateur exᅵcute une version
32 bits ou 64 bits de Windows XP
http://support.microsoft.com/kb/827218/fr

Dᅵmarrer>Exᅵcuter :
cmd /k set
pour afficher les variables d'environnement :
Extrait pour un 64 bits :
PROCESSOR_ARCHITECTURE=AMD64
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 26 Stepping 4, GenuineIntel
PROCESSOR_LEVEL=6
PROCESSOR_REVISION=1a04

Extrait pour un 32 bits :
PROCESSOR_ARCHITECTURE=x86
PROCESSOR_IDENTIFIER=x86 Family 6 Model 26 Stepping 4, GenuineIntel
PROCESSOR_LEVEL=6
PROCESSOR_REVISION=1a04

On peut se contenter de :
cmd /k echo %PROCESSOR_ARCHITECTURE%


Comparaison de l'architecture des mᅵmoires 32 bits et 64 bits pour les
ᅵditions 64 bits de Windows XP et Windows Server 2003
http://support.microsoft.com/kb/294418


Discussion :
http://groups.google.com/group/microsoft.public.fr.windows.vista.general/msg/115a925c2a39d3f2

--
Salutations, Jean-Franᅵois
http://fspsa.free.fr/Virus-Malwares-Comment-on-se-fait-infecter.htm


Marc Lognoul [MVP]

unread,
Sep 18, 2009, 10:25:00 AM9/18/09
to
Bonjour,

Wow, ᅵa c'est complet ;)
Juste 2 prᅵcisions:

> Un os 64 bits saura faire fonctionner les applis 32 bits.

Un OS "Windows" fait cela, ce n'est pas forcᅵment le cas des autres ;)
Et comme d'habitude, cela se fait tellement naturellement sous Windows que
l'on ignore que certaines chemins sur le disque et dans le registre sont
"redirigᅵs" en fonction de l'ᅵxᅵcutable 32 ou 64-bit...

> On peut se contenter de :
> cmd /k echo %PROCESSOR_ARCHITECTURE%

Cette mᅵthode n'est pas fiable car la variable ne dᅵpend pas de la
plateforme mais du type d'ᅵxᅵcutable.
Si tu ᅵxᅵcutes cette commande dans un CMD 32-bit sur un Windows 64-bit, elle
retournera x86...

--
Marc Lognoul [MCSE, MCTS, MVP]
Heureux celui qui a pu pᅵnᅵtrer les causes secrᅵtes des choses
Happy is the one who could enter the secret causes of things
Blog EN: http://www.marc-antho-etc.net/blog/
Blog FR: http://www.marc-antho-etc.net/blogfr/

JF

unread,
Sep 18, 2009, 11:57:07 AM9/18/09
to
> Bonjour,
Bonjour

>
> Wow, ᅵa c'est complet ;)

Wow est le mot (C:\Windows\SysWOW64\cmd.exe)

> Juste 2 prᅵcisions:
>
>> Un os 64 bits saura faire fonctionner les applis 32 bits.
> Un OS "Windows" fait cela, ce n'est pas forcᅵment le cas des autres ;)
> Et comme d'habitude, cela se fait tellement naturellement sous Windows que
> l'on ignore que certaines chemins sur le disque et dans le registre sont
> "redirigᅵs" en fonction de l'ᅵxᅵcutable 32 ou 64-bit...
>
>> On peut se contenter de :
>> cmd /k echo %PROCESSOR_ARCHITECTURE%
> Cette mᅵthode n'est pas fiable car la variable ne dᅵpend pas de la plateforme
> mais du type d'ᅵxᅵcutable.
> Si tu ᅵxᅵcutes cette commande dans un CMD 32-bit sur un Windows 64-bit, elle
> retournera x86...

Merci coach pour ces prᅵcisions :

http://www.niouzes.org/microsoft-public-windowsxp/408546-administrateur.html#post1543926
==>

Sur une plateforme 32 bits :
PROCESSOR_ARCHITECTURE=x86 en natif (32 bits)

Sur une plateforme 64 bits :
PROCESSOR_ARCHITECTURE=x86 sous WOW64 (32 bits)
PROCESSOR_ARCHITECTURE=AMD64 en natif (64 bits)

Donc un processus 32 bits retourne toujours x86 quelle
que soit la plateforme 32/64 bits sur laquelle il s'exᅵcute.

Il est toutefois ᅵ noter la prᅵsence de la variable d'environnement
PROCESSOR_ARCHITEW6432 sous WOW64 qui retourne bien cette fois-ci AMD64

32-bit and 64-bit Application Data in the Registry
http://msdn.microsoft.com/en-us/library/ms724072.aspx

--
Salutations, Jean-Franᅵois
http://fspsa.free.fr/index-de-la-faq-winxp-de-panthere-noire.htm


Marc Lognoul [MVP]

unread,
Sep 22, 2009, 3:27:00 AM9/22/09
to
Bonjour,

> Il est toutefois ᅵ noter la prᅵsence de la variable d'environnement
> PROCESSOR_ARCHITEW6432 sous WOW64 qui retourne bien cette fois-ci AMD64

Exact! Petit post en anglais de David Wang qui dᅵtaille une mᅵthode facile
de dᅵtection:
http://blogs.msdn.com/david.wang/archive/2006/03/26/HOWTO-Detect-Process-Bitness.aspx

JF

unread,
Sep 22, 2009, 9:52:50 AM9/22/09
to
> Bonjour,
Bonjour

>> Il est toutefois ᅵ noter la prᅵsence de la variable d'environnement
>> PROCESSOR_ARCHITEW6432 sous WOW64 qui retourne bien cette fois-ci AMD64
> Exact! Petit post en anglais de David Wang qui dᅵtaille une mᅵthode facile de
> dᅵtection:
> http://blogs.msdn.com/david.wang/archive/2006/03/26/HOWTO-Detect-Process-Bitness.aspx

Pas facile d'adapter en batch du fait que la variable est indᅵfinie sur
un OS 32 bits :
os32-64.cmd

@echo off>nul
set fichier=%temp%\%random%%random%.txt
if /i %PROCESSOR_ARCHITECTURE%==x86 goto :32
if /i %PROCESSOR_ARCHITECTURE%==AMD64 goto :64
goto :end
:32
echo %PROCESSOR_ARCHITEW6432% >%fichier%
for /F %%a in (%fichier%) do if /i %%a==AMD64 goto :64
echo Windows 32 bits !
goto :end
:64
echo Windows 64 bits !
:end
del %fichier%
@pause
goto :eof
http://fspsa.free.fr/os32-64.cmd


Dans un processus 32 bits, %PROCESSOR_ARCHITECTURE%=x86 et on est
branchᅵ sur l'ᅵtiquette :32

Le cᅵtᅵ indᅵfini que peut avoir la variable %PROCESSOR_ARCHITEW6432%
pose alors problᅵme.

C'est donc par un procᅵdᅵ inavouable qu'on rᅵcupᅵre le contenu de
%PROCESSOR_ARCHITEW6432% si la variable est dᅵfinie.

Si alors ce contenu est "AMD64" c'est qu'on est dans un processus 32
bits tournant dans un OS 64 Bits, et on est alors branchᅵ sur
l'ᅵtiquette :32

ᅵa a l'air de fonctionner :
Vista 32 rᅵpond 32 bits
Vista 64 rᅵpond :

C:\Windows\System32\cmd.exe os32-64.cmd ==> 64 bits
C:\Windows\SysWOW64\cmd.exe os32-64.cmd ==> 64 bits

--
Salutations, Jean-Franᅵois
http://fspsa.free.fr/hijackthis-c-fini.htm


JF

unread,
Sep 22, 2009, 10:00:41 AM9/22/09
to
CORRECTION :

Si alors ce contenu est "AMD64" c'est qu'on est dans un processus 32
bits tournant dans un OS 64 Bits, et on est alors branchᅵ sur
l'ᅵtiquette :64

Pierre TORRIS

unread,
Sep 22, 2009, 2:06:00 PM9/22/09
to
JF <j...@news.invalid> a ᅵcrit dans ce message
<news:u7Hw8v4...@TK2MSFTNGP06.phx.gbl> :

Bonjour JF,

> Pas facile d'adapter en batch du fait que la variable est indᅵfinie sur un OS
> 32 bits :

Ce n'est pas qu'elle est indᅵfinie, mais qu'elle n'est pas dᅵfinie. ;-)

> Le cᅵtᅵ indᅵfini que peut avoir la variable %PROCESSOR_ARCHITEW6432% pose
> alors problᅵme.
>
> C'est donc par un procᅵdᅵ inavouable qu'on rᅵcupᅵre le contenu de
> %PROCESSOR_ARCHITEW6432% si la variable est dᅵfinie.

Utilise DEFINED pour tester si la variable est dᅵfinie :

:32
if DEFINED PROCESSOR_ARCHITEW6432 goto :64

> Si alors ce contenu est "AMD64" c'est qu'on est dans un processus 32 bits

> tournant dans un OS 64 Bits...

AMHA il est prᅵfᅵrable de se baser sur la mention "x86",
car la mention "AMD64" peut ᅵtre remplacᅵe par "IA64" (Itaniums).

--
Bien ᅵ vous. Pierre TORRIS
www.ptorris.com


JF

unread,
Sep 22, 2009, 7:56:00 PM9/22/09
to
> Bonjour JF,
Bonjour Pierre

>> Pas facile d'adapter en batch du fait que la variable est indᅵfinie sur un
>> OS 32 bits :
> Ce n'est pas qu'elle est indᅵfinie, mais qu'elle n'est pas dᅵfinie.

C'est ᅵa.

> Utilise DEFINED pour tester si la variable est dᅵfinie :

> if DEFINED PROCESSOR_ARCHITEW6432 goto :64

J'ai cru que ᅵa n'existait pas en batch
XXV-A-2. Instruction "if defined"
http://windows.developpez.com/cours/ligne-commande/

>> Si alors ce contenu est "AMD64" c'est qu'on est dans un processus 32 bits
>> tournant dans un OS 64 Bits...
> AMHA il est prᅵfᅵrable de se baser sur la mention "x86",
> car la mention "AMD64" peut ᅵtre remplacᅵe par "IA64" (Itaniums).

Bien vu. Correction :


@echo off>nul


if /i %PROCESSOR_ARCHITECTURE%==x86 goto :32

if defined PROCESSOR_ARCHITEW6432 goto :wow64
echo Processus 64 bits natif sur une plateforme
%PROCESSOR_ARCHITECTURE%
goto :end
:32
if defined PROCESSOR_ARCHITEW6432 goto :wow64
echo Processus 32 bits natif
goto :end
:wow64
echo Processus 32 bits sur une plateforme 64 bits
:end
@pause
goto :eof
http://fspsa.free.fr/os6432.cmd

Merci pour le coup de pouce.

--
Salutations, Jean-Franᅵois
http://fspsa.free.fr/Capture-Ecran-et-Publication-vers-Newsgroups.htm


0 new messages