【Bash】Windows Subsystem for Linux【WSL】5
■ このスレッドは過去ログ倉庫に格納されています
副詞の位置や扱いによるみたいですね。(みらい翻訳)
完璧ではないが不満はほぼないだろう。
It's not perfect, but you'll have almost no complaints.
完璧ではないが不満はほとんどないだろう。
It's not perfect, but you'll have few complaints.
完璧ではないがほとんど不満はないだろう。
It's not perfect, but there's little to complain about.
上記英文を訳すとどれも同じでした
完璧ではありませんが、不満はほとんどありません。 案内業務とかすると分かるけど、一つのこと言うのに20以上のの言い回しが出来る。日本語やべえよ >>451
そう落ち込むな(´・ω・`)ヽ(´ー`) サブシステムってレベルじゃねーぞ
Announcing WSL 2
https://devblogs.microsoft.com/commandline/announcing-wsl-2/
>Microsoft will be shipping a Linux kernel with Windows .tar.gzの展開で20倍、git cloneやnpm installで5倍程度早くなるってことで、
I/Oは他のVMと同等になりそうだね
lightweightなVMがどこまでリソース消費を抑えるのかわからないけど、
hyper-vの雑なリソース管理も改善してほしいわ
6月のinsiderからということは、一般向けは1年後かね A quick explanation of the architectural changes in WSL 2
の項目で書いてある通り、完全なVMじゃないんだろう
VMWareみたいに汎用的である必要が無いから
WSL2のカーネルの上っ面が必要に応じてホスト(Win10側)に要求投げるって感じか
ハイブリッドカーネルっぽい感じでホストに投げる必要がなきゃVM内だけで処理すると これまではLinuxカーネル互換レイヤーだった(=動作環境に至るまでLinuxカーネルは介在しなかった)けど、
WSL2ではカーネルごと取り込んで、最小限のVM上に実装することにしたのか。
Hyper-Vや他のVM環境と併存できるなら実装はどういう形でも構わないけど、それらと排他って事になるとちょっと面倒だな。
まあFuse動いてDockerまで普通に動作するとなると、いよいよ本当に化けるなこれ。 [速報]WindowsにLinuxカーネルをバンドルへ、Windows Linux Subsystemに最適化。
Microsoft Build 2019 2019年5月7日 Junichi Niino
https://www.publickey1.jp/blog/19/windowslinuxwindows_linux_subsystemmicrosoft_build_2019.html
近い将来、WindowsにLinuxカーネルがバンドルされる方向であることが、マイクロソフトの
「Windows Command Line Tools For Developers」ブログに投稿された記事「Shipping a
Linux Kernel with Windows」で明らかになりました。
Windows 10には、Linux互換機能を実現する「Windows Subsystem for Linux」(WSL)が
搭載されています。これまで、WSLを機能させるにはユーザーがWSL上にLinuxを導入する
必要がありました。
今後のWSLではこれを改め、WSLに最適化されたLinuxカーネルが最初からWindowsに含まれる
ようになり、ユーザーはカーネルを除くユーザー空間に対応する部分のLinuxを導入する
方式になるとのことです。(中略)
搭載予定のカーネルのバージョンは4.19で、これは最新の長期安定版です。今後もつねに
最新の長期安定版を提供していくとのこと。カーネルのセキュリティフィクスやパッチ適用
などのアップデートはWindows Updateによって行われる予定。
また現在Windows Subsystem for Linux(WSL)の次期版となる「WSL2」が開発中で、WSL
2に最適化されたカーネルとともにWSL 2もオープンソースとして公開されることが発表
されました。 もうWindows Services for Linuxの略でいいよ(どこかで聞いたような これ、もしかしてその内 /usr/home/hoge/fuga.txt とかじゃなくって
Linuxのソースまんまで open() に C:\Users\Hoge\Fuga.txt とか渡したら
そのまんま動く様になったりするんじゃなかろうな・・・?
でもってその内systemdの代替をWindows側から少しづつ持ってったりして
AndroidみたいにLinuxのすぐ上からアプリの下までをMS製の全くの別物に・・・それは流石にないか? もう、LinuxカーネルでWindowsを動かせるようにしろ。 Win8くらいの頃にもうWindows終わりなんじゃね論みたいのが闊歩してて
まあ仮にWindowsが今日今ここで死んだとしても1年後くらいにMicrosoft Linuxとかやれる会社だからあそこはもう死にようがない
みたいな事を言っていたような記憶があるけど、まさかこういう形で実現するとは。 うーんwindows側とのアプリ連携がどうなるか気になる ターミナルエミュレータなんて既存ソフトいくらでもあるだろ…と思ったけど
まあ標準添付でまともなターミナルが出るのは良い事だね
欲を言えばXサーバも欲しい
まあこれもフリーや安価なものも出回ってはいるんだけど
Windows側のIMEから透過してibus経由で入力できるようなやつだと最高 >同社によるとLinux版「Docker」や仮想ファイルシステムの構築に使われる「FUSE」なども利用できるという。
これが一番嬉しい
FUSE使えなくて苦労したので システムコールの変換は諦めたのね まあvmより遅かったし
ターミナルは日本語対応完璧にしてくれたらconemuから乗り換えたいな 実用的になるのはウェルカムだが、技術的な面白みはなくなったな。サブシステムのままでの改善は無理だったか…。 今のWSLでエクスプローラーからWSL上のファイルシステムに
アクセスする技術が確立されたのが大きいんだろうな。
今のファイルシステムのアクセスの遅さは、Windows上の、つまりNTFSの上に
WSLから見えるファイルをそのまま保存していたから。
そこにどうしても変換する処理が必要になっていた。
WSL2では単一ファイルのブロックデバイスファイルのようなものが置かれることになるのだろう。
VM技術を応用するだろうから、VHDファイルそのものになると思うが。
ブロックデバイスとしてマウントするからファイルシステムの変換が必要なくなる。
そのかわりにWindowsからアクセスしづらくなるが、そこで冒頭の
エクスプローラーからWSL上のファイルシステムにアクセスする技術の話につながる
WSL上にいる9P Server経由でWSLを通して、VHDファイルの中のファイルに
エクスプローラーからアクセスするのだろう。
ただ思うにVMがVMのインスタンスごとにLinuxカーネルを起動しているのとは違い
WSLのカーネルは一つなのではないかな。Dockerのように複数のディストリでWSLカーネルを共有するのだろう。
今のLinuxサブシステムをVMで動かしたLinuxカーネルに置き換える。
だから「Linuxサブシステム」そのものは存在するというわけだ。
Linuxを起動するわけじゃないから、initプロセスとかsystemdは今と同じく存在しない。 >>471 に補足。↓は2017年10月の記事。
「Bash on Windows」という名称は非推奨に。正式名称「Windows Subsystem for Linux」(WSL)としてベータを卒業、正式リリースに − Publickey
https://www.publickey1.jp/blog/17/bash_on_windowswindows_subsystem_for_linuxwsl.html
> 「Windows Subsystem for Linux」は、1MBに満たない小さなコードによって
> WindowsのNTカーネル上でLinuxカーネルをエミュレーションすることで、
> Windows上でLinuxバイナリを実行する仕組みです。
WSLの何が好きだったかって、この技術的なエレガントさだよ。そうか、とうとう諦めるか…。 今はタスクマネージャーからWSL上のプロセスが見えるわけだが、
これが見えなくなるかな?
(新たな)Linuxサブシステムから完全にLinuxカーネルに処理が
渡されるんだとしたらWindowsからは見えなくなるはず。
もし間に割り込んで、なにかするのであれば
見えるかもしれない。でもそうすると遅くなるだろうな。 今までload averageが適当な値だったのは改善されるのかな?
それとWindowsのプロセスも呼び出せるようにするなら、そこでも割り込みやIPCが必要になってるな。 米マイクロソフトって社長がインド人技術者になってから良くなったよな
日本MSは相変わらずクソだが よくわからんのだけど、棚上げになってたGPUへの対応とか進展するんです? VMで動かすようになったらメモリ管理はどうなるんだ…? >>463
そういうのが欲しい人はWineを使えばいいのよ マイクロソフトは創業者からの世代交代に成功したので200年続く老舗化も射程距離だが
アップルは引継ぎに失敗したので転落確定って話 OSでは稼がず、Visual StudioとOfficeサブスクリプションで稼ぐのが今のMicrosoftやで Edgeも独自レイアウトエンジンEdgeHTMLを放棄してChromiumに移行するしな。
そうか、MSでも駄目だったかという思いで一杯だ。
ちなみにEdgeHTMLの特徴は、とにかくメモリなどのリソースを食わないことだった。
その点はWindowsサブシステムと同じ。
今後はそれぞれChromiumとVMに移行して、実用性と引き換えにリソースを大食らいするようになるんだろう。 >>479
言われると思ったが、それもう使えねえわ。
前は古いアプリが結構動いたが、最近のバージョンだと動かなくなった。
しかもアプリの一つであってOSじゃない。WindowsアプリはWindowsで動かしたほうがい。 >>481 Azureで稼いでるって聞いてる。Visual Studioってそんなに儲かるの? AzureやOfficeのライセンスフィーで喰ってるMSと、
広告料で喰ってるGoogleとどっちが健全なんだろ? Microsoftの1〜3月期決算
・サーバやAzureを扱うIntelligent Cloud部門の売上高は22%増の96億5000万ドル
・OfficeやLinkedIn、Dynamicsを扱うProductivity and Business Processes部門の売上高は14%増の102億4000万ドル
・Windows、ハードウェア、Xbox、検索のMore Personal Computing部門の売上高は8%増の106億8000万ドル >>483
>WindowsアプリはWindowsで動かしたほうがい
だったらカーネル変えちゃダメじゃん >>485
広告は民衆を商品として使う商売だからな ドライバ周りはNTカーネルのほうが圧倒的に優れてるしLinuxにするメリット無いだろ >>485
詐欺に加担している広告業界が健全なわけねーじゃん 朝日新聞「今だから作れる祖母の味 キムさんのスープ」
https://hayabusa9.5ch.net/test/read.cgi/news/1557220519/
今だから作れる祖母の味 「キムさんのスープ」
祖母の愛情も、自分のルーツも、素直に受け入れられなかった少女が大人になり、生まれ育った長崎市でカフェを開いている。
いまだからこそつくれるスープに自身のアイデンティティーを重ねながら、お客さんたちを元気にしている。
長崎市江戸町にあるカフェ「Nobister(ノビスタ)」。4月中旬のお昼どき、10席の小さな店に常連客が次々と訪れる。
オーナーの金海伸子さん(43)がつくるこの日の日替わりスープは「キムズスープ」。
ニンジンや大根などの根菜に、調味料はみそとコチュジャン、ごま油。
「おいしい」「この味好き」と言いながら、心と体をあたためて、午後の仕事に戻っていく。
日本人の母と在日韓国人2世の父との間に生まれた伸子さん。長崎市で育ち、話す言葉も日本語だったが、食卓は周りの家とは違った。
母がつくるハンバーグなどのおかずに、父方の祖母、金(キム)西運(セイウン)さんがつくるキムチやナムルが並んだ。
https://www.asahi.com/articles/ASM4Q66FDM4QTOLB00Z.html
https://www.asahicom.jp/articles/images/AS20190506001187_comm.jpg Microsoft、「Windows Subsystem for Linux 2」を発表 〜LinuxカーネルをOSに同梱
Windows 10のLinux体験は新たなステージへ
https://forest.watch.impress.co.jp/docs/news/1183013.html Interixの互換レイヤー使ってた頃に比べると雲泥の差で今のほうがいいんだけどね。 ギフハフにソースコードあるけど誰もビルドしてないんです?
Windows Terminal Beta ちょっと使ったけど文字が綺麗
wsl用ならもうこれでいい Canonical、Ubuntuの「WSL 2」対応を発表 2019/05/08 23:01 後藤大地
https://news.mynavi.jp/article/20190508-820096/
Canonicalは5月6日(米国時間)、「Canonical announces support for Ubuntu on Windows
Subsystem for Linux 2|Ubuntu blog」において、同日にMicrosoftが発表した新たな技術
「WSL 2 (Windows Subsystem for Linux 2)に対応すると発表した。
UbuntuがWSL 2で動作するようになると、従来よりもファイルシステム性能の向上を期待
できるほか、これまで利用できなかった機能も利用できるようになると見られる。
WSL 2は、LinuxシステムコールをWindowsカーネルのシステムコールに差し替えることで
Linuxバイナリを実行するWSLとは異なり、仮想マシンを利用することでLinuxカーネルを
動作させることでLinuxバイナリを実行するというアプローチを採用している。Microsoftは
この技術によってWSLが抱えているファイルシステム性能の低さが改善されると説明している。
MicrosoftはWSL 2は通常のアップデートの中で提供し、WSLとWSL 2の共存も可能だとしている。
アップデートに関して、ユーザーが明示的に作業する必要はないと考えられているが、すでに
WSLで動作するUbuntuをインストールしているユーザーが実際にどのような作業をすべきかに
ついて明らかにされていない。
WSLからWSL 2にアップグレードすることでファイルシステム性能が向上することが期待
されるが、具体的にどのような変化が見られるのかは現段階ではわかっておらず、今後の
詳細な発表が待たれる。 >>494
試したけど神だぞこれ
もうVSCodeのUIをWSL側で動かすようなアホな真似は必要ない 結局、MS は、Vagrant, Chef などで、仮想マシン上に、Linux を構築する手間を省いた
つまり最初から、仮想マシン上に、Linuxを用意してくれる >>501
それだけじゃないぞ。
今のWSLと同等の使い勝手を提供するって言ってるんだから、
仮想マシン上のLinuxにsambaなんか入れなくても
Windows上のテキストエディタから自由にファイルを触れるようになるはず。
俺が以前Vagrantで開発用の仮想マシン(samba等込)を作っていたやり方に
近いがそれよりもWindowsと統合された物ができるのは確実
あとはメモリ管理がホストと共通になっていればゆうことなし。
仮想マシンにメモリを分配するのはいやなんだよ。
Linuxカーネルに手を入れるみたいだから期待はできる。 専用のハイパーバイザで動くんだろうけど、今までの使い勝手が変わってしまうのはちょっと嫌だな。
フレームバッファも実装されて画面もLinux管理下になったら普通にVMと変わらないし。
スクショを見るとターミナルは独自のものっぽいが・・・ >>505
今までの使い勝手は変わらないはずだよ。
普通のVMと違うのは、普通のVMよりはるかに使いやすいってこと
例えば(今までどおり)Windowsから直接コマンドを実行できる
Windowsからファイルの変更ができる
起動が遥かに高速
今までだったらWSLは遅いから自分でVM作るって言ってたけど、
もう自分でVMを使う理由すらなくなるよね。 まあ判断するのはWSL2の現物が出てからにしようぜ。
つうか元のWSLだって、速度も互換性もネイティブ並みという触れ込みだったんだぞ、忘れたか? >>507
最初に登場したときは、ベータ版で
ネイティブ並みなんて触れ込みはしてないはずだが?
ちょっとどこで言ったのか探してきてくれないか? >>509
とりあえずこの辺かな。
http://hayabusa6.5ch.net/test/read.cgi/linux/1459317475/538
> いくつかのベンチマークの結果、WSLは同じハードウェアで直接実行したときに近い結果をたたき出し、WSLはよい結果を出したとThomas氏は言う。 VMみたいにイメージファイルにもろもろ突っ込んでしまうではなかろうか?
じゃないと散々苦しんだこの問題は解決しないと思う。
今まで通り、C:は/mnt/cとして、WSL側もUNCパスを参照できるだろう。 >>510
それは「速度も互換性もネイティブ並み」なんて
一言も書いてないって証拠ですか?w WSLってディストリの概念があるのが凄い気持ち悪いんだが
SlackwareとかGentooとかArchみたいな、ミニマルな構成だけ提供すれば良いのに >>512
それならWindows側からの参照するのにsamba相当のものが必要になるよね >>512
おそらくそうだろうね。Windows上のファイルである限り、
ファイルごとにセキュリティソフトが反応してしまう
セキュリティソフトの検閲を回避するには1ファイルにするしか無いw
ま、それをやったとしても、Windowsのエクスプローラーから
Linux内にあるファイルを参照できるようになりますからね。
WindowsからLinuxファイルへのアクセスが可能に 〜「Windows 10 19H1」におけるWSLの改善
https://forest.watch.impress.co.jp/docs/news/1170221.html
正直↑のリンク先に書いてある
> この機能は「WSL」を初期化する際に「9P」プロトコルのファイルサーバーを起動し、
> それを介してファイルを扱うことで実現されている。そのため、Windowsからアクセスできるのは
> 現在のところ、動作中のWSL/Linuxディストリビューションのみとなる。
この制限が腑に落ちなかったんだよね。なぜならWindows上にファイルは有るわけで
動作中のWSL/Linuxディストリビューションに限る必要はないはず。
またWSL上で9Pプロトコルサーバーを動かす必要もないはず。
(だってWindows上から直接参照できるのだもの)
WSL2の発表でその理由がわかった。WSL2のLinuxカーネルにデバイスファイルとして
マウントさせる仕組みにも使うから、WSL上で9Pプロトコルサーバーを動かすほうが楽なわけだ。 >>514
> WSLってディストリの概念があるのが凄い気持ち悪いんだが
それはWSLのせいじゃない。Linuxがそもそもディストリの概念があって
Linuxカーネルと、そのカーネルで動く各種アプリ・コマンドが
分かれて提供されてるのが原因
まあそのおかげでMicrosoftは最小限のLinuxカーネル部分だけを提供すれば
あとは既存のディストリの成果をそのまま使えるわけなんだが >>516
> それならWindows側からの参照するのにsamba相当のものが必要になるよね
それがWindows 10 19H1でリリースされる9Pプロトコルのファイルサーバー
samba相当のものが内蔵されてるから、自分で仮想マシン作って構築するより使い勝手が良い >>518
WSL from scratch があっても良くない? 何でNFSじゃなくてわざわざ9Pを実装してるんだろうね?
Win側のNFSクライアントの使い勝手が悪いんだろうか >>520
マイクロソフト「いいんじゃね?そういうディストリも普通に作っていいよ。
ただし我々は、Linuxカーネル相当のものを提供するだけではなく
開発者にとって便利なように、完成されたLinuxディストリを提供する。
その一つとしてUbuntuだ。だが君がfrom scratchを作ることに否定はしない」 >>521
WindowsじゃなくてNFS自体の問題
https://ja.wikipedia.org/wiki/9P
> ファイルはウィンドウ、ネットワークの接続、プロセスや、その他オペレーティングシステムで
> 利用可能なほとんどのものを表現している。 9PはNFSとは異なり、
> キャッシュや、仮想ファイル(例えば、プロセスを表現する/proc)の提供も補助する。 ここにも書いてあるな
https://ascii.jp/elem/000/001/818/1818008/index-2.html
> Linux/Unixで一般的なNFSを使わなかったのは、9Pが
>疑似ファイルシステムなどもサポートできたこと、
>ファイル共有プロトコルとしては軽量だったことが理由と考えられる。
> そのソースコードの由来はともかく、マイクロソフトはWSLで
> 9Pプロトコルを扱えるようにした。また、/initプロセスで
> 9Pファイルサーバーを動作させるように改良した。これにより、
> WSL側は、VolFs(ルートディレクトリ以下)や/proc、/sysなどの
> 特殊ファイルシステムを含めて、Win32側からアクセスを可能にした。
このリンク先に有る図の構成は、おそらくWSL2でも近い形で流用されるのだろう。
この9Pサーバーを実現したことが、WSL2での開発の流れにつながってるのだろう。
> Win32側は、9Pプロトコルのクライアントをリダイレクタードライバーとして実装した。
>これは、C:\windows\system32\driversにある「p9rdr.sys」が対応している。
>このp9rdr.sysは、リダイレクタードライバーとして組み込まれ、ネットワークフォルダーに「wsl$」ホストを見せるようになっている。
>
> p9rdr.sysと/init(9Pサーバー)の間は、AF_UNIXによるプロセス間通信を使う。AF_UNIXは、
>ソケット(バークレーソケット)を使う場合に同一マシン内のプロセス間通信に使う
>「アドレスファミリー(Address Family)」である。これは、Windows 10 Ver.1803(RS4)で
>Windows側とWSLに実装された機能だ。このときには、何に使うのかが見えていなかったが、
>実はこうした用途が想定されていたというわけだ。
いろいろつながってるよね。 >>525
サンクス、なるほどね
仮想マシンに移行するならWin側から/procや/sysは触れる方が良さそうだね 今更WinSockがUNIXソケットに対応して何が嬉しいのかわからんかったけど、なるほどそういうことだったのか・・・
DockerやFUSEが動いてCoderでVSCodeも使える。
それまでの開発ツールを一つの場所に集約できる。
インポート・エクスポートもできて環境のバックアップや以降も簡単にできる。
いいことずくでこれからWSL使う人増えるんじゃないか? /procなんか、一部はWindows側の情報を見せるんじゃないかね?
cpuinfoとかmeminfoとか。
そうするとWSL側から、Windowsのプロセスを見れたりするかもしれないな。
これはただの仮想マシンじゃ無理な所でLinuxカーネルを最適化するっていうのは
こういうところなのかもしれない。
/procを通してWindows側と連携できるとなると、
分離されたシステム空間で動かすVMとは仕組みが全然違ってくるな。 >>527
残念ながらCoderは VSCode Remote Development と Visual Studio Online が発表されたため一ヶ月以内には終了すると思われる いまやMS WindowsのソフトすらもLinux上で開発する奴が増えたからMSがこれはやばいよとなって
MSの物ならPC系Linux、組み込みも簡単に開発出来るんだにしようと必死しているからな
VSCode Remote Development、 Visual Studio OnlineとかさすがMSだよな
まぁ、開発をしない普通のLinuxユーザー(ただクレ乞食)をMSに取り込む気はないだろうが、開発をやっている連中は
取り込みたいよな。 Windows用アプリケーションをLinuxで開発するってなんかの罰ゲームか
マルチプラットフォームでLinuxがメインターゲットの場合だってWin固有のコードはWinで開発するだろ windowsやlらinuxやらって大変だね
素直にmacにすればいいのに >>533
>いまやMS WindowsのソフトすらもLinux上で開発する奴が増えたから
へー、そんな事出来るんだ初耳
因みにどんなソフトがあるんだよ低能 >>533
> いまやMS WindowsのソフトすらもLinux上で開発する奴が増えたから
聞いたこと無いな。だって無理じゃん?VisualStudioとかさ
逆にLinuxのソフトをWindowsで開発するって話は多く聞いていて、
WSLでそれがさらに加速する >>542
OSSだけど、VLC
ttps://wiki.videolan.org/Win32Compile/
Winでのビルドは頑張ってねとか書かれてる 10年ぐらい前にChromiumのWin版をビルドしたことがあるけど、
準備がすごいめんど臭くてさらにコードをいじらないとビルドできなかったな。
LinuxとMacはそれに比べて簡単だった。 MSのLinux開発への擦り寄りは最終的には「Azureを売る」へ繋がるわけだけど、肝心のLinux on Azureは散々な有様だよね
十中八九、あと3年くらいしたら今の路線はピボットを迫られるだろうけど、そのときWSLはどうなるんだろうね > 肝心のLinux on Azureは散々な有様だよね
大ヒットしてるよ >>543
そんなん使ってるのVLCみたいなマルチプラットホーム向けの極一部だけだぞ ■ このスレッドは過去ログ倉庫に格納されています