最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

[全網(wǎng)首發(fā)] 紅米 Note 10 Pro 聯(lián)發(fā)科1100 啟用 KVM 運(yùn)行 QEMU

2022-10-23 09:23 作者:-小白之家-  | 我要投稿


前言:

KVM:既Kernel-based Virtual Machine

你可以叫它linux內(nèi)核虛擬機(jī)

這是一個(gè)內(nèi)核功能 你可以在編譯內(nèi)核的時(shí)候?qū)⑺_啟 或者作為一個(gè)模塊載入內(nèi)核

有了它 你可以讓linux內(nèi)核變成一個(gè)hypervisor

配合QEMU運(yùn)行硬件虛擬化加速支持的虛擬機(jī)

安卓內(nèi)核是基于linux


這里以arm64架構(gòu)進(jìn)行討論(x86不在本次討論范圍)

我們市邊上大部分手機(jī)都是arm64架構(gòu)的

arm64又是一個(gè)精簡指令集

果想要讓kvm工作的話 光靠編譯內(nèi)核開啟虛擬化和kvm是不足夠的?

首先排除自身CPU以及CPU的OEM廠商對虛擬化的限制

剩下的就涉及到一個(gè)新的概念:arm64異常級別(Exception Level 簡稱為EL)

這里的異常指的是 在精簡指令集(RISC)體系結(jié)構(gòu)中 中斷或打斷程序正常執(zhí)行的事件 //不理解沒關(guān)系

arm64有4個(gè)異常級別EL0/1/2/3


ARM64處理器在EL0時(shí)執(zhí)行進(jìn)程

在EL1時(shí)執(zhí)行內(nèi)核

EL2對應(yīng)的是虛擬機(jī)監(jiān)控器

EL3對應(yīng)的是安全監(jiān)控器

其中arm64架構(gòu)安全擴(kuò)展又分為正常世界和安全世界 通過安全監(jiān)視器EL3(三星的SBOOT貌似是運(yùn)行在此級別上)進(jìn)行切換

我們需要注意的是 這里面有個(gè)異常級別二(EL2)對應(yīng)的是虛擬機(jī)監(jiān)控器

而kvm想要正常工作 必須要運(yùn)行在EL2上? 并且kvm是屬于內(nèi)核空間 因此為了方便切換 讓內(nèi)核運(yùn)行在EL2便是整個(gè)安卓kvm成功的關(guān)鍵問題

可是手機(jī)廠商對這個(gè)異常級別是不開放的(pixel6系列是個(gè)意外)

這個(gè)地方往往被手機(jī)廠商用來執(zhí)行一些自定義代碼

如果這個(gè)級別被開放 那么它的權(quán)限將高于整個(gè)系統(tǒng)

(舉一個(gè)例子 我們解鎖了設(shè)備的bootloader 也僅僅是對EL1完全掌控)?


但是凡是都有以外的聯(lián)發(fā)科的天璣 1100 內(nèi)核直接運(yùn)行在了EL2上


現(xiàn)在這個(gè)設(shè)備上的KVM還是殘血狀態(tài) 還有很多問題沒有解決

因?yàn)榧拇嫫鞑东@的問題是無法運(yùn)行windows系統(tǒng)的

只能夠運(yùn)行l(wèi)inux系統(tǒng)

開始之前


你應(yīng)該準(zhǔn)備如下東西?

  1. 紅米 Note 10 Pro?(國行)手機(jī)一部?(需要?解鎖 \ ROOT \ TWRP)

  2. UP提供的內(nèi)核文件由 @無念_?編譯

  3. Linux安裝鏡像

你還更應(yīng)該注意以下事項(xiàng)

  1. 本教程不討論任何有關(guān)于這樣做的意義問題(生命的意義在于折騰)?

  2. 在進(jìn)行教程時(shí)務(wù)必做好數(shù)據(jù)備份

關(guān)于kvm運(yùn)行windows arm64系統(tǒng)

這個(gè)目前來說還是沒能實(shí)現(xiàn)

UP也實(shí)測了一下? Windows? boot manager過后不會(huì)轉(zhuǎn)圈圈? 目前是缺少對一些寄存器的捕獲


Android搭建QEMU環(huán)境

1.部署chroot debian linux

建議選擇debian sid的chroot

Qemu是一個(gè)多平臺的開源虛擬機(jī)

他沒有為安卓專門出過apk

但是我們?nèi)匀豢梢赃\(yùn)行它

這里我推薦使用termux里面部署一個(gè)chroot debian安裝QEMU

可以先去參考下UP發(fā)的視頻教程

https://www.bilibili.com/video/BV1Qe411j7vB


2.刷入KVM內(nèi)核

進(jìn)入TWRP

刷入KVM內(nèi)核

