タグ

kvmに関するzyxwvのブックマーク (15)

  • Virtio and Vhost Architecture - Part 2

    zyxwv
    zyxwv 2024/06/21
    virtio と vhost
  • Virtio and Vhost Architecture - Part 1

    zyxwv
    zyxwv 2024/06/21
    virtio と vhost
  • Virtio, vhost, vhost-user, vsock, etc. - Lencerf's Walk

    zyxwv
    zyxwv 2024/06/20
    vhost は、ゲストカーネルからの処理依頼を VMM を飛ばしてホストのドライバに直接渡す。vhost-user はユーザスペースドライバに直接渡す。vhost-user のメリットはドライバをVMM 非依存にできること。
  • ioeventfd & irqfd - KVM日記

    2.6.32でマージされた*1KVMの新機能ioeventfdとirqfdについて調べてみました。 eventfd どちらもeventfd(2)を利用しているので、まずはその概略から。 eventfdは2.6.22から利用可能なユーザプロセス間もしくはユーザ・カーネル間のイベント通知専用のシステムコールです。eventfdはeventfdオブジェクトと呼ばれるディスクリプタを返します。利用者はこのディスクリプタに対してread/write/select/pollなどをすることでイベントの通知や受け取りを行ないます。この種のディスクリプタを介したイベント通知はpipeやsocketでも可能ですが、特化している分eventfdの方が簡潔に書けて軽量です。 同種のシステムコールにsignalfdやtimerfdなどがあり、各種ディスクリプタとまとめてselect/pollすることができて便利です

    ioeventfd & irqfd - KVM日記
    zyxwv
    zyxwv 2024/06/20
    ユーザ空間へ遷移せずゲスト・ホスト間でイベント通知を行うKVMの仕組み。ゲストがパケットを送ると、ゲストのソケットドライバ→KVM→QEMU→ソケットドライバ、とカーネル・ユーザ空間を往復することになり効率が悪い
  • /dev/kvmを直接叩いて理解する

    第1章 /dev/kvmを直接叩いて理解する この章では、/dev/kvmを直接叩く簡単なプログラムをいくつか作って、KVMを使うVMがどのように作られているのかを理解します。 ただし、次章で既存のプログラムを改造する際、どこを改造するかは説明するので、特にここらへんの理解が不要な場合、この章を飛ばしても大丈夫です。 1.1 Hello KVM! LinuxカーネルにはKernel-based Virtual Machine(KVM)という機能があり、その名の通り仮想マシンを実現するための機能を提供しています。 KVMは/dev/kvmというデバイスファイルでカーネルから提供されています。 この項では/dev/kvmを直接叩いてVMを作成し、"Hello KVM!"と表示させてみます。 1.1.1 KVMがやってくれること、KVMでVMを作るためにやらなきゃいけないこと KVMでVMを作る

    zyxwv
    zyxwv 2024/04/16
    /dev/kvm を ioctl で叩いて VM をコントロールする。KVM_RUN すると VM に処理が移り、ハイパーバイザの処理が必要になるイベントが起きると ioctl から戻ってくる。
  • Kernel-based Virtual Machine Technology

    zyxwv
    zyxwv 2023/10/29
    KVM の基本的な説明
  • cdf-xen-guests-500_1000.eps

    zyxwv
    zyxwv 2022/08/20
    Xen と KVM でレイテンシを比較した結果。KVM は妥当だが Xen はよくわからない結果となった。dom0/U に Preempt-RT をあてても効果なし。dom0 への負荷で全体の性能が下がるなど。
  • Armはどうやって効率的な仮想化を実現しているのか 進化するAArch 64の仮想化支援機構

    Arm入門勉強会とは、macOSがArmに移行したこの機にArmアーキテクチャでのプログラミングについて入門するソフトウェアエンジニアのための会です。今回主催の@nullpo_head 氏が、Armの仮想化支援機構について、その仕組みから深く説明します。後半は「AArch 64の仮想化支援機構」について。 AArch 64の仮想化支援機構 以上が一般的な現代のハードウェア仮想化支援機構についての話になるんですけど、ここからはArmというか、AArch 64の仮想化支援機構についての解説を始めます。 対象アーキテクチャについてです。Virtualization ExtensionというのがArm v7のときの名前で、AArch 64ではどうもただの仮想化機構としか呼ばれていないみたいなんですけど、とりあえずAArch 64だけを対象に発表します。基的には特権レベルの名前とかが変わるだけでだ

    Armはどうやって効率的な仮想化を実現しているのか 進化するAArch 64の仮想化支援機構
  • VM環境のCPU仮想化はどうやって実現しているのか ハードウェア仮想化支援機構の仕組み

    Arm入門勉強会とは、macOSがArmに移行したこの機にArmアーキテクチャでのプログラミングについて入門するソフトウェアエンジニアのための会です。今回主催の@nullpo_head 氏が、Armの仮想化支援機構について、その仕組みから深く説明します。前半は「現代のハードウェア仮想化支援機構」について。全2回。 ハードウェア仮想化支援とは何か 佐伯 学哉氏:入門セッション3つ目は『Armの仮想化支援機構』についての入門セッションです。どうぞよろしくお願いします。 発表のスタートとゴールです。VMwareとかQemuとか使ったことあるけど仮想マシンの仕組みなんも知らんというところがまずスタートになっています。 1個目のゴールは、最近のVMのざっくりした仕組みとハードウェア仮想化支援とは何かということがわかること。そしてその話のあとに実際にArmの仮想化支援機構の概要を説明し、Armの仮想

    VM環境のCPU仮想化はどうやって実現しているのか ハードウェア仮想化支援機構の仕組み
  • cfr_xen.eps

    zyxwv
    zyxwv 2022/04/15
    Xen Guest のカーネルに RT パッチを当ててもレイテンシは改善しない。QEMU でデバイスをエミュレートすると遅いから、PV か PVH を使うべき。
  • Linux vsock internals

    Background VM Sockets(vsock) is a fast and efficient communication mechanism between guest virtual machines and their host. It was added by VMware in commit VSOCK: Introduce VM Sockets. The commit added a new socket address family named vsock and its vmci transport. VM Sockets can be used in a lot of situation such as the VMware Tools inside the guest. As vsock is very useful the community has dev

  • KVM のサーバ仮想化技術 - FUJITSU. 62, 1, p. 99-105 (01, 2011)

    FUJITSU. 62, 1, p. 99-105 01, 2011 99 あ ら ま し KVM Kernel-based Virtual Machine KVM 2006 10 Linux Kernel Red Hat Enterprise Linux Red Hat Enterprise Linux 6 KVM KVM KVM Abstract Kernel-based virtual machine (KVM) virtualization has been attracting attention in recent years as an open source server virtualization technique. Since its introduction in October 2006, this idea has aroused the interest o

    zyxwv
    zyxwv 2020/02/10
    QEMUはユーザ空間で動くエミュレータ。通常の処理はKVMでそのまま実行し、エミュレートが必要な処理のみQEMUを使う。CPUはホストのスレッドとして実現されるのでホストのスケジューリングの対象となる。
  • How to enable KVM for Poky qemu - Yocto Project

    zyxwv
    zyxwv 2020/01/31
    /dev/kvm のグループを kvm にし、ユーザを kvm に所属させる(反映には再起動が必要)。runqemu kvm で kvm を有効にできる。
  • 仮想化環境におけるパケットフォワーディング

    イベント名:設立3周年記念チャリティーセミナー 講師:日仮想化技術 宮原 日時:2010/2/6 アジェンダ: • KVMの概要 • KVM仮想マシン作成のコツ • KVMベンチマークテスト 概要: リリース直後に異例の速さでカーネルに取り込まれたKVMですが、VMwareやXenに比べて、まだまだ活用術や情報が少ないのが現状です。セッションでは、KVMの仕組み、活用方法、性能評価の結果について解説いたします。

    仮想化環境におけるパケットフォワーディング
    zyxwv
    zyxwv 2019/12/30
    ハイパーバイザが割込み処理してQEMU経由でゲストのバッファにデータをコピーし、仮想NICに割込みを発生させる。通常のドライバはハードからデータを読もうとするので遅い。virtioは直接バッファを読む。
  • virtio(vhost)の概要 - tkokamoの日記

    48-146407 kvmなどの仮想化環境において、ゲストOSのネットワークやディスクI/Oを早くするために、virtioと呼ばれる準仮想化ドライバドライバを用いることがある。 今回は、あまり技術的に細かい部分には突っ込まず、なぜゲストOSのI/Oが遅いのか、なぜvirtioを用いると速くなるのか簡単に整理してみた。 virtio(vhost)の反映の仕方(virt-manager) virtio-net(vhost-net)の場合 virt-managerを開いてvirtioを反映させたいVMをを開く。VMのコンソールのメニューで[表示]→[詳細]を選択し、NICのデバイスモデルをvirtioにし、適用を押せばよい。この時、すでにVMが起動している場合、一度シャットダウンしてからでないと反映されない。 システムのバージョンに依存すると思われるが、virtioを適用していても実際にはvho

    virtio(vhost)の概要 - tkokamoの日記
    zyxwv
    zyxwv 2019/12/30
    virtioはqemuとゲスト間でメモリを共有し、処理をバッファする。vhostはゲストとホストで共有メモリを用意する。
  • 1