שחרור הפרויקט . בתור אמולטור, QEMU מאפשר לך להריץ תוכנית הידורית עבור פלטפורמת חומרה אחת על מערכת עם ארכיטקטורה שונה לחלוטין, למשל, להפעיל יישום ARM על מחשב תואם x86. במצב וירטואליזציה ב-QEMU, הביצועים של ביצוע קוד בסביבה מבודדת קרובים למערכת המקורית עקב ביצוע ישיר של הוראות על ה-CPU והשימוש ב-Xen hypervisor או מודול KVM.
הפרויקט נוצר במקור על ידי פבריס בלארד כדי לספק את היכולת להריץ קבצי הרצה שהורכבו עבור פלטפורמת x86. Linux על ארכיטקטורות שאינן x86. במהלך שנות הפיתוח, נוספה תמיכה באמולציה מלאה עבור 14 ארכיטקטורות חומרה, ומספר התקני החומרה שעברו חיקוי עלה על 400. בהכנת גרסה 4.1 בוצעו יותר מ-2000 שינויים של 276 מפתחים.
מפתח נוסף ב-QEMU 4.1:
- אמולטור הארכיטקטורה של x86 עודכן כדי לתמוך במודלי המעבדים Hygon Dhyana ו-Intel SnowRidge. נוספה אמולציה של סיומת RDRAND (מחולל מספרים אקראיים פסאודו לחומרה). נוספו דגלים.
md-clear ו-mds-no לניהול הגנה מפני התקפות (דגימת נתונים מיקרו-ארכיטקטונית) עבור מעבדי אינטל. נוספה היכולת לקבוע טופולוגיות של מעגלים משולבים באמצעות הדגל "-smp …,dies=". יושם ניהול גרסאות עבור כל דגמי המעבדים x86; - מנהל התקן של בלוק SSH הועבר משימוש על ;
- בדרייבר virtio-gpu (מעבד גרפי וירטואלי שפותח במסגרת הפרויקט) ) נוספה תמיכה בהעברת פעולות רינדור דו-ממדיות/תלת-ממדיות לתהליך vhost-user חיצוני (לדוגמה, vhost-user-gpu);
- אמולטור הארכיטקטורה של ARM תומך כעת בהרחבה ARMv8.5-RNG ליצירת מספרים פסאודו-אקראיים. תמיכה באמולציית FPU עבור שבבי משפחת Cortex-M יושמה, ובעיות באמולציית FPU עבור Cortex-R5F נפתרו. הוצעה מערכת חדשה להגדרת אפשרויות הרכבה, שתוכננה בסגנון Kconfig. נוספה תמיכה בבקרי PL4210 DMA עבור ה-Exynos330 SoC;
- אמולטור הארכיטקטורה של MIPS משפר את התמיכה בהוראות MSA ASE בעת שימוש בסדר בתים של big-endian ומביא את הטיפול בחילוק באפס לקו אחד עם חומרת ייחוס. ביצועי אמולציית הוראות MSA עבור חישובי מספרים שלמים ופעולות תמורה שופרו;
- אמולטור הארכיטקטורה של PowerPC תומך כעת במעבר לכרטיסי מסך של NVIDIA V100/NVLink2 באמצעות VFIO. עבור pseries, אמולציית בקר הפסיקה של XIVE הואצה ונוספה תמיכה בגשרי PCI עם חיבור חם. בוצעו אופטימיזציות באמולציית הוראות וקטור (Altivec/VSX);
- מודל חומרה חדש, "spike", נוסף לאמולטור הארכיטקטורה של RISC-V. נוספה תמיכה ב-ISA 1.11.0. שופר ה-ABI של 32 סיביות של קריאות מערכת, הורחב הטיפול בהוראות לא חוקיות, וניפוי הבאגים המובנה שופר. נוספה תמיכה בטופולוגיית CPU בעץ ההתקנים;
- אמולטור הארכיטקטורה s390 תומך כעת באמולציה של כל הוראות הווקטור של קבוצת Vector Facility וכולל אלמנטים נוספים לתמיכה במערכות gen15 (כולל תמיכה ב-AP Queue Interruption Facility עבור vfio-ap). תמיכה ב-BIOS יושמה לאתחול מ-ECKD DASD המקושר למערכת האורחת דרך vfio-ccw;
- באמולטור הארכיטקטורה של SPARC עבור מערכות sun4m, נפתרו בעיות בשימוש בדגל "-vga none" עבור OpenBIOS;
- אמולטור משפחת המעבדים Tensilica Xtensa מיייש אפשרויות עבור MPU (יחידת הגנה על זיכרון) וגישה בלעדית;
- לפקודה "qemu-img convert" יש כעת את האפשרות "--salvage" כדי להשבית קריסות במהלך המרת תמונות אם מתרחשות שגיאות קלט/פלט (לדוגמה, ניתן להשתמש באפשרות זו כדי לשחזר קבצי qcow2 שניזוקו חלקית). בפקודה
"qemu-img rebase" פועל כעת כאשר לקובץ הקלט עדיין אין קובץ גיבוי; - נוספה היכולת להפנות מחדש פלט שאורגן באמצעות טכנולוגיית "semihosting" (מאפשרת למכשיר המדומה להשתמש ב-stdout, stderr ו-stdin כדי ליצור קבצים בצד המארח) אל ה-backend של chardev ("-semihosting-config enable=on,target=native,chardev=[ID]");
- מנהל ההתקן של בלוק VMDK תומך כעת בתת-פורמט seSparse במצב קריאה בלבד;
- מנהל ההתקן של אמולציית GPIO תומך כעת בבקר GPIO של SiFive.
מקור: OpenNet.ru
