goo blog サービス終了のお知らせ 

gooブログはじめました!

写真付きで日記や趣味を書くならgooブログ

Prita Diary 12072025

2025-07-13 00:52:37 | 日記

オペレーティングシステム パート3
マイクロコンピュータ
大規模集積回路の発明により、1980年頃からパーソナルコンピュータ(当初はマイクロコンピュータと呼ばれていました)の製造が可能になりました。約5年間、CP/M(Control Program for Microcomputers)がマイクロコンピュータ向けの最も一般的なオペレーティングシステムでした。その後、IBMはMicrosoftからDOS(Disk Operating System)を買収しました。IBMの要請により改良が加えられた結果、MS-DOS(MicroSoft Disk Operating System)と呼ばれるようになり、IBM製マイクロコンピュータで広く使用されました。後期バージョンでは、UNIXの機能を取り入れるなど、より高度な機能が追加されました。

 

AppleのMacintoshは、グラフィカルユーザーインターフェース(GUI)を採用した最初の普及型コンピュータでした。GUIは、それ以前のオペレーティングシステムが使用していたテキストのみのコマンドラインインターフェースよりもはるかにユーザーフレンドリーであることが証明されました。Macintoshの成功を受けて、MS-DOSはWindowsと呼ばれるGUIオーバーレイを搭載してアップデートされました。 Windowsは後にスタンドアロンのオペレーティングシステムとして書き直され、他のオペレーティングシステム(VAX VMS)から多くの機能を借用したため、多額の法的和解金が支払われました。21世紀においても、Windowsはパーソナルコンピュータでは依然として人気がありますが、サーバー市場ではシェアが低下しています。UNIXオペレーティングシステム、特にLinuxは、エンタープライズシステムやサーバーで最も人気がありますが、モバイルデバイスやその他の多くのコンピュータシステムでも使用されています。

 

モバイルデバイスでは、当初はSymbian OSが主流でしたが、BlackBerry OS(2002年導入)とiPhone向けiOS(2007年以降)にその座を奪われました。その後、LinuxカーネルとBSDコードを部分的にベースとしたCライブラリ(Bionic)を搭載したオープンソースのAndroidオペレーティングシステム(2008年導入)が最も人気を博しました。

 

コンポーネント
オペレーティングシステムのコンポーネントは、コンピュータの様々な部分が連携して機能するように設計されています。DOSが事実上廃止されたため、すべてのユーザーソフトウェアはハードウェアにアクセスするためにオペレーティングシステムと連携する必要があります。

 

カーネル
カーネルは、オペレーティングシステムの一部であり、異なるアプリケーションとユーザー間の保護を提供します。この保護は、エラーを1つのプログラムに隔離することで信頼性を向上させるだけでなく、悪意のあるソフトウェアの力を制限し、個人データを保護し、1つのプログラムがコンピュータのリソースを独占できないようにすることでセキュリティを確保するためにも重要です。ほとんどのオペレーティングシステムには2つの動作モードがあります。ユーザーモードでは、ハードウェアがソフトウェアが正当な命令のみを実行しているかどうかをチェックします。一方、カーネルは無制限の権限を持ち、これらのチェックの対象にはなりません。カーネルは、他のプロセス用のメモリを管理し、入出力デバイスへのアクセスを制御します。

 

プログラム実行
オペレーティングシステムは、アプリケーションプログラムとコンピュータハードウェア間のインターフェースを提供します。これにより、アプリケーションプログラムは、オペレーティングシステムにプログラムされた規則と手順に従うことによってのみ、ハードウェアと対話できます。オペレーティングシステムはまた、アプリケーションプログラムの開発と実行を簡素化する一連のサービスでもあります。アプリケーションプログラムの実行には通常、オペレーティングシステムカーネルによるプロセスの作成が伴います。カーネルは、メモリ空間やその他のリソースを割り当て、マルチタスクシステムにおけるプロセスの優先度を設定し、プログラムのバイナリコードをメモリにロードし、アプリケーションプログラムの実行を開始します。そして、アプリケーションプログラムはユーザーやハードウェアデバイスと対話します。しかし、一部のシステムでは、アプリケーションはオペレーティングシステムに対し、サブルーチンまたは別のスレッドとして、同じプロセス内で別のアプリケーションを実行するよう要求することができます。例えば、OS/360および後継機種のLINK機能やATTACH機能などが挙げられます。

 

