Re: ArsTechnica new article on Windows getting bash

Reece Arnott <[email protected]> Wed, 6 Apr 2016 09:40:24 +1200
Newsgroups gmane.org.user-groups.linux.dunedin.general
Message-ID <CALhZJhowc42Y5kOVBTYXUOR9LaCymKVBAicJ5dUy5WZsr_HTpg@mail.gmail.com>
--===============2711338527001960123==
Content-Type: multipart/alternative; boundary=94eb2c122e5c6053ae052fc3b1d4

--94eb2c122e5c6053ae052fc3b1d4
Content-Type: text/plain; charset=UTF-8

I was wanting some idea of what "smaller" means so I found some numbers
from wikipedia: https://en.wikipedia.org/wiki/System_call

"Many modern operating systems have hundreds of system calls. For example,
Linux <https://en.wikipedia.org/wiki/Linux_kernel> and OpenBSD
<https://en.wikipedia.org/wiki/OpenBSD> each have over 300 different calls,
[2] <https://en.wikipedia.org/wiki/System_call#cite_note-2>[3]
<https://en.wikipedia.org/wiki/System_call#cite_note-3> NetBSD
<https://en.wikipedia.org/wiki/NetBSD> has close to 500,[4]
<https://en.wikipedia.org/wiki/System_call#cite_note-4> FreeBSD
<https://en.wikipedia.org/wiki/FreeBSD> has over 500,[5]
<https://en.wikipedia.org/wiki/System_call#cite_note-5> similarly Windows 7
has close to 700, while Plan 9
<https://en.wikipedia.org/wiki/Plan_9_from_Bell_Labs> has 51.[6]
<https://en.wikipedia.org/wiki/System_call#cite_note-6>"

Note that "close to 700" doesn't have a citation and the table at
http://j00ru.vexillium.org/ntapi_64/ which is headed "Windows X86-64 System
Call Table (NT/2000/XP/2003/Vista/2008/7/2012/8)" and has nearer to 500
entries.

(And the cite note for Linux that is "over 300" goes to the man page for
syscalls(2) which lists 402 system calls.)





On Wed, Apr 6, 2016 at 9:13 AM, Paul Campbell <[email protected]> wrote:

