[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 12/03 10:30 / Filesize : 273 KB / Number-of Response : 1029
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Windows搭載予定のLinuxサブシステムでUbuntuが動作



1 名前:login:Penguin mailto:sage [2016/03/30(水) 14:57:55.72 ID:2b3xF4As.net]
WindowsはLinuxの機能をもエミュレートする


?Microsoft and Canonical partner to bring Ubuntu to Windows 10
You'll soon be able to run Ubuntu on Windows 10.

www.zdnet.com/article/microsoft-and-canonical-partner-to-bring-ubuntu-to-windows-10/

652 名前:login:Penguin mailto:sage [2016/05/17(火) 20:55:31.84 ID:ctsYjtq9.net]
>>636
めんどくさいなあ、もう。
じゃあMac OS X 標準のHFS+だと区別しない、と書きなおす。
でもWSLのファイルシステムが標準で区別することは、
当たり前じゃなくてありがたい仕様じゃないの?

ついでだけど、ファイルシステムを見ようとするとエラーになるわ。
$ df -T
df: cannot read table of mounted file systems: No such file or directory

653 名前:login:Penguin mailto:sage [2016/05/17(火) 21:03:49.42 ID:D/UYe8Ee.net]
>>637
言っていることがよく分からない
「WSLのファイルシステム」ってのは何のこと?
もしかしてWSLがNTFSドライバをわざわざ独自実装してると思ってるの?
>>636に書いたことでその辺のこともカバーしてるんだけど分かりにくかったかな
WSLはWindowsのNTFSドライバに仕事丸投げしているはずで
そこでignore caseならWSLでcase sensitiveにすることは不可能

654 名前:login:Penguin mailto:sage [2016/05/17(火) 21:04:48.85 ID:wmT3kSQ3.net]
>>637
/proc まだ実装されてないんでなかった?
/proc/partitions とかが開けないってだけだと思うけど。

655 名前:login:Penguin mailto:sage [2016/05/17(火) 21:32:04.71 ID:ctsYjtq9.net]
>>638
自分は /mnt/c 以下はNTFSをマウントされて、それ以外はext4あたりなんじゃないかと想像してた。
それ以外のディレクトリで hoge.txt と HOGE.txtが共存できるのはそのせいだと。
しかし $ mount を実行してもそれっぽい結果にならないんで困惑中。

全体をNTFSが管理しているのなら、なんで /mnt/c 以外では大文字小文字が区別されんの?

>>639
あ、なるほど。 /proc に依存しない確認方法ってある?
$ sudo /sbin/parted -l
は何も返さなかった。

656 名前:login:Penguin mailto:sage [2016/05/17(火) 21:47:22.48 ID:D/UYe8Ee.net]
>>640
そもそもNTFSはフォルダ内にFOOもfooも同時に持てる
NTFSはPOSIXサブシステムのためにPOSIX互換があるから
けどWindowsサブシステムでは大文字小文字区別しないから
Windowsサブシステムは自分が使う領域にはFOOがあればfooは作らない
そういうセマンティクスだから/mnt/cではWSLがそれに合わせないと
Windowsサブシスタム側のアプリが困ってしまう

657 名前:login:Penguin mailto:sage [2016/05/17(火) 21:49:17.39 ID:D/UYe8Ee.net]
ちなみにロングファイルネーム拡張が入る前のFAT内部では
パス名にアルファベットは大文字しか使えず
参照時に大文字と小文字は区別しなかった

658 名前:login:Penguin mailto:sage [2016/05/17(火) 21:49:22.14 ID:xRMSTkW7.net]
>>640
> 全体をNTFSが管理しているのなら、なんで /mnt/c 以外では大文字小文字が区別されんの?

だからNTFSでは大文字小文字は区別されるのに
WindowsAPIでは区別しないから面倒くさいことになってるんだろ

659 名前:login:Penguin mailto:sage [2016/05/17(火) 21:54:26.22 ID:D/UYe8Ee.net]
>>640
mountコマンドによれば
/以下はrootfsっていう特殊なファイルシステムのようです
/dev/の下にもdisk deviceはない

/dev/adssはAndroid subsystem時代の名残ですかね

660 名前:login:Penguin mailto:sage [2016/05/17(火) 22:03:11.71 ID:D/UYe8Ee.net]
ちなみに
$ cd
$ echo foo > foo
$ echo FOO > FOO
$ ls
foo FOO
$ cat foo
foo
$ cat FOO
FOO
だが同じファイルをcmd.exeで
> cd \Users\誰かさん\AppData\Local\lxss\home\リナックスの誰かさん
> dir
xxxxxx 0 FOO
xxxxxx 4 foo
> type foo
foo
foo
> type FOO
foo
foo
となる
Build 14342ね



661 名前:login:Penguin mailto:sage [2016/05/17(火) 22:12:33.48 ID:D/UYe8Ee.net]
>>516
それから上でinitに話が出てるけど
psして出てくるのは/sbin/initではなくて/init
これは一部モジュールがLxssManager.dllと共有されてると思われるLxss独自のコマンド
たぶんLinuxサブシステムから起動されて渡された情報を元に
普通のLinuxでは/etc/init.d/rc等の仕事をやるコマンド
hostnameの設定とか
/etc/hosts, /etc/resolv.confもこいつが作ってるみたい
情報の授受に使うモジュールが共通なのだろう

662 名前:login:Penguin mailto:sage [2016/05/17(火) 23:36:52.54 ID:ctsYjtq9.net]
遅くなりました。いろいろありがとう。
> なんで /mnt/c 以外では大文字小文字が区別されんの?
この質問は、理由や動機じゃなくて仕組みを聞いたつもりだったんだけど、
WSLがこのディレクトリを特別扱いしているということなのね。

>>645 は大変勉強になりました。
しかし自分の環境では
\Users\誰かさん\AppData\Local\lxss
が見つからない。
\Users でファイル名 lxss で検索しても引っかからない。うう。

663 名前:login:Penguin mailto:sage [2016/05/17(火) 23:38:48.37 ID:+GSpJ1gK.net]
大文字小文字区別のcase sensitive file systemの投票はここ。
https://wpdev.uservoice.com/forums/266908-command-prompt-console-bash-on-ubuntu-on-windo/suggestions/13375260-bashonwindows-must-support-a-case-sensitive-file-s

OSXでandroidビルドする時にこれが原因でビルドエラーになったことがあるな。

664 名前:login:Penguin mailto:sage [2016/05/17(火) 23:42:02.44 ID:+GSpJ1gK.net]
>>646
WSL用のinitの挙動は知りたいね。
現状なんもやってない気がするけど。

665 名前:login:Penguin mailto:sage [2016/05/18(水) 00:09:18.85 ID:J6kxD2XB.net]
>>640
君の知識レベルで手を出すのは早いと思うよ

666 名前:login:Penguin mailto:sage [2016/05/18(水) 00:26:53.60 ID:pM439fj4.net]
ぶっちゃけWSLはアプリを動かす環境であって
デバイスを管理する環境じゃないんだわ。

目標はハードウェアのエミュレータじゃないので、
ファイルシステムがどうとか、そういうのは
後回しにするべきだし、実際後回しなんだろ。

ディスクなんかはWSLを通さずにWindowsから
直接管理すればいいわけで、つまりお前使い方間違ってるぞ。

667 名前:login:Penguin mailto:sage [2016/05/18(水) 00:27:52.71 ID:SNqH199o.net]
>>647
エクスプローラのフォルダパス欄に↓の文字を貼り付ければ一発で行ける
shell:UsersFilesFolder\AppData\Local\lxss

668 名前:login:Penguin mailto:sage [2016/05/18(水) 00:44:40.66 ID:W2GL/G7L.net]
>>652
ありがとう。行けました。
つうかシステムファイルの表示してなかったんで設定変えました。
まだWin10自体慣れてないな…。

669 名前:login:Penguin mailto:sage [2016/05/18(水) 00:53:16.99 ID:12S2FVU/.net]
つうかbashかcmd.exe使ってよ
エクスプローラかよ

670 名前:login:Penguin mailto:sage [2016/05/18(水) 01:12:12.63 ID:CGIuw4Kk.net]
Ubuntuでやりたいことをしたかったら、WSLでなくHyper-VにUbuntu入れろってことだ。
Win10 Proならできるだろ。



671 名前:login:Penguin mailto:sage [2016/05/18(水) 01:31:24.21 ID:12S2FVU/.net]
そういう話は誰もしてない

672 名前:login:Penguin mailto:sage [2016/05/18(水) 02:03:29.14 ID:12S2FVU/.net]
>>649
>>646以外だと全てのbashが終了するのを待ってる

せっかくなので書き残しとく
$ cat /proc/sys/kernel/osrelease
3.4.0-Microsoft

673 名前:login:Penguin mailto:sage [2016/05/18(水) 09:31:02.38 ID:pM439fj4.net]
>>655
Ubuntuでやろうとしてるんじゃなくて
Windowsでやってるんだよw

Windowsでも開発系色々動くしな。
それがさらに強化されるってこと。

674 名前:login:Penguin mailto:sage [2016/05/18(水) 13:20:35.03 ID:W2GL/G7L.net]
そう言えば、 >>570 のリンク先の記事に
> Bash On Windows もおそらくこういった問題があると思います。
> (追記: 例えばファイルシステムが NTFS 上なので ext4 と同等のファイル属性が持てません。)
って書いてあったけど、
これ「拡張ファイル属性」ってやつ?
それがNTFSと互換性がないとして、そんなに問題なんだろうか?

675 名前:login:Penguin mailto:sage [2016/05/18(水) 15:39:27.25 ID:8Z0BHge9.net]
>>659
chattr相当が出来るioctlがあるのが前提だと困るだろうけど
そんなコマンドは殆どないんじゃないかな?

676 名前:login:Penguin mailto:sage [2016/05/18(水) 17:30:30.28 ID:12S2FVU/.net]
lxrun /setdefaultuserで設定出来るデフォルトユーザは
HKEY_USERS\xxxxx\SOFTWARE\Microsoft\Wnidows\Current\Version\Lxss
にDefault{Usernane, Uid, Gid}として書いてあるね
起動シーケンスは結構単純だね
WindowsからWSLのコマンド実行も出来る

C:\Users\xxxxx>bash -c 'pwd'
/mnt/c/Users/xxxxx

C:\Users\xxxxx>bash -c ‘echo $HOME’
/home/yyyyy

C:\Users\xxxxx>bash -c ‘ls $HOME’
echo.sh

C:\Users\xxxxx>bash -c 'cat $HOME/echo.sh'
echo This is a test

C:\Users\xxxxx>bash -c '$HOME/echo.sh'
This is a test

677 名前:login:Penguin mailto:sage [2016/05/18(水) 18:51:11.50 ID:12S2FVU/.net]
>>345
ttyはもう結構出来てるんじゃないか?
相手がWindowsコンソールとはいえvimとか動いているし
ttyデバイスはかなりややこしいセマンティクスを持っているから
独自実装だと非常に細かい所までttyデバイスを実装できてるとも思わないけども

ptyはttyがちゃんと出来ていればそれほど難しくない
作った時にpipe的接続したり読み書きでバッファリングしたり
kernelのソース見るとptyがらみは1000行くらいしかない


678 名前:drivers/tty/以下は全部で20000行くらいあるんだけど
ptyないとdebconfのpostinst辺りで芳しくないケースあるから
ちゃんと作ってくると思うけどね
[]
[ここ壊れてます]

679 名前:login:Penguin mailto:sage [2016/05/18(水) 18:52:15.17 ID:7oVJDw8v.net]
>>640
> なんで /mnt/c 以外では大文字小文字が区別されんの?

「/mnt/c 以外」とは具体的にどのドライブ?(あるいはディレクトリ?)でしょうか?

680 名前:login:Penguin mailto:sage [2016/05/18(水) 19:00:14.49 ID:7oVJDw8v.net]
すみませんが、>>645のファイル FOO の実体は何ですか?



681 名前:login:Penguin mailto:sage [2016/05/18(水) 19:10:03.84 ID:7oVJDw8v.net]
>>661
Bashがパイプを受け付けてくれたら
WindowsコマンドとBashの連携が簡単になりそうですが
(環境を用意していないので、ガヤばかりですみません)

682 名前:login:Penguin mailto:sage [2016/05/18(水) 19:22:17.67 ID:12S2FVU/.net]
>>663
WSL内の/以下全部でしょ

>>664
よく分かってない
WSL側でFOOを編集したりしてると正しいサイズを表示することもある
「type foo」で二行出てくるのも分からない
大文字小文字違いの同名ファイルがないファイルではこういうことは起きない
どういう実装だとこういうことが起きるのだろうか
「type foo*」すると更に訳が分からない
sync; sync; syncも効果なし

ただし最後の「type FOO」はWin32なんで「type foo」したのと同じ
directory entryに最初に出てきた方にマッチしてる
その例ではfooをFOOより先に作ったから
directory entryないに先に出てくるfooがマッチしてるんだろう
二行出る意味はそれでも分からないが

683 名前:login:Penguin mailto:sage [2016/05/18(水) 19:35:09.93 ID:12S2FVU/.net]
>>665
pipeもredirectもダメです
エラー 0x80070057
ですって

bash -c と起動されたbashも
本物と違うWSLのbash.exeだから
-c の引数にbashの文法全てを書けるわけじゃないです
例えば|がうまくいかない
>も独自解釈してるみたいだが詳細不明

684 名前:login:Penguin mailto:sage [2016/05/18(水) 23:59:28.55 ID:W2GL/G7L.net]
>>660
そうだよね。どうもありがとう。

>>663
もう正解は答えてもらってるので一言、
自分がそうなんだけど、初心者なのに書き込むのは勇気いるよね。
お互いがんばってスキル上げよう。

685 名前:login:Penguin mailto:sage [2016/05/19(木) 00:51:30.84 ID:go9nYzkE.net]
>>661 >>667
おお、 bash.exe -c でWindowsコマンドとしてWSL内でコマンド実行できるのを初めて知りました・・

WSL内のbashではパイプラインもリダイレクトも大丈夫っぽいです。Win側ではダブルクォート使えばOKですね。
  C:\>bash.exe -c "find /etc -maxdepth 1 | grep hosts"
  /etc/hosts
  /etc/hosts.allow
  /etc/hosts.deny

bash.exeの出力を、Windows側のパイプには渡せないっぽいですね。
  C:\>bash.exe -c "find /etc -maxdepth 1 | grep hosts" | "C:\Program Files\Hidemaru\Hidemaru.exe"
   →エラー 0x80070057が秀丸エディタに出力される

686 名前:login:Penguin mailto:sage [2016/05/19(木) 01:08:44.07 ID:8ZOG/1a3.net]
>>669
ああそうか
cmd.exeはシングルクオートは駄目かw

ただ
> cd \Users\xxxx\AppData\Local\lxss\home\yyyy
> bash -c “echo test > test.txt”
とファイルを作ってもWSL側からは何故か見えませんなあ
> type test.txt
test
なんだけど
$ cd $HOME
$ ls
してもない
$ cat test.txt
も駄目
$ echo test2 > test2.txt
するとtest.txtと同じ所にWin32世界では見られるのに
一度セッション終了しても駄目

687 名前:login:Penguin mailto:sage [2016/05/19(木) 01:14:49.87 ID:go9nYzkE.net]
bash.exe -c でコマンド実行で、対話的な機能もちゃんと動く感じっすね。 微妙に便利?

C:\>bash.exe -c "vi ~/.bashrc" で vi呼び出しての編集動作OK。エスケープシーケンス効いてカラー表示可
C:\>bash.exe -c "python3" で WSLでプリインストールのPythonの対話型シェルに入ることもOK

688 名前:login:Penguin mailto:sage [2016/05/19(木) 01:29:11.73 ID:go9nYzkE.net]
>>670
WSL内で cd $HOME すると、デフォルトのユーザが root だから /home/yyyy ではなくて /rootに行ってる気が
なのでファイルはそっちにあるんじゃないかなー

689 名前:login:Penguin mailto:sage [2016/05/19(木) 07:04:33.46 ID:lczX8MNb.net]
>>666
> >>663
> WSL内の/以下全部でしょ

ちょっと良く分からないのですが、
>>631のignore caseなcpが失敗するのは、/mnt/cを含めた/mnt/c以下のすべてのディレクトリということでしょうか?
> これ、/mnt/c/ディレクトリ以下でだけ失敗するな。
とあるのは、例えばNTFSでフォーマットした/mnt/dでは、ignore caseなcpは成功するということでしょうか?

あと、>>645を実行したのが/mnt/c以下のディレクトリということなら、
これはcase sensitiveな挙動になっていて、先程のcpの挙動と異なっており、
WSLでのファイルのcaseの扱いに統一感がないことになります。

手元に環境がなくて自分で試してみることができずに申し訳ないですが、
WSLでのファイルのcaseの扱いがいまいち分かりませんね。
これは、まだ作り込まれていないからなのか、意図されたものなのか。

>>645のファイル FOO の件もありがとうございました。
良く分からないですね。

>>668
お互い頑張りましょう。

690 名前:login:Penguin mailto:sage [2016/05/19(木) 07:09:18.99 ID:lczX8MNb.net]
>>669
秀丸エディタは、標準入力を受け付けるのでしょうか?
> bash.exe -c "find /etc -maxdepth 1 | grep hosts" | more
としてもエラーになりますか?

あと、どなたか、コマンドプロンプト上で以下のコマンドを試してもらえないでしょうか。
> dir | bash.exe -c "grep DIR -"

これら2つが実行可能なら、多少煩雑ですが、
WindowsコマンドとBashの連携がそれなりにできることになりますね。



691 名前:login:Penguin mailto:sage [2016/05/19(木) 07:30:26.95 ID:go9nYzkE.net]
>>674
>秀丸エディタは、標準入力を受け付けるのでしょうか?

秀丸エディタは何気に標準入力に対応してたりします。
秀丸のEXEにPATHを設定しておくと dir/s | hidemaru みたいなことが出来て便利なので、自分はたまに使ってますね

>C:\>bash.exe -c "find /etc -maxdepth 1 | grep hosts" | more
>ィ0・・・・:

>0
>x
>8
>0
>0
>7
>0
>0
>5
>7

>C:\>dir | bash.exe -c "grep DIR -"
>エラー: 0x80070057

bash.exe は、残念ながら入力・出力どちらの場合のパイプにも非対応みたいですね・・

692 名前:login:Penguin mailto:sage [2016/05/19(木) 10:42:20.48 ID:77lEcDSc.net]


693 名前:んぜん別の話。

このスレの150あたりでXの動作が可能かで揉めてたけど、
実際に動かしてる記事があったんで貼る。
WindowsとUNIXが再び融合する日 - 阿久津良和のWindows Weekly Report | マイナビニュース
http://news.mynavi.jp/articles/2016/04/18/windows10report/
http://news.mynavi.jp/photo/articles/2016/04/18/windows10report/images/003l.jpg
> フリーのWindows用Xサーバーである「Xming」をインストールしたところ、
> いくつかのGUIアプリケーションは正しく起動した。
[]
[ここ壊れてます]

694 名前:login:Penguin mailto:sage [2016/05/19(木) 13:28:27.17 ID:77lEcDSc.net]
あ、2chブラウザで見るには画像はこっちのが良かったな。
n.mynv.jp/articles/2016/04/18/windows10report/images/003l.jpg

695 名前:login:Penguin mailto:sage [2016/05/19(木) 13:41:17.38 ID:8AyDEV15.net]
Bash on Windowsの中から自分が本物のLinuxカーネルじゃなくてWindows Subsystemで動いてるっていうのを確認する方法ある?

696 名前:login:Penguin mailto:sage [2016/05/19(木) 14:57:18.42 ID:yGUwd53d.net]
/procがちゃんとあるかどうか見ればいい

697 名前:login:Penguin mailto:sage [2016/05/19(木) 15:36:51.08 ID:V3LtEN7Q.net]
これが正しい確認方法じゃね?

$ cat /proc/sys/kernel/osrelease
3.4.0-Microsoft

698 名前:login:Penguin mailto:sage [2016/05/19(木) 16:51:48.60 ID:SzL3Sshj.net]
>>680
それ見るのが確実そうね
ありがとう

699 名前:login:Penguin mailto:sage [2016/05/19(木) 21:02:41.42 ID:8ZOG/1a3.net]
>>676
自分とこでも動いてるよ
xlogoとかw

700 名前:login:Penguin mailto:sage [2016/05/19(木) 21:06:49.97 ID:8ZOG/1a3.net]
>>680
unameの方はまだ修正してないな



701 名前:login:Penguin mailto:sage [2016/05/20(金) 12:53:33.82 ID:evAehgyn.net]
>>676
> いくつかのGUIアプリケーションは正しく起動した。
むしろ動かない奴の情報が欲しいわ

702 名前:login:Penguin mailto:sage [2016/05/20(金) 20:40:38.43 ID:qu3ZSRBD.net]
>>684
例えばxtermはptyが必要だから動かない

あとマルチスレッド対応のライブラリも一部駄目みたい
マルチスレッド使ってなくても
Xlibを置き換えるために作られたXCBってライブラリがあるんだが
xwudを使おうとすると
[xcb] Most likely this is a multi-threaded client and XInitThreads has not been called
となって終了する
xwudなんてmulti-thereadedなわけないけど
ライブラリの初期化で失敗してる
ただしXCB使うやつが全部ダメなわけなじゃない
bitmapとかは動く

onekoも動いたり動かなかったり
debagger, tracerが動かないから理由は分からん

703 名前:login:Penguin mailto:sage [2016/05/20(金) 20:47:29.39 ID:qu3ZSRBD.net]
あれ?
gdbもstraceも動くな
一昨日は/proc/PID/なんとかがアクセス不能だとか言って動かなかったのに
xwudも動くようになってる
この前はWSLが不安定になっていたのかな?

704 名前:login:Penguin mailto:sage [2016/05/20(金) 20:54:28.32 ID:qu3ZSRBD.net]
後はR, NumPy, SciPy, gnuplotも動いていて
データ解析なんかもも既にWindows上で出来てます
cygwinがあれば必要ないかもしれないが
自分はWindowsじゃない時はノートPCもubuntuなんでWSLは快適
Windowsの環境整備に時間を取られないのはよい

705 名前:login:Penguin mailto:sage [2016/05/20(金) 21:04:06.23 ID:4RoC/6OL.net]
結構実装速いみたいね。Cygwin使わなくて良くなる日は早く来そうだな。

706 名前:login:Penguin mailto:sage [2016/05/20(金) 21:19:28.57 ID:qu3ZSRBD.net]
システムサービスの系統が違うカーネル上でエミュレーションしてるんじゃなくて
マイクロカーネル上のネイティブ別実装だからね
ただMicrosoftが続けるかどうか…

707 名前:login:Penguin mailto:sage [2016/05/21(土) 06:07:31.97 ID:Tt+f2BwK.net]
slow ringにもuowきたから使ってみたけど、いいねこれ
ll使えるしw

708 名前:login:Penguin mailto:sage [2016/05/21(土) 14:10:27.35 ID:Ua2Ljiay.net]
現状でもまあまあ使えるよな。slow ringだと、このスレが改良話でキャッハウフフ話してる間、置いてけぼりだろうけど・・

709 名前:login:Penguin mailto:sage [2016/05/21(土) 17:14:04.28 ID:uIawSD25.net]
UbuntuはAPTやめてSnappyに移行するらしいけど、WSLも追随するのかな?
ベースのUbuntuに振り回されるだろうけど。

710 名前:login:Penguin mailto:sage [2016/05/21(土) 18:20:26.84 ID:B5k1vE2J.net]
aptなんぞさっさと廃止して正解



711 名前:login:Penguin mailto:sage [2016/05/21(土) 19:33:55.38 ID:stNt9iOu.net]
>>692
そのうち非公認で好きなデストリ選べるようになるでしょ
lxrun.exe相当のインストーラと
/init相当のbootstrapper作ればいいだけだから

712 名前:login:Penguin mailto:sage [2016/05/22(日) 02:54:29.91 ID:LYC3P8lN.net]
ディスクのパフォーマンスを知りたくて
$ dd if=/dev/zero of=./test count=3000 bs=1024
を実行してみたんだけど、これCygwinより遅い?

# Bash on Windows
$ dd if=/dev/zero of=./test count=3000 bs=1024
3000+0 records in
3000+0 records out
3072000 bytes (3.1 MB) copied, 0.030278 s, 101 MB/s

# Cygwin
$ dd if=/dev/zero of=./test count=3000 bs=1024
3000+0 レコード入力
3000+0 レコード出力
3072000 bytes (3.1 MB, 2.9 MiB) copied, 0.0176942 s, 174 MB/s

参考)DDコマンドでWrite速度測定:ddでHDDやNASの書き込み速度を見てみる。 - それマグで!
takuya-1st.hatenablog.jp/entry/20120301/1330605391

