<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Sep 5, 2021 at 2:22 AM Reinhard Kotucha <<a href="mailto:reinhard.kotucha@web.de">reinhard.kotucha@web.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi,<br>
on a 64 bit Windows machine os.uname() erroneously returns<br>
<br>
  machine       i686<br>
<br>
On the same machine I get under Linux<br>
<br>
  machine       x86_64<br>
<br>
with both, x86_64-linux and i386-linux binaries.  Thus I assume that<br>
the keyword 'machine' refers to the hardware, not to how the binaries<br>
were compiled (32 vs. 64 bit).<br>
<br>
The complete output of<br>
<br>
  for k,v in pairs(os.uname()) do<br>
    print(k,v)<br>
  end<br>
<br>
is<br>
<br>
  release       build 9200<br>
  nodename      R804<br>
  version       6.02<br>
  machine       i686<br>
  sysname       Windows 8<br><br></blockquote><div> </div></div><br clear="all"><div>#ifdef _WIN32<br>#  define _UTSNAME_LENGTH 65<br><br>/* Structure describing the system and machine.  */<br>struct utsname {<br>    char sysname[_UTSNAME_LENGTH];<br>    char nodename[_UTSNAME_LENGTH];<br>    char release[_UTSNAME_LENGTH];<br>    char version[_UTSNAME_LENGTH];<br>    char machine[_UTSNAME_LENGTH];<br>};<br><br>/*<br> * Get name and information about current kernel.<br> */<br>static int uname(struct utsname *uts)<br></div><div>:</div><div><br></div><div>case WinNT:<br>            sprintf(uts->machine, "i%d86", sysinfo.wProcessorLevel);<br>            break;<br></div><div><br></div><div>I guess that wProcessorLevel gives 6 in your case.</div><div><br></div>-- <br><div dir="ltr" class="gmail_signature">luigi<br></div></div>