基於C語言libvirt API簡單小程式

來源:互聯網
上載者:User

標籤:圖片   實驗   char   .com   hyperv   blog   images   open   http   

libvirt API簡單小程式

1、程式碼如下

#include<stdio.h>#include<libvirt/libvirt.h>int getDomainInfo(int id) {virConnectPtr conn = NULL;virDomainPtr dom = NULL;virDomainInfo info;conn = virConnectOpenReadOnly(NULL);if (conn == NULL) {fprintf(stderr, "Failed to connect to hypervisor\n");return 1;}dom = virDomainLookupByID(conn, id);if (dom == NULL) {fprintf(stderr, "Failed to find Domain %d\n", id);virConnectClose(conn);return 1;}if (virDomainGetInfo(dom, &info) < 0) {fprintf(stderr, "Failed to get information for Domain %d\n", id);virDomainFree(dom);virConnectClose(conn);return 1;}printf("Domain ID: %d\n", id);printf("    vCPUs: %d\n", info.nrVirtCpu);printf("    maxMem: %d KB\n", info.maxMem);printf("    memory: %d KB\n", info.memory);if (dom != NULL){virDomainFree(dom);}if (conn != NULL){virConnectClose(conn);}return 0;}int main(int argc, char **argv){int dom_id = 3;printf("-----Get domain info by ID via libvirt C API -----\n");getDomainInfo(dom_id);return 0;}

  

2、程式編譯並運行,運行結果1所示

gcc dominfo.c -o dominfo -lvirt./dominfo

  -lvirt指定程式連結時的共用庫,在本文實驗環境中依賴的共用庫檔案路徑為/usr/lib/libvirt.so

圖 1

將運行結果和virsh的啟動並執行結果相比較,virsh的結果2所示

圖 2

 

 

 

基於C語言libvirt API簡單小程式

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.