713 名前:login:Penguin mailto:sage [2016/05/22(日) 03:01:23.50 ID:6r9sEEDb.net]
sync含めて時間測らない無能

714 名前:login:Penguin mailto:sage [2016/05/22(日) 05:58:57.37 ID:s0p0/ROJ.net]
そもそもcygwinが重いのはfork等を独自実装してるからだろ
ディスク測ってどうすんねん

715 名前:login:Penguin mailto:sage [2016/05/22(日) 06:07:06.56 ID:6r9sEEDb.net]
>>697
cygwinの遅いのはファイルアクセスとプロセスかんり。
ネットワークは普通に遅い。Windows速くないし

716 名前:login:Penguin mailto:sage [2016/05/22(日) 06:20:16.71 ID:cRGWingb.net]
そういやcygwinでps実行しても
Windowsのプロセスまでは見えないんだな。

717 名前:login:Penguin mailto:sage [2016/05/22(日) 07:08:27.35 ID:/eBzBwNC.net]
Windowsでtasklistすれば両方見える

718 名前:login:Penguin mailto:sage [2016/05/22(日) 07:24:21.71 ID:/eBzBwNC.net]
Windows serverはネットワークスタックは速いよ
Windowsがというよりハードウェア上のファームでプロトコルスタック実装してるから
TCP offload engineでググってみて
server版じゃないとscalable packは使えなかったかな