割り込み
割り込み(アボート、例外、フォールト、シグナル、トラップとも呼ばれます)は、ほとんどのオペレーティングシステムが環境に効率的に対応するための手段を提供します。割り込みは、中央処理装置(CPU)の制御フローを、現在実行中のプログラムから割り込みハンドラ(割り込みサービスルーチン(ISR)とも呼ばれます)へと切り替えます。割り込みサービスルーチンは、中央処理装置(CPU)のコンテキストスイッチを引き起こす場合があります。コンピュータが割り込みを処理する詳細はアーキテクチャによって異なり、割り込みサービスルーチンの動作もオペレーティングシステムによって異なります。しかし、いくつかの割り込み関数は共通です。アーキテクチャとオペレーティングシステムは、以下の処理を実行する必要があります。
割り込みサービスルーチンに制御を移す。
現在実行中のプロセスの状態を保存する。
割り込み処理後の状態を復元する。

 

Link 1  Link 2  Link 3  Link 4  Link 5  Link 6  Link 7  Link 8  Link 9  Link 10  Link 11  Link 12  Link 13  Link 14  Link 15  Link 16  Link 17  Link 18  Link 19  Link 20  Link 21  Link 22  Link 23  Link 24


Prita Diary 11072025

2025-07-11 15:36:12 | 日記

オペレーティングシステム パート2
分散システム
分散システムとは、ネットワークに接続された独立したコンピュータのグループであり、各コンピュータは独自のオペレーティングシステムとファイルシステムを持つ場合があります。マルチコンピュータとは異なり、分散システムは世界中に分散している可能性があります。ミドルウェアは、オペレーティングシステムとアプリケーションの間にある追加のソフトウェア層であり、一貫性を向上させるためによく使用されます。ミドルウェアはオペレーティングシステムと同様に機能しますが、真のオペレーティングシステムではありません。

 

組み込み
組み込みオペレーティングシステムは、IoT(モノのインターネット)オブジェクトであろうと、ネットワークに接続されていないものであろうと、組み込みコンピュータシステムで使用するように設計されています。組み込みシステムには、多くの家電製品が含まれます。組み込みシステムの特徴は、ユーザーがインストールしたソフトウェアをロードしないことです。そのため、異なるアプリケーション間の保護が不要で、よりシンプルな設計が可能になります。非常に小さなオペレーティングシステムは10キロバイト未満で動作することがあり、最小のものはスマートカード用です。例としては、組み込みLinux、QNX、VxWorks、そして超小型システムのRIOTやTinyOSなどがあります。

 

リアルタイム
リアルタイムオペレーティングシステムとは、特定の時点までに、または特定の時点でイベントやデータを処理することを保証するオペレーティングシステムです。ハードリアルタイムシステムは正確なタイミングを必要とし、製造業、航空電子工学、軍事などの分野で広く利用されています。ソフトリアルタイムシステムでは、時折イベントが欠落しても許容されます。このカテゴリには、オーディオやマルチメディアシステム、スマートフォンなどが含まれることがよくあります。ハードリアルタイムシステムで十分なタイミング精度を実現するために、eCosのようにアプリケーション間の保護機能を持たない単なるライブラリが使用されることがよくあります。

 

ハイパーバイザー
ハイパーバイザーは、仮想マシンを実行するオペレーティングシステムです。仮想マシンは自身がアプリケーションであることを認識せず、独自のハードウェアを持っているかのように動作します。仮想マシンは一時停止、保存、再開が可能であるため、オペレーティングシステムの研究、開発、デバッグに役立ちます。また、ベースオペレーティングシステムと互換性のないアプリケーションでもコンピュータ上で実行できるため、移植性も向上します。

 

