1: 田杉山脈 ★ 2018/08/17(金) 14:16:01.10 _USER
002
長い間、Windowsにはネイティブに動作するOpenSSHの実装が存在しない状況が続いてきた。コンソールアプリケーションもかなりトリッキーな実装を行っている。UNIX系オペレーティングシステムでは当たり前に実現できていることが、Windowsでは実現されてこなかった。

Windowsでも結果的に同じように見える振る舞いを実現できるが、UNIX系のオペレーティングが提供している仕組みとあまりに違いすぎるため、これまでUNIX系オペレーティングで提供されてきたコンソールに関連するコマンドの移植は進んでこなかった。しかし、2018年秋のWinodws 10アップデートでこの状況が大きく変わる可能性がある。

Microsoftは現在開発を進めているWindows 10に「擬似端末(Pseudo Console)」の機能を実装するようだ。実装する機能の詳細は「Windows Command-Line: Introducing the Windows Pseudo Console (ConPTY) - Windows Command Line Tools For Developers」にまとまっている。

UNIX系オペレーティングで実装されている仕組みとよく似ており、こうした機能を利用しているコマンドの移植がこれまでと比べて格段に簡単になるものと見られる。開発者は注目しておきたい機能だ。

物理的ターミナルはキー入力の受け取りや入力されたデータのバッファリングと送信、逆に送られてくるメッセージの処理と表示といった処理を行っている。マシンの性能が向上し、マルチウィンドウシステム上で複数のターミナルアプリケーションを実行できるようになると、これまで物理ターミナルが実施していた処理をソフトウェア的に行う必要性がでてきた。この時に開発された仕組みが擬似端末だ。物理ターミナルが行っていたような処理を擬似端末が担う。

擬似端末はsshでサーバにログインする場合などにも使われている。現在であれば、sshでサーバにログインすればその分だけ/dev/pts/にファイルが生えてくることを確認できるだろう。sshでログインするとその分だけ擬似端末が使われている。こうした仕組みがあることで、ターミナルを利用するコマンドを簡単に開発できるようになっている。

これまでのWindowには擬似端末の仕組みが用意されていなかったため、Windows版のOpenSSHは以下の画面のようにWindowsで提供されている機能を使って動作を実現していた。オリジナルのOpenSSHの実装系と比べると、Windows風のコードを従来の実装に交ぜることになる。
https://news.mynavi.jp/article/20180817-679662/
引用元: http://egg.5ch.net/test/read.cgi/bizplus/1534482961/


2: 名刺は切らしておりまして 2018/08/17(金) 14:17:29.91
仮想でいいじゃん

3: 名刺は切らしておりまして 2018/08/17(金) 14:27:04.06
そんなチマチマしたことやってないで、UNIXにしろよ

40: 名刺は切らしておりまして 2018/08/17(金) 17:20:04.84
>>3
Azure Sphereで Linuxカーネル実装したから
そのうちPC買う時にWindowsとデュアルブートで選択できるようになるんじゃね
LinuxカーネルにWindowsのデスクトップ載せてくれたら使ってやってもいいよ

でもMacで開発するのが一番生産性高いと思う

41: 名刺は切らしておりまして 2018/08/17(金) 17:24:33.88
>>40
Macは最小構成の製品しか販売されてないので本格的な開発には向いてない
いちいちクロス環境をMacで構築しないといけないし

4: 名刺は切らしておりまして 2018/08/17(金) 14:34:35.29
Windows 7 では SUAをインストールすれば UNIXもどきにできたはずだが、
Windows 10 ではできないのか?

7: 名刺は切らしておりまして 2018/08/17(金) 14:42:02.06
>>4
自分で調べてみたが、WSL (Windows Subsystem for Linux) を使って
LINUXのバイナリを実行できるぞ、という話らしい。

それか、Cygwin を使え、と。

48: 名刺は切らしておりまして 2018/08/17(金) 18:03:17.95
>>4
SUA 廃止になった
Cygwin使ってくださいと書かれた文面が笑いを誘う

5: 名刺は切らしておりまして 2018/08/17(金) 14:40:06.16
ちょうど外部端末から接続して再起動やシャットダウンをコマンドでやりたかったところだ
リモートデスクトップのGUIでできるけどさ

20: 名刺は切らしておりまして 2018/08/17(金) 15:32:21.23
>>5
既存のPowerShellでも問題なくできるぞ。

6: 名刺は切らしておりまして 2018/08/17(金) 14:41:27.48
毎月ある嫌がらせアップデートを拒否れるようにしてくれよ

8: 名刺は切らしておりまして 2018/08/17(金) 14:42:22.93
Ubuntu for Winfows使いやすすぎワロタ

9: 名刺は切らしておりまして 2018/08/17(金) 14:50:52.96
もうWindows自体をUNIXベースにしたらどうか

40: 名刺は切らしておりまして 2018/08/17(金) 17:20:04.84
>>9
Azure Sphereで Linuxカーネル実装したから
そのうちPC買う時にWindowsとデュアルブートで選択できるようになるんじゃね
LinuxカーネルにWindowsのデスクトップ載せてくれたら使ってやってもいいよ

でもMacで開発するのが一番生産性高いと思う

10: 名刺は切らしておりまして 2018/08/17(金) 14:53:12.66
ubuntu乗せたのにまた別ののっけつのか
なにしたいんだよ