719 名前:login:Penguin mailto:sage [2016/05/22(日) 19:07:19.79 ID:LYC3P8lN.net]
もっと実用的な数値を比べてみた。
各環境で1.5GBぐらいのsvnプロジェクトをチェックアウトしてgrep。

環境名, svn checkout, grep
Cygwin, 18m23.288s, 8m4.261s
Bash on Windows, 9m94.843s, 6m52.982s
思ってた以上に遅い。Cygwinよりは速かったけど。

ちなみに、他にCygwinとVirtualBoxの入っているPCがあるんだけど、
そこだとCygwinはVirtualBoxの1/10ぐらいの速さ。
するとCygwin : Bash on Windows : Native = 1 : 2 : 10 ぐらいか。

ついでにこんな記事を見つけた。やっぱりきちっと測っても遅いのね。
Steady assimilation: [PC] Bash on Windowsが本当に出て困惑
steadyassimilation.blogspot.jp/2016/04/pc-bash-on-windows.html

720 名前:login:Penguin mailto:sage [2016/05/22(日) 19:22:46.95 ID:DVntnULJ.net]
>>697
特定の機能に限定したベンチはいろいろと用途を検討するのに有益だよ



721 名前:login:Penguin mailto:sage [2016/05/22(日) 19:33:35.86 ID:tJiBUnO4.net]
VirtualBox は Native と等速なのか凄いな