ライブラリ
ライブラリ型オペレーティングシステム(libOS)とは、ネットワーク機能など、一般的なオペレーティングシステムが提供するサービスをライブラリの形で提供し、単一のアプリケーションと構成コードを組み合わせてユニカーネル(クラウドや組み込み環境に導入可能な、特殊な単一アドレス空間のマシンイメージ)を構築するオペレーティングシステムです。

 

オペレーティングシステムコードとアプリケーションコードは、分離された保護ドメインで実行されるのではなく、OSサービスには、組み込みOSやリアルタイムOSと同様に、コンテキストスイッチのオーバーヘッドなしに、単純なライブラリ呼び出しを介してアクセスされます。このオーバーヘッドは無視できないことに注意してください。モード切り替えの直接的なコストに加えて、重要なプロセッサ構造への間接的な負荷が加わり、ユーザーモードとカーネルモードの両方のパフォーマンスに影響します。

 

歴史
1940年代後半から1950年代にかけて登場した最初のコンピュータは、プログラミング言語やオペレーティングシステムを必要とせず、プラグボード、またはパンチカードなどのメディアに入力されたマシンコードによって直接プログラミングされていました。1950年代半ばにトランジスタが導入された後、メインフレームが製造されるようになりました。これらのメインフレームでは、プログラムの実行スケジュール設定など、現代のオペレーティングシステムが行うような作業を専門のオペレーターが手作業で行っていましたが、メインフレームにはFortran Monitor System (FMS)やIBSYSといった基本的なオペレーティングシステムがまだ搭載されていました。1960年代、IBMは最初の相互互換性のあるコンピュータシリーズ(System/360)を発表しました。これらのコンピュータはすべて、数千ものバグを抱えた数百万行のアセンブリ言語で構成される同じオペレーティングシステム(OS/360)を実行していました。OS/360はまた、マルチプログラミングをサポートした最初の普及したオペレーティングシステムでもありました。これにより、CPUをあるジョブで使用している間に、別のジョブが入出力(I/O)を待機することができました。複数のジョブをメモリに保持するには、メモリのパーティショニングと、あるジョブが別のジョブに割り当てられたメモリにアクセスしないようにする保護が必要でした。

 

同じ頃、テレタイププリンターが端末として使用され始め、複数のユーザーが同時にコンピュータにアクセスできるようになりました。オペレーティングシステムMULTICSは、数百人のユーザーが大型コンピュータにアクセスできるようにすることを目的としていました。採用は限定的でしたが、クラウドコンピューティングの先駆けと見なすことができます。 UNIXオペレーティングシステムは、単一ユーザー向けのMULTICSの開発から始まりました。UNIXのソースコードが公開されていたため、互換性のない他のオペレーティングシステムの基盤となり、その中で最も成功したのはAT&TのSystem Vとカリフォルニア大学バークレー校のBSD(Software Distribution)でした。互換性を高めるため、IEEEはオペレーティングシステムのアプリケーションプログラミングインターフェース(API)に関するPOSIX標準をリリースし、これはほとんどのUNIXシステムでサポートされています。MINIXは1987年に教育用途向けに開発されたUNIXの簡素化版で、商用フリーソフトウェアLinuxの誕生に影響を与えました。

 

Link 1  Link 2  Link 3  Link 4  Link 5  Link 6  Link 7  Link 8  Link 9  Link 10  Link 11  Link 12  Link 13  Link 14  Link 15  Link 16  Link 17  Link 18  Link 19  Link 20  Link 21  Link 22  Link 23  Link 24  Link 25  Link 26  Link 27


Prita Diary 08072025

2025-07-08 21:16:44 | 日記

オペレーティングシステム パート1
オペレーティングシステム(OS)は、コンピュータのハードウェアとソフトウェアのリソースを管理し、コンピュータプログラムに共通のサービスを提供するシステムソフトウェアです。

 