內(nèi)核下載鏈接( https://olphschool-my.sharepoint.com/:u:/g/personal/a7556_365v_me/ETTH-imS0IZNngDlpusEg2MBIULNXc7WXmnkWZm39-mpAg?e=zl5u8X )

3.安裝QEMU

在終端里面輸入

apt install qemu-system-aarch64

結(jié)束以后輸入

qemu-system-aarch64 --version

//檢查qemu版本以及是否安裝到位


4.KVM調(diào)用測試:

輸入以下命令:

qemu-system-aarch64 -M virt -cpu host --enable-kvm -monitor stdio -vnc :0

你的面前應(yīng)該會(huì)出現(xiàn)一個(gè)QEMU控制臺

此時(shí)輸入info kvm

輸出的

kvm support: enable

就調(diào)用成功了


5.啟動(dòng)QEMU

設(shè)置音頻

export?PULSE_SERVER=tcp:127.0.0.1:4713?
啟動(dòng)命令
qemu-system-aarch64?-machine?virt,accel=kvm,gic-version=host?-object?memory-backend-ram,id='pc.ram',size=2048,x-use-canonical-path-for-ramblock-id='off'?-m?2048M?-cpu?host?-smp?4,cores=1,threads=1,sockets=4?-device?virtio-gpu-pci,edid=true,max_hostmem=512M,xres=1600,yres=720?-usb?-device?usb-ehci,id='ehci',maxframes='128'?-device?usb-tablet?-device?usb-kbd?-enable-kvm?-serial?stdio?-drive?if=none,file='虛擬機(jī)空白鏡像文件',id=hd0?-device?virtio-blk-device,drive=hd0?-pflash?/你的目錄/EFI_DEBUG.img?-pflash?/你的目錄/EFI_VARS.img?-smbios?type='4',manufacturer='Intel',max-speed='2600',current-speed='2600',sock_pfx='XBZJ',version='QEMU-XBZJ',serial='XBZJ'??-display?'vnc'="127.0.0.1:0",key-delay-ms='0',connections='30000',to='2',lossy='off',non-adaptive='off',id='video0',audiodev='HDA'?-audiodev?'alsa',id='HDA',in.channels='2',in.frequency='44100',out.buffer-length='4399',in.format='s16',in.voices='2'?-device?'intel-hda'?-global?intel-hda.multifunction='on'?-global?intel-hda.msi='auto'?-device?'hda-duplex'?-global?hda-duplex.mixer='true'?-global?hda-duplex.use-timer='true'?-global?hda-duplex.cad='4294967295'?-global?hda-duplex.audiodev='HDA'?-drive?if=none,file=/安裝盤,id=cdrom,media=cdrom?-device?virtio-scsi-device?-device?scsi-cd,drive=cdrom

如果不出意外就可以去VNC連接

地址 127.0.0.1:0


安裝好后關(guān)機(jī)

去掉后面的光盤命令

啟動(dòng)

qemu-system-aarch64?-machine?virt,accel=kvm,gic-version=host?-object?memory-backend-ram,id='pc.ram',size=2048,x-use-canonical-path-for-ramblock-id='off'?-m?2048M?-cpu?host?-smp?4,cores=1,threads=1,sockets=4?-device?virtio-gpu-pci,edid=true,max_hostmem=512M,xres=1600,yres=720?-usb?-device?usb-ehci,id='ehci',maxframes='128'?-device?usb-tablet?-device?usb-kbd?-enable-kvm?-serial?stdio?-drive?if=none,file='虛擬機(jī)空白鏡像文件',id=hd0?-device?virtio-blk-device,drive=hd0?-pflash?/你的目錄/EFI_DEBUG.img?-pflash?/你的目錄/EFI_VARS.img?-smbios?type='4',manufacturer='Intel',max-speed='2600',current-speed='2600',sock_pfx='XBZJ',version='QEMU-XBZJ',serial='XBZJ'??-display?'vnc'="127.0.0.1:0",key-delay-ms='0',connections='30000',to='2',lossy='off',non-adaptive='off',id='video0',audiodev='HDA'?-audiodev?'alsa',id='HDA',in.channels='2',in.frequency='44100',out.buffer-length='4399',in.format='s16',in.voices='2'?-device?'intel-hda'?-global?intel-hda.multifunction='on'?-global?intel-hda.msi='auto'?-device?'hda-duplex'?-global?hda-duplex.mixer='true'?-global?hda-duplex.use-timer='true'?-global?hda-duplex.cad='4294967295'?-global?hda-duplex.audiodev='HDA'


到這里就完事了

[全網(wǎng)首發(fā)] 紅米 Note 10 Pro 聯(lián)發(fā)科1100 啟用 KVM 運(yùn)行 QEMU的評論 (共 條)

分享到微博請遵守國家法律
衡南县| 冷水江市| 永清县| 和政县| 中超| 宜章县| 监利县| 顺昌县| 德州市| 吴江市| 山西省| 郓城县| 阜城县| 衡南县| 鄯善县| 小金县| 梁山县| 外汇| 辽中县| 拜泉县| 托克逊县| 象州县| 托克托县| 沭阳县| 滦平县| 大兴区| 阿坝| 哈巴河县| 定安县| 柏乡县| 民勤县| 丽水市| 锦屏县| 额济纳旗| 松桃| 西安市| 新昌县| 潮安县| 南郑县| 乌拉特前旗| 潜山县|