asumisu_thirtysix’s diary

asumisu_thirtysix’s diary

日常の覚え書き的なもの

【IT関連】仮想環境作ろうかな。その3(VM ware編)

前回の記事ではwin10しかゲストOSで設定できなかったので、せっかく仮想環境作るならMacOSで、かつVM wareで作りたいと思い今回の記事。

 

結論から言うと、MacOSってMac製品買わないとISOファイル手に入らないのでできませんでしたと。。。

 

正攻法以外で手に入れる方法自体はいろいろあるんだろうけど、ライセンス違反になるのかどうか分からんラインで、あんまり記事が多くないものを頑張って探すの大変なうえに違反かもしれないのでそれも調べないといけないとなるとモチベーションがあがらないのでやめました。

 

せっかくなので調べた内容はメモっておく

 

VMwareMacOS動かす手順

※この手順だとMacOSのISOファイルはこのブログ書いた人の作ったリンクからダウンロードしてくる形式でちょっと怪しくね?と思った。

hamalabo.net

 

VMwareMacOS動かす手順 その2

こっちの手順はMacOSのISOファイルは自分で準備してね方式で、かつライセンス違反だとのブログ投稿者のコメントが載っている。

penpen-dev.com

 

MacOSインストーラー(DMG形式)

このリンクからappleの公式サイトに行ってインストーラーが一応落とせる。規約はよくわからんが面倒なので違反ぽいことはしないでおく。

iphone-mania.jp

 

 

ということで仕方がないので前回使ったwin10のISOファイルを使ってVM ware上でもwin10の仮想環境を作っていく。

なんかすごく操作が簡単で手順とか特に見ずにできちゃったけど、一応事後に調べた手順。

VM ware上にwin10仮想環境作る手順

ossanz.me

 

 

とにかくVM wareならアホでも簡単に仮想環境作れることは分かった。

 

 

 

まったくの余談だけど、以前ゲーム開発してた際にAndroid環境上でテストするためAndroidエミュレータを入れていたんだけど、仮想環境とエミュレータの違いについて。

 

◆仮想環境とエミュレータの違い①

www.itmedia.co.jp

 

◆仮想環境とエミュレータの違い②

xtech.nikkei.com

 

◆仮想環境とエミュレータの違い③

www.webdevqa.jp.net

 

 

まとめるとざっくりこんな感じではないでしょうか、よく分からんけど。

 

1.目的

仮想環境

ゲストを動作させるのに十分なハードウェアをシミュレートする傾向があり、エミュレーション/仮想化の効率を重視しています。最終的に、仮想マシンは実際に存在するハードウェアのように動作せず、VM固有のドライバーが必要になる場合がありますが、ゲストドライバーのセットは多数の仮想環境で一貫しています。

 

エミュレータ

シミュレートされる実際のハードウェアの癖やバグなど、すべての動作を正確に再現しようとします。必要なゲストドライバーは、シミュレートされる環境と完全に一致します。

 

2.処理性能

仮想環境

その上で稼働するソフトウエアは,実機のCPUによって処理される。そのため,動かせるのは実機のCPUに対応したOSのみだが,実機に近い処理性能が出る。

 

エミュレータ

あるハードウエアのふりをするソフトウエア。エミュレータ上で稼働するソフトウエアが発行する機械語命令やハードウエア・アクセスを,CPUなど実際のハードウエアに代わって,エミュレータが処理する。そのため,例えばWindowsマシン上でPowerPC用OSやARM用OSを動かせるが,その処理性能は実機に比べて著しく低下する。

 

 

3.命令の伝え方

仮想環境

仮想OS上でのI/O命令を、ほぼそのまま物理マシンのハードウェアに伝えます。仮想化ソフトがやっているのは、複数の仮想マシンから、同時に同じハードウェアにリクエストが出た時の優先順位付けや、排他制御、メモリの再配置などです。そのため、エミュレータが行っているような意味での変換のためのオーバーヘッドがありません。

 

エミュレータ

物理マシンとは異なるハードウェア環境をソフトウェア的に実現できるというメリットがある反面、エミュレータ上で動作しているソフトウェア(例えばスマートフォン用に作られたソフトウェア)の命令を物理マシンで動作しているOS(例えば Windows)の命令に変換する必要が出てきます。そのため、エミュレータソフトでは変換のためのオーバーヘッドが避けられません。

 

 

ふーーーんって感じでした。