11: 名刺は切らしておりまして 2018/08/17(金) 14:57:01.94
VMSの開発者でUNIXに恨みのあるCutlerをNTの開発責任者にしたのはマイクロソフトの最大の失敗だとおもうけど、何年たっても
その失敗を修正できないねぇ。

21: 名刺は切らしておりまして 2018/08/17(金) 15:33:26.13
>>11
そりゃベース捨てたらまた一からやり直しじゃん
今更できるかよ

14: 名刺は切らしておりまして 2018/08/17(金) 15:04:51.98
そんなことよりアプデ地獄なんとかしてや
macOSとiOSあれば十分かな

17: 名刺は切らしておりまして 2018/08/17(金) 15:29:14.92
>>14
昨日の夜アプデあったからやったけど
再起動含めて5分で終わったぞ
どんだけオンボロPCなの……

16: 名刺は切らしておりまして 2018/08/17(金) 15:28:29.58
New Windows powered by Linux
にしたら馬鹿売れだろう

19: 名刺は切らしておりまして 2018/08/17(金) 15:30:32.68
cygwinでいいんじゃね?知らんけど。

22: 名刺は切らしておりまして 2018/08/17(金) 15:36:58.64
その内、LINUXベースのWINDOWSになる。

39: 名刺は切らしておりまして 2018/08/17(金) 17:16:20.44
>>22
もうNTカーネル自体が限界だからそうなるかと思ったら、ゆくゆくAzureにしたいということらしい。

25: 名刺は切らしておりまして 2018/08/17(金) 15:49:26.31
20年遅い

28: 名刺は切らしておりまして 2018/08/17(金) 16:07:27.34
な、Windows3.1 の方法で良かったやろ?

29: 名刺は切らしておりまして 2018/08/17(金) 16:09:56.44
大文字と小文字の区別もできないクソ仕様なんとかしろや

30: 名刺は切らしておりまして 2018/08/17(金) 16:11:27.84
cygwinが相変わらずインストール時にデッドロック起こすので、ubuntu/wslを試したけど快適だわ。
これデフォルト有効でいいんじゃねーの

31: 名刺は切らしておりまして 2018/08/17(金) 16:34:58.74
カトラーがコマンドプロンプトとかそのままにしてたのが逆に不思議なくらいだったな。
自分たち用にはDCLとか動かしてたに違いない。

32: 名刺は切らしておりまして 2018/08/17(金) 16:38:15.93
>>31
日本語表示対応させてるととことん糞だが、
英語表示だと最低限は使える。

34: 名刺は切らしておりまして 2018/08/17(金) 16:42:17.61
Power-Shellのオブジェクト指向パイプラインは、あれはあれで面白いのだが。

36: 名刺は切らしておりまして 2018/08/17(金) 16:50:40.88
DOS窓がもっと便利になるぜーみたいな話?
今さらCUIになんて戻りたくないんだけど

37: 名刺は切らしておりまして 2018/08/17(金) 17:04:01.62
この前、Ubuntuにしたんじゃなかったけ?
また似たような事やるの?
どっちもどっちも、どっちもどっちも!

38: 名刺は切らしておりまして 2018/08/17(金) 17:10:26.35
大学では学生はLinux等のオープンなOSでOSの勉強をする。(Windowsはクローズなので勉強のやりようが無い)
MSは当然、大学でOSの仕組みを学んだ学生しかOS開発者として採らない。

必然的に、MSはUnix寄りになっていく。
むしろ、世界で最もLinuxに精通している企業はMSなんじゃないかな?

43: 名刺は切らしておりまして 2018/08/17(金) 17:37:49.28
>>38
IBMは?
いまだに似非じゃなくてマジもんのUNIXで奮闘してるよ
てかLinuxコンテナのネイティブサポートがあって息してるUNIXベンダーって、ここかHPEくらいなような

44: 名刺は切らしておりまして 2018/08/17(金) 17:41:46.48
>>43
IBMもLinuxに熱心な企業だな
でも、ソフト専業ではないのでOS開発者数がMSより多い事は無いと思う。
てか、日本企業がぱっと思い浮かばない悲しさ

42: 名刺は切らしておりまして 2018/08/17(金) 17:27:55.23
sshでサーバにログインすればその分だけ/dev/pts/にファイルが生えてくる
マイナビさんはニュース記事で「ファイルが生える」なんて表現を使うのか。

それはともかく、VT100互換のエスケープシーケンスが使えるようになって
ncursesのツールがそのまま動くってレベルとは違うのね。

45: 名刺は切らしておりまして 2018/08/17(金) 17:48:46.88
パッチに余計なテレメトリ辞めろ!

46: 名刺は切らしておりまして 2018/08/17(金) 17:57:36.24
クソOSにしがみついて必死に補修し続ける作業
今までのソフト資産を考えると、いまさら新OS移行も無理なんだよな
詰んでる

49: 名刺は切らしておりまして 2018/08/17(金) 18:05:10.12
>>46
新カーネルに仮想WINDOWSを乗せる手はあるんじゃね

47: 名刺は切らしておりまして 2018/08/17(金) 18:01:55.70
Power shellとはなんだったのか

52: 名刺は切らしておりまして 2018/08/17(金) 18:13:27.48
>>47
あれはあれで便利だぞ

51: 名刺は切らしておりまして 2018/08/17(金) 18:08:28.10
もうMsubuntuでも出せよ

55: 名刺は切らしておりまして 2018/08/17(金) 18:27:27.98
こうやってほかの環境が骨抜きになっていく
Linuxを普及させたいならMSの軍門に下るのは間違いだったんだ

スポンサード リンク