722 名前:login:Penguin mailto:sage [2016/05/22(日) 20:21:32.16 ID:xHIKnJwY.net]
iperfとiozoneは動かないのかね?

723 名前:login:Penguin mailto:sage [2016/05/23(月) 02:30:42.80 ID:ERRbT9h2.net]
ベンチって言ったらカーネルビルドやろ

724 名前:login:Penguin mailto:sage [2016/05/23(月) 03:46:37.61 ID:h7yePIJe.net]
>>702 と 同じPCにVagrant と Hyper-V で Ubuntu14 を入れたんで、結果に追加。

環境名, svn checkout, grep
Cygwin, 18m23.288s, 8m4.261s
Bash on Windows, 9m94.843s, 6m52.982s
Hyper-V 1m52.058s, 3m0.881s

Cygwin : Bash on Windows : Hyper-V は
writeは 1 : 2 : 10 ぐらい
read は 5 : 6 : 14 ぐらいかな。

>>704
nativeの半分ぐらいなのね。9割ぐらい出ると勘違いしてた。

725 名前:login:Penguin mailto:sage [2016/05/23(月) 13:15:56.95 ID:h7yePIJe.net]
つうか実行しながら薄々気づいてたけど、svn checkout は
むしろネットワークのスループットを測ってるだけかもしれん。
まあこれが自分の関心のあった項目なんで勘弁して。
もっとちゃんとした検証法を思いつく人は各自試して。