タイムシェアリングオペレーティングシステムは、システムを効率的に使用するためにタスクをスケジュールします。また、プロセッサ時間、大容量ストレージ、周辺機器、その他のリソースのコスト配分を行う会計ソフトウェアも含まれる場合があります。

 

入出力やメモリ割り当てなどのハードウェア機能に関しては、オペレーティングシステムはプログラムとコンピュータハードウェアの間の仲介役として機能しますが、アプリケーションコードは通常、ハードウェアによって直接実行され、OS機能へのシステムコールを頻繁に実行したり、ハードウェアによって中断されたりします。オペレーティングシステムは、携帯電話やビデオゲーム機からウェブサーバーやスーパーコンピュータまで、コンピュータを搭載した多くのデバイスに搭載されています。

 

2024年9月現在、Androidは市場シェア46%で最も多く利用されているオペレーティングシステムであり、次いでMicrosoft Windowsが26%、iOSとiPadOSが18%、macOSが5%、Linuxが1%となっています。 Android、iOS、iPadOSはモバイルOSであり、Windows、macOS、LinuxはデスクトップOSです。Linuxディストリビューションは、サーバーおよびスーパーコンピューティング分野で主流です。組み込みシステムやリアルタイムシステムなど、様々なアプリケーション向けに、特殊なOS(専用OS)も存在します。セキュリティ重視のOSも存在します。システム要件が低いOS(軽量Linuxディストリビューションなど)もあれば、システム要件が高いOSもあります。

 

OSの中には、インストールが必要なものや、購入したコンピュータにプリインストールされているもの(OEMインストール)もありますが、メディア(ライブCDなど)やフラッシュメモリ(USBスティックのLiveUSBなど)から直接実行できるものもあります。

 

定義と目的
OSの定義は難しい[6]ですが、「ユーザーとアプリケーションのためにコンピュータのリソースを管理するソフトウェア層」と呼ばれています。OSには、カーネルと呼ばれる常時実行されているソフトウェアが含まれますが、その他のソフトウェアも含まれる場合があります。コンピュータ上で実行できる他の2種類のプログラムは、システムプログラム(オペレーティングシステムに関連付けられているが、カーネルの一部ではない場合があります)とアプリケーション(その他のすべてのソフトウェア)です。

 

オペレーティングシステムには、主に3つの目的があります。

 

オペレーティングシステムは、異なるアプリケーション間でリソースを割り当て、CPU時間またはメモリ空間をいつ割り当てるかを決定します。現代のパーソナルコンピュータでは、ユーザーは複数のアプリケーションを同時に実行したいと考えることがよくあります。1つのプログラムがコンピュータの限られたハードウェアリソースを独占しないように、オペレーティングシステムは各アプリケーションに時間(CPU)または空間(メモリ)のいずれかのリソースを割り当てます。また、オペレーティングシステムは、アプリケーションを他のアプリケーションのコードにおけるエラーやセキュリティ上の脆弱性から保護するために、アプリケーション同士を分離すると同時に、異なるアプリケーション間の通信を可能にする必要があります。
オペレーティングシステムは、ハードウェアの詳細(物理メモリなど)へのアクセスの詳細を抽象化するインターフェースを提供することで、プログラマの作業を容易にします。仮想化により、オペレーティングシステムは限られたハードウェアリソースを隠蔽することもできます。例えば、仮想メモリは、コンピュータの実際のメモリを超える、ほぼ無制限のメモリがあるという錯覚をプログラムに与えることができます。
オペレーティングシステムは、ネットワークやディスクデバイスにアクセスするためのインターフェースなど、共通のサービスを提供します。これにより、アプリケーションを異なるハードウェア上で実行しても、書き換える必要はありません。オペレーティングシステムに含めるサービスは多岐にわたり、ほとんどのオペレーティングシステムではこの機能がコードの大部分を占めています。

 