> On Wed, 06 Apr 2016 09:05:19 Reece Arnott wrote:
> > The first time I heard about this I thought it was probably a lost in
> > translation April Fools day joke and I haven't had time to look into it
> > much but heres a short article that has a bit of technical detail:
> >
> >
> http://arstechnica.com/information-technology/2016/03/ubuntus-bash-and-linux
> > -command-line-coming-to-windows-10/
> >
> > My reading of this is that Microsoft are supplying kernel components with
> > APIs the same as the Linux kernel (a step up from the POSIX support they
> > have had hidden away in Windows since the turn of the century) so that
> > anything written for Linux should work but they are farming out the
> actual
> > testing of this to Canonical. Canonical in turn will be primarily making
> > sure that the user mode applications in a standard Ubuntu build work. If
> > that all works then I guess everyone will just assume that its likely
> that
> > everyone elses weird Linux programs will work as well.
>
> essentially what they have done is implement wine for linux for windows - a
> compatibility layer for windows that emulates linux system calls .... it's
> a
> lot easier to do than implementing wine because the system call API
> surface is
> so much smaller
>
> It's also nothing new - we were doing the same thing to run other unix
> binaries on our unix systems back before linux existed .... (including
> Microsoft's xenix).
>
>         Paul
>
> _______________________________________________
> DunLUG mailing list
> [email protected]
> http://lists.ethernal.org/listinfo/dunlug
> DunLUG Wiki - http://dunlug.kallisti.net.nz/

--94eb2c122e5c6053ae052fc3b1d4
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div><div><div>I was wanting some idea of what &quot;small=
er&quot; means so I found some numbers from wikipedia: <a href=3D"https://e=
n.wikipedia.org/wiki/System_call">https://en.wikipedia.org/wiki/System_call=
</a><br><br>&quot;Many modern operating systems have hundreds of system cal=
ls. For example, <a href=3D"https://en.wikipedia.org/wiki/Linux_kernel" tit=
le=3D"Linux kernel">Linux</a> and <a href=3D"https://en.wikipedia.org/wiki/=
OpenBSD" title=3D"OpenBSD">OpenBSD</a> each have over 300 different calls,<=
sup id=3D"cite_ref-2" class=3D""><a href=3D"https://en.wikipedia.org/wiki/S=
ystem_call#cite_note-2">[2]</a></sup><sup id=3D"cite_ref-3" class=3D""><a h=
ref=3D"https://en.wikipedia.org/wiki/System_call#cite_note-3">[3]</a></sup>=
 <a href=3D"https://en.wikipedia.org/wiki/NetBSD" title=3D"NetBSD">NetBSD</=
a> has close to 500,<sup id=3D"cite_ref-4" class=3D""><a href=3D"https://en=
.wikipedia.org/wiki/System_call#cite_note-4">[4]</a></sup> <a href=3D"https=
://en.wikipedia.org/wiki/FreeBSD" title=3D"FreeBSD">FreeBSD</a> has over 50=
0,<sup id=3D"cite_ref-5" class=3D""><a href=3D"https://en.wikipedia.org/wik=
i/System_call#cite_note-5">[5]</a></sup> similarly Windows 7 has close to 7=
00, while <a href=3D"https://en.wikipedia.org/wiki/Plan_9_from_Bell_Labs" t=
itle=3D"Plan 9 from Bell Labs">Plan 9</a> has 51.<sup id=3D"cite_ref-6" cla=
ss=3D""><a href=3D"https://en.wikipedia.org/wiki/System_call#cite_note-6">[=
6]</a></sup>&quot;<br><br></div>Note that &quot;close to 700&quot; doesn&#3=
9;t have a citation and the table at <a href=3D"http://j00ru.vexillium.org/=
ntapi_64/">http://j00ru.vexillium.org/ntapi_64/</a> which is headed &quot;W=
indows X86-64 System Call Table (NT/2000/XP/2003/Vista/2008/7/2012/8)&quot;=
 and has nearer to 500 entries.<br><br></div>(And the cite note for Linux t=
hat is &quot;over 300&quot; goes to the man page for syscalls(2) which list=
s 402 system calls.)<br><br></div><br><div><br><br></div></div><div class=
=3D"gmail_extra"><br><div class=3D"gmail_quote">On Wed, Apr 6, 2016 at 9:13=
 AM, Paul Campbell <span dir=3D"ltr">&lt;<a href=3D"mailto:[email protected]=
" target=3D"_blank">[email protected]</a>&gt;</span> wrote:<br><blockquote c=
lass=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;=
padding-left:1ex"><div class=3D"HOEnZb"><div class=3D"h5">On Wed, 06 Apr 20=
16 09:05:19 Reece Arnott wrote:<br>
&gt; The first time I heard about this I thought it was probably a lost in<=
br>
&gt; translation April Fools day joke and I haven&#39;t had time to look in=
to it<br>
&gt; much but heres a short article that has a bit of technical detail:<br>
&gt;<br>
&gt; <a href=3D"http://arstechnica.com/information-technology/2016/03/ubunt=
us-bash-and-linux" rel=3D"noreferrer" target=3D"_blank">http://arstechnica.=
com/information-technology/2016/03/ubuntus-bash-and-linux</a><br>
&gt; -command-line-coming-to-windows-10/<br>
&gt;<br>
&gt; My reading of this is that Microsoft are supplying kernel components w=
ith<br>
&gt; APIs the same as the Linux kernel (a step up from the POSIX support th=
ey<br>
&gt; have had hidden away in Windows since the turn of the century) so that=
<br>
&gt; anything written for Linux should work but they are farming out the ac=
tual<br>
&gt; testing of this to Canonical. Canonical in turn will be primarily maki=
ng<br>
&gt; sure that the user mode applications in a standard Ubuntu build work. =
If<br>
&gt; that all works then I guess everyone will just assume that its likely =
that<br>
&gt; everyone elses weird Linux programs will work as well.<br>
<br>
</div></div>essentially what they have done is implement wine for linux for=
 windows - a<br>
compatibility layer for windows that emulates linux system calls .... it&#3=
9;s a<br>
lot easier to do than implementing wine because the system call API surface=
 is<br>
so much smaller<br>
<br>
It&#39;s also nothing new - we were doing the same thing to run other unix<=
br>
binaries on our unix systems back before linux existed .... (including<br>
Microsoft&#39;s xenix).<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 Paul<br>
<br>
_______________________________________________<br>
DunLUG mailing list<br>
<a href=3D"mailto:[email protected]">[email protected]</a><=
br>
<a href=3D"http://lists.ethernal.org/listinfo/dunlug" rel=3D"noreferrer" ta=
rget=3D"_blank">http://lists.ethernal.org/listinfo/dunlug</a><br>
DunLUG Wiki - <a href=3D"http://dunlug.kallisti.net.nz/" rel=3D"noreferrer"=
 target=3D"_blank">http://dunlug.kallisti.net.nz/</a></blockquote></div><br=
></div>

--94eb2c122e5c6053ae052fc3b1d4--


--===============2711338527001960123==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KRHVuTFVHIG1h
aWxpbmcgbGlzdApEdW5MVUdAbGlzdHMuZXRoZXJuYWwub3JnCmh0dHA6Ly9saXN0cy5ldGhlcm5h
bC5vcmcvbGlzdGluZm8vZHVubHVnCkR1bkxVRyBXaWtpIC0gaHR0cDovL2R1bmx1Zy5rYWxsaXN0
aS5uZXQubnov

--===============2711338527001960123==--