あと、このパフォーマンスだと当分はハイパーバイザ型の仮想環境もほしいし、
するとVagrant使いたいし、
するとCygwinも使いたいということになる。
(vagrant ssh ってCygwinなしでやってる人いる?)
VMやCygwinを捨てる未来は当分なさそう。

まあもしかしたらこのパフォーマンスでも構わない用途が大半かもしれない。
それならあとは互換性だけの問題だけど。

726 名前:login:Penguin mailto:sage [2016/05/23(月) 15:34:50.97 ID:fh25Sav0.net]
windowsをベースに使うなんてこの時点でアウト
全く信用できん

727 名前:login:Penguin mailto:sage [2016/05/23(月) 18:21:38.75 ID:34jhkwqp.net]
そう思うなら使わなきゃいい

728 名前:login:Penguin mailto:sage [2016/05/23(月) 18:52:28.91 ID:/6Vtx2pi.net]
そもそも視点が違う
windowsを便利にするものとしてWSLを作った

729 名前:login:Penguin mailto:sage [2016/05/24(火) 00:42:42.57 ID:U52teAEB.net]
>>705
iperfやってみた
結果はHyper-V上のUbuntu(548Mb/s) > Win10のCMD窓(439Mb/s) > bash on Windows(53Mb/s)
CMD窓よりHyperVの方が早いのは、同じマシンであってもクライアント側が異なるNICを使うためと思われ。