オペレーティングシステムの種類
マルチコンピュータオペレーティングシステム
マルチプロセッサでは、複数のCPUがメモリを共有します。マルチコンピュータまたはクラスタコンピュータは、それぞれにメモリを持つ複数のCPUを備えています。マルチコンピュータは、大規模なマルチプロセッサの設計が困難で、非常に高価であるため開発されました。クラウドコンピューティングでは、必要なマシンのサイズが大きいため、マルチコンピュータが広く採用されています。異なるCPUは互いにメッセージを送受信する必要があることが多く、良好なパフォーマンスを確保するには、これらのマシンのオペレーティングシステムでパケットのコピーを最小限に抑える必要があります。最近のシステムは、パケットのコピーの必要性を減らし、より多くの同時ユーザーをサポートするために、ユーザーグループを別々のキューに分割するマルチキューを採用していることが多いです。もう一つの技術は、リモートダイレクトメモリアクセスです。これにより、各CPUが他のCPUに属するメモリにアクセスできるようになります。マルチコンピュータオペレーティングシステムは、多くの場合、CPUが別のCPU上のプロシージャを呼び出すリモートプロシージャコールや、オペレーティングシステムが仮想化技術を用いて物理的に存在しない共有メモリを生成する分散共有メモリをサポートしています。

 

Link 1  Link 2  Link 3  Link 4  Link 5  Link 6  Link 7  Link 8  Link 9  Link 10  Link 11  Link 12  Link 13  Link 14  Link 15  Link 16  Link 17  Link 18  Link 19  Link 20  Link 21  Link 22  Link 23  Link 24  Link 25  Link 26  Link 27


Prita Diary 04072025

2025-07-05 01:13:16 | 日記

仮想化 パート5
コンテナ化
オペレーティングシステムレベルの仮想化(コンテナ化とも呼ばれます)とは、カーネルが複数の分離されたユーザー空間インスタンスの存在を許可するオペレーティングシステムの機能を指します。コンテナ、パーティション、仮想環境(VE)、またはjail(FreeBSD jailまたはchroot jail)と呼ばれるこれらのインスタンスは、実行中のプログラムから見ると(物理的な)コンピュータのように見えることがあります。通常のオペレーティングシステム上で実行されるコンピュータプログラムは、そのコンピュータのすべてのリソース(接続されているデバイス、ファイルとフォルダ、ネットワーク共有、CPUパワー、定量化可能なハードウェア性能)を参照できます。しかし、コンテナ内で実行されるプログラムは、コンテナの内容とコンテナに割り当てられたデバイスのみを参照できます。

 

これにより、標準化やスケーラビリティなど、仮想マシンが持つ多くの利点が得られると同時に、カーネルがコンテナ間で共有されるため、使用するリソースが少なくなります。

 

コンテナ化は、2014年のDockerの導入により注目を集め始めました。

 

