先看圖:今天在散步,擡頭看天空,發現一隻無比巨大的鳥,從來沒見過這大滴,神鳥都是浮雲!
大家猜猜像什麼。
虐,並快樂着 --- 阿
轉自:http://www.fengniao.com/forum/showthread.php?threadid=242176永恆的18歲——獻給趙巖MM19歲生日的賀禮 2005年新年的鐘聲餘音繞樑,趙巖妹妹19歲生日的鐘聲即將敲響!在
越來越多的軟件,開始採用雲服務。 雲服務只是一個統稱,可以分成三大類。 IaaS:基礎設施服務,Infrastructure-as-a-service PaaS:平臺服務,Platform-as-a-service SaaS:軟件服務
1. 虛擬機進程 使用ps –ef |grepkvm可以看到虛擬機進程信息如下: /usr/libexec/qemu-kvm -nameinstance-0000001d -S -machine pc-i440fx-rhel7.1
序言 設備驅動可以運行在內核態,也可以運行在用戶態,用戶態驅動的利弊網上有很多的討論,而且有些還上升到政治性上,這裏不再多做討論。不管用戶態驅動還是內核態驅動,他們都有各自的缺點。內核態驅動的問題是:系統調用開銷大;學習曲線陡峭;
在虛擬化場景,中斷的開銷更大,所以要儘可能的少用中斷,我們從中斷處理函數開始看。 skb_recv_done函數 static void skb_recv_done(struct virtqueue *rvq) { struct
ovs中無法直接抓包分析,可以通過端口流量鏡像的方式進行抓包 端口流量鏡像主要分爲兩步: 創建mirror,指定mirror中的源端口,目的端口 綁定mirror至bridge 1、創建mirror 指定mirror名稱,n
場景 Host上運行qemu kvm虛擬機,其中虛擬機的網卡類型爲virtio-net,而Host上virtio-net backend使用vhost-net 數據包進入虛擬機代碼分析 首先看vhost-net模塊註冊,主要使用l
實現進程間通信最簡單也是最直接的方法就是共享內存——爲參與通信的多個進程在內存中開闢一個共享區。由於進程可以直接對共享內存進行讀寫操作,因此這種通信方式效率特別高,但其弱點是,它沒有互斥機制,需要信號量之類的手段來配合。 共享內存
消息機制 當使用vhost-user時,需要在系統中創建一個unix domain socket server,用來處理qemu發送給host的消息。 如果有新的socket連接,說明guest創建了新的virtio-net設備,
VFIO——將設備暴露到用戶態 在開始之前我們先要說一個東西就是 DMA,直接讓設備訪問內存,可以不通過 CPU 搬運數據。 這是一個比較簡單的體系結構圖,設備 和 CPU 通過存儲控制器訪問存儲器。一個簡單的 case 是 C
背景 OvS(Open vSwitch)是雲計算平臺的重要連接組件,爲虛擬機提供網絡連,被各大雲平臺,基礎設施供應商廣泛使用,比如OpenStack, OpenNebula。vSwitch–Virtual Switch(虛擬交換機
在計算機領域,IOMMU(Input/Output Memory Management Unit)是一個內存管理單元(Memory Management Unit),它的作用是連接DMA-capable I/O總線(Direct
所謂前後端通知,必然涉及兩個方向:前端通知後端,後端通知前端。而我們知道vhost有txq和rxq,對於每種queue都伴隨有這兩種通知。而通知方式又根據是否支持event_idx有着不同的實現,最後virtio1.1引入的pac
OVS上實現端口鏡像的基本流程如下: 創建mirror,在mirror中指定鏡像數據源及鏡像目的地 將創建的mirror應用到bridge中 鏡像數據源可以通過下面幾個選項來指定: select_all: 布爾值,設置爲tr