○サーバ側:
  Ubuntu12.04LTSの入った実マシン (iperf 2.0.5)
  コマンド:iperf -u -s
 
○クライアント側
  Windows10 Insider Preview 14342版
  コマンド:iperf -c 192.168.2.216 -u -b 1000m
  下のそれぞれで3回ずつ実行。そのうちの中央値を採用。
  下の@Aを実行の際はBのHyper-Vの仮想Ubuntuはシャットダウン済みの状態
  @Windows10のコマンドプロンプト (Win版iperf 2.0.8)
  Abash on Windows (iperf 2.0.5)
  BUbuntu14.04 on Hyper-V (iperf 2.0.5)

○結果
  [ ID] Interval Transfer Bandwidth
  [328] 0.0-10.0 sec 524 MBytes 439 Mbits/sec  ★Win10コマンドプロンプト
  [ 3] 0.0-10.0 sec 64.1 MBytes 53.7 Mbits/sec  ★bash on Windows
  [ 3] 0.0-10.0 sec 653 MBytes 548 Mbits/sec  ★Ubuntu14.04-64 on Hyper-V

730 名前:login:Penguin mailto:sage [2016/05/24(火) 01:20:32.01 ID:pLMOt08A.net]
>>712
thx
確かにネットワークが相当遅い。
socketの実装が悪いのか、足りないシステムコールでもあるのか
(etherのlink speedが見えない影響とかないよね?)。
気が向いたら、iperfの結果を添えてバグ報告もお願いします。