その他の種類
ソフトウェア
アプリケーション仮想化とワークスペース仮想化:個々のアプリケーションを基盤となるOSや他のアプリケーションから分離すること。ポータブルアプリケーションの概念と密接に関連しています。
サービス仮想化:API駆動型アプリケーション、クラウドベースアプリケーション、サービス指向アーキテクチャなど、異種コンポーネントベースのアプリケーションにおける特定のコンポーネントの動作をエミュレートすること。
メモリ
メモリ仮想化:複数のネットワークシステムのRAMリソースを単一の統合メモリプールに集約する概念は、分散メモリ、メモリプーリング、またはリモートメモリアクセスと呼ばれることがよくあります。このアーキテクチャは、複数のコンピュータまたはノードが高性能かつ低レイテンシでメモリを共有できるようにすることで、単一システムの従来のメモリ制限を克服することを目的としています。
仮想メモリ:アプリに連続した作業メモリがあるように見せかけ、基盤となる物理メモリ実装から分離する。
ストレージ
ストレージ仮想化:論理ストレージを物理ストレージから完全に抽象化するプロセス。
分散ファイルシステム:コンピュータネットワークを介して複数のホストからファイル共有を可能にするファイルシステム。
仮想ファイルシステム:より具体的なファイルシステムの上位にある抽象化レイヤー。クライアントアプリケーションがさまざまな種類の具体的なファイルシステムに統一的にアクセスできるようにする。
ストレージハイパーバイザー:ストレージ仮想化を管理し、物理ストレージリソースを1つ以上の柔軟な論理ストレージプールに統合するソフトウェア。
仮想ディスク:ハードディスクドライブや光ディスクドライブなどのディスクドライブをエミュレートするコンピュータプログラム(ディスクイメージソフトウェアの比較を参照)。
データ
データ仮想化:基盤となるデータベースシステム、構造、ストレージから独立した抽象レイヤーとしてデータを提示する。
データベース仮想化:アプリケーションスタック全体において、ストレージレイヤーとアプリケーションレイヤーの間に位置するデータベースレイヤーを分離する。
ネットワーク
ネットワーク仮想化:仮想ネットワークの構築ネットワークサブネット内またはサブネット間のアドレス空間
仮想プライベートネットワーク(VPN):ネットワーク内の実際の配線やその他の物理媒体を抽象層に置き換え、インターネット上にネットワークを構築できるネットワークプロトコル
ネットワークプロトコル仮想化:ネットワークの導入と管理を迅速化するためにネットワーク層を分離する

メリットとデメリット
仮想化、特に完全仮想化は、次のような点で効果的であることが証明されています。

複数のユーザー間でコンピュータシステムを共有する。

ユーザー同士(および制御プログラム)を分離する。

新しいハードウェアをエミュレートすることで、信頼性、セキュリティ、生産性を向上させる。
仮想化の一般的な目標は、管理タスクを一元化し、スケーラビリティと全体的なハードウェアリソースの利用率を向上させることです。仮想化により、複数のオペレーティングシステムを単一の中央処理装置(CPU)上で並行して実行できます。この並列処理はオーバーヘッドコストを削減する傾向があり、同じOS上で複数のプログラムを実行するマルチタスクとは異なります。仮想化を使用することで、企業はユーザーの作業を中断することなく、オペレーティングシステムやアプリケーションのアップデートや急速な変更をより適切に管理できます。 「

仮想化は、組織内のリソースとアプリケーションの効率と可用性を劇的に向上させます。「1台のサーバーに1つのアプリケーション」という旧来のモデルに頼ってリソースが十分に活用されない状況に陥るのではなく、仮想リソースはビジネスニーズに合わせて動的に適用され、無駄なリソースを浪費することなく活用されます。」

 

独自のオペレーティングシステムを実行する仮想マシンは、ホストマシンのオペレーティングシステムに関係なく、ライセンスが必要です。たとえば、VMゲストにMicrosoft Windowsをインストールするには、そのライセンス要件を満たす必要があります。

 

Link 1  Link 2  Link 3  Link 4  Link 5  Link 6  Link 7  Link 8  Link 9  Link 10  Link 11  Link 12  Link 13  Link 14  Link 15  Link 16  Link 17  Link 18  Link 19  Link 20  Link 21  Link 22  Link 23  Link 24  Link 25  Link 26  Link 27  Link 28  Link 29  Link 30


Prita Diary 03072025

2025-07-03 05:41:41 | 日記

仮想化 パート4
デスクトップ仮想化
デスクトップ仮想化は、論理デスクトップを物理マシンから分離します。

 

デスクトップ仮想化の1つの形態である仮想デスクトップインフラストラクチャ(VDI)は、ハードウェア仮想化のより高度な形態と考えることができます。ユーザーは、キーボード、マウス、モニターを介してホストコンピューターに直接操作するのではなく、LAN、無線LAN、さらにはインターネットなどのネットワーク接続を介して、別のデスクトップコンピューターまたはモバイルデバイスを使用してホストコンピューターと操作します。さらに、このシナリオでは、ホストコンピューターは複数のユーザーに対して複数の仮想マシンを同時にホストできるサーバーコンピューターになります。

 

HPやIBMなどの企業は、分散クライアントコンピューティングの限界を改善するために、さまざまな仮想化ソフトウェアと配信モデルを備えたハイブリッドVDIモデルを提供しています。選択されたクライアント環境は、ワークロードをPCやその他のデバイスからデータセンターのサーバーに移動し、適切に管理された仮想クライアントを作成します。アプリケーションとクライアントのオペレーティング環境は、データセンター内のサーバーとストレージでホストされます。ユーザーにとっては、単一のクライアントデバイスに縛られることなく、どこからでもデスクトップにアクセスできることを意味します。リソースが集中管理されているため、ユーザーは勤務地を移動しても、同じクライアント環境でアプリケーションやデータにアクセスできます。IT管理者にとって、これはより集中化された効率的なクライアント環境を実現し、メンテナンスが容易になり、ユーザーやビジネスのニーズの変化に迅速に対応できることを意味します。もう一つの形態であるセッション仮想化では、複数のユーザーがネットワーク経由で共有された高性能なコンピュータに接続・ログインし、同時に使用できます。各ユーザーにはデスクトップと、ファイルを保存するための個人用フォルダが与えられます。マルチシート構成では、複数のモニター、キーボード、マウスを接続した1台のPCでセッション仮想化を実現できます。

 

デスクトップ仮想化で見られるシンクライアントは、主にネットワーク接続用に設計されたシンプルで安価なコンピュータです。ハードディスクのストレージ容量、RAM、あるいは処理能力が不足している場合もありますが、多くの組織は、ソフトウェアが詰め込まれた(そしてソフトウェアライセンス料もかかる)「シッククライアント」デスクトップを廃止し、より戦略的な投資を行うことによるコストメリットに着目し始めています。

 

デスクトップ仮想化は、ソフトウェアのバージョン管理とパッチ管理を簡素化します。サーバー上で新しいイメージを更新するだけで、デスクトップは再起動時に更新されたバージョンを取得します。また、ワークステーション上でユーザーがアクセスできるアプリケーションを集中管理することも可能になります。

 

仮想デスクトップをクラウドに移行すると、ホスト型仮想デスクトップ(HVD)が作成されます。HVDでは、デスクトップイメージは専門のホスティング会社によって一元的に管理・保守されます。メリットとしては、拡張性と設備投資の削減(月々の運用コストに置き換えられます)が挙げられます。

 

コンテナ化
オペレーティングシステムレベルの仮想化(コンテナ化とも呼ばれます)とは、カーネルが複数の分離されたユーザー空間インスタンスの存在を許可するオペレーティングシステムの機能を指します。コンテナ、パーティション、仮想環境(VE)、またはjail(FreeBSD jailまたはchroot jail)と呼ばれるこれらのインスタンスは、実行中のプログラムから見ると(物理的な)コンピュータのように見える場合があります。通常のオペレーティングシステム上で実行されるコンピュータプログラムは、そのコンピュータのすべてのリソース(接続されたデバイス、ファイルとフォルダ、ネットワーク共有、CPUパワー、定量化可能なハードウェア性能)を参照できます。しかし、コンテナ内で実行されるプログラムは、コンテナの内容とコンテナに割り当てられたデバイスのみを参照できます。

 

これにより、標準化やスケーラビリティなど、仮想マシンが持つ多くの利点が得られると同時に、カーネルがコンテナ間で共有されるため、使用するリソースも削減されます。

 

コンテナ化は、2014年にDockerの導入によって注目を集め始めました。

 

Link 1  Link 2  Link 3  Link 4  Link 5  Link 6  Link 7  Link 8  Link 9  Link 10  Link 11  Link 12  Link 13  Link 14  Link 15  Link 16  Link 17  Link 18  Link 19  Link 20  Link 21  Link 22  Link 23  Link 24  Link 25  Link 26  Link 27  Link 28  Link 29  Link 30