731 名前:login:Penguin mailto:sage [2016/05/24(火) 09:06:47.57 ID:gwVetxVE.net]
Pico Process Overview
https://blogs.msdn.microsoft.com/wsl/2016/05/23/pico-process-overview/

732 名前:login:Penguin mailto:sage [2016/05/24(火) 21:15:08.28 ID:pLMOt08A.net]
>>714
メモリマッピングが空っぽのプロセス用意するから、
ローダ機能を持たせたLXSS/LXCoreドライバでなんとかしてってことか。
Minimal Processを使ってる機能ってなんだ?
signalとか共有メモリの管理もLXSS/LXCoreドライバでやるとすると、
LXSS/LXCoreドライバの規模感がよくわからんな。

733 名前:login:Penguin mailto:sage [2016/05/25(水) 00:53:02.42 ID:u4PX8cL+.net]
>>713
よくあるのが不要なコピーが行われてるケース
SVR3で最初にSTREAMSが実装されたのが1986年だから
大体30年位前のテクノロジーにとどまってる感じ?
BSDのmbufはそれからさらに5年位遅れてるはず

734 名前:login:Penguin mailto:sage [2016/05/25(水) 01:00:25.49 ID:u4PX8cL+.net]
>>715
> Minimal Processを使ってる機能ってなんだ?

Minimal Processを特殊化すると
NT ProcessやPico Processになるんでしょ
NT Processの方はまだハードコーディングかも知れないが

735 名前:login:Penguin mailto:sage [2016/05/25(水) 01:03:24.43 ID:u4PX8cL+.net]
>>715
>LXSS/LXCoreドライバの規模感がよくわからんな。

ネットワークとかディスクI/Oとかスケジューラーとかは
NTカーネルの機能使ってるだろうから
DarwinのBSD部分よりかなり小さいんじゃないか?
>>716に書いたようにまだ凄くシンプルな実装だろうし

736 名前:login:Penguin mailto:sage [2016/05/25(水) 21:41:42.46 ID:RG8GyR/9.net]
Linuxとの互換性はいずれ上がると思うんだけど、
パフォーマンスの改善の見込みはどのくらいあるんだろう?

昨晩、Bash on Windows と VMでそれぞれ apt-get upgrade したんだけど、
それぞれ62秒と16秒かかった。
今はVMの方が使っててずっと快適なんだよね。

737 名前:login:Penguin mailto:sage [2016/05/25(水) 21:54:37.49 ID:3opJ/Sio.net]
>>719
Windows上の仮想VM上のLinux と bash on Windowsとで Linuxとしての性能は前者が確実に上だね。
反面、Linux部分がホストであるがWindowsに対して掛ける負荷は、後者の方が軽いんじゃない?
bash on Windowsの方が、Windowsを圧迫しないというか。

738 名前:login:Penguin mailto:sage [2016/05/25(水) 21:57:48.40 ID:3opJ/Sio.net]
誤字って余計な「が」 が入っちゃったので↓に訂正。
「反面、Linux部分がホストであるWindowsに対して掛ける負荷は、後者の方が軽いんじゃない?」

739 名前:login:Penguin mailto:sage [2016/05/25(水) 22:03:11.27 ID:hMTr4AlU.net]
ESXiで構築すれば片方止めてマシンに負荷かからないしどっちも使えるぞ

740 名前:login:Penguin mailto:sage [2016/05/25(水) 22:27:46.85 ID:RG8GyR/9.net]
>>721
それ全然うれしくない。
負荷かかっていいから速くなってほしいわ。



741 名前:login:Penguin mailto:sage [2016/05/25(水) 22:47:27.32 ID:3opJ/Sio.net]
>>723
ケースバイケースじゃないの。
自分の場合、昔 i7-860マシンでHyper-V使ってた頃は、VM動作中にホスト側のWindowsで動画再生すると
音飛びや再生落ちが発生するんで、VMはことあるごとにいちいち起動/停止してて面倒だった。

今はもうi7-4790使ってて、VM1個ぐらいなら稼働中でもホストWin側に影響が見えないから常時駆動してるけど。

742 名前:login:Penguin mailto:sage [2016/05/25(水) 22:57:04.19 ID:u4PX8cL+.net]
>>

743 名前:720
未熟な実装はCPUやメモリ負荷が高いことが多いよ
[]
[ここ壊れてます]

744 名前:login:Penguin mailto:sage [2016/05/25(水) 22:57:58.82 ID:u4PX8cL+.net]
ジャイアントロック問題なんかは負荷は下がってただ遅いけどね

745 名前:login:Penguin [2016/05/26(木) 07:53:31.61 ID:uekgGtC8.net]
>>719
>パフォーマンスの改善の見込みはどのくらいあるんだろう?
>昨晩、Bash on Windows と VMでそれぞれ apt-get upgrade したんだけどそれぞれ62秒と16秒
>>720
>Windows上の仮想VM上のLinux と bash on Windowsとで Linuxとしての性能は前者が確実に上だね。

VMソフト+LinuxのMinimalだともっと差がでるのでは?

「VMソフトの軽さ+LinuxのMinimal」vs「bash on Windows」
今は自由度も速度も安定性も前者か。

LinuxのMinimalって使ったこと無いけど知ってる人いる?
VMはVirtualBOXあたりが一番軽いの?

746 名前:login:Penguin mailto:sage [2016/05/26(木) 08:03:48.23 ID:qpU22dRv.net]
仮想化支援ついてるやつならあんま変わらんやろ

747 名前:login:Penguin mailto:sage [2016/05/26(木) 18:34:56.31 ID:S0VWArfS.net]
virtual boxよりハイパーバイザー型VMであるHyper-vの方が軽いかも?

748 名前:login:Penguin mailto:sage [2016/05/26(木) 18:43:35.45 ID:qpU22dRv.net]
それを行ったらホストOS分のリソースくわないESXiが・・・

749 名前:login:Penguin mailto:sage [2016/05/26(木) 20:29:44.47 ID:L135YqT2.net]
Hyper-V Server でいいかと

750 名前:login:Penguin mailto:sage [2016/05/26(木) 20:34:27.78 ID:KdQATLsd.net]
Hyper-V とくれば Xen じゃね? ・・使ったことないけど。



751 名前:login:Penguin mailto:sage [2016/05/26(木) 20:39:04.95 ID:PzBIDXEC.net]
AWS使ったことないん?

752 名前:login:Penguin mailto:sage [2016/05/26(木) 21:30:57.48 ID:j3GUpHss.net]
お前ら Bash on Windows の話しろよw






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<273KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef