QEMU 4.1 ఎమ్యులేటర్ విడుదల

సమర్పించిన వారు ప్రాజెక్ట్ విడుదల QEMU 4.1. ఎమ్యులేటర్‌గా, QEMU పూర్తిగా భిన్నమైన ఆర్కిటెక్చర్‌తో సిస్టమ్‌లో ఒక హార్డ్‌వేర్ ప్లాట్‌ఫారమ్ కోసం కంపైల్ చేయబడిన ప్రోగ్రామ్‌ను అమలు చేయడానికి మిమ్మల్ని అనుమతిస్తుంది, ఉదాహరణకు, x86-అనుకూల PCలో ARM అప్లికేషన్‌ను అమలు చేయండి. QEMUలో వర్చువలైజేషన్ మోడ్‌లో, CPUపై సూచనలను నేరుగా అమలు చేయడం మరియు Xen హైపర్‌వైజర్ లేదా KVM మాడ్యూల్‌ని ఉపయోగించడం వల్ల ఒక వివిక్త వాతావరణంలో కోడ్ అమలు యొక్క పనితీరు స్థానిక సిస్టమ్‌కు దగ్గరగా ఉంటుంది.

నాన్-x86 ఆర్కిటెక్చర్‌లపై x86 ప్లాట్‌ఫారమ్ కోసం కంపైల్ చేయబడిన Linux ఎక్జిక్యూటబుల్స్‌ను అమలు చేసే సామర్థ్యాన్ని అందించడానికి ఈ ప్రాజెక్ట్ వాస్తవానికి ఫాబ్రిస్ బెల్లార్డ్ చేత సృష్టించబడింది. అభివృద్ధి చెందుతున్న సంవత్సరాలలో, 14 హార్డ్‌వేర్ ఆర్కిటెక్చర్‌లకు పూర్తి ఎమ్యులేషన్‌కు మద్దతు జోడించబడింది, ఎమ్యులేటెడ్ హార్డ్‌వేర్ పరికరాల సంఖ్య 400 మించిపోయింది. వెర్షన్ 4.1ని సిద్ధం చేయడంలో, 2000 డెవలపర్‌ల నుండి 276 కంటే ఎక్కువ మార్పులు చేయబడ్డాయి.

కీ మెరుగుదలలుQEMU 4.1లో జోడించబడింది:

  • x86 ఆర్కిటెక్చర్ ఎమ్యులేటర్‌కు హైగోన్ ధ్యాన మరియు ఇంటెల్ స్నో రిడ్జ్ CPU మోడల్‌లకు మద్దతు జోడించబడింది. RDRAND పొడిగింపు (హార్డ్‌వేర్ సూడో-రాండమ్ నంబర్ జనరేటర్) యొక్క ఎమ్యులేషన్ జోడించబడింది. జెండాలు జోడించబడ్డాయి
    దాడి రక్షణను నియంత్రించడానికి md-clear మరియు mds-no MDS ఇంటెల్ ప్రాసెసర్‌లపై (మైక్రోఆర్కిటెక్చరల్ డేటా శాంప్లింగ్). “-smp ...,dies=” ఫ్లాగ్‌ని ఉపయోగించి ఇంటిగ్రేటెడ్ సర్క్యూట్ టోపోలాజీలను గుర్తించే సామర్థ్యాన్ని జోడించారు. అన్ని x86 CPU మోడళ్లకు సంస్కరణ అమలు చేయబడింది;

  • SSH బ్లాక్ డ్రైవర్ ఉపయోగించడం నుండి తరలించబడింది libssh2లిబ్ష్;
  • virtio-gpu డ్రైవర్ (వర్చువల్ GPU ప్రాజెక్ట్‌లో భాగంగా అభివృద్ధి చేయబడింది విర్గిల్) 2D/3D రెండరింగ్ కార్యకలాపాలను బాహ్య vhost-యూజర్ ప్రక్రియకు తరలించడానికి మద్దతు జోడించబడింది (ఉదాహరణకు, vhost-user-gpu);
  • ARM ఆర్కిటెక్చర్ ఎమ్యులేటర్ నకిలీ-రాండమ్ నంబర్‌లను రూపొందించడానికి ARMv8.5-RNG పొడిగింపుకు మద్దతును జోడించింది. FPU ఎమ్యులేషన్ కోసం మద్దతు Cortex-M ఫ్యామిలీ చిప్‌ల కోసం అమలు చేయబడింది మరియు Cortex-R5F కోసం FPU ఎమ్యులేషన్‌తో సమస్యలు పరిష్కరించబడ్డాయి. Kconfig శైలిలో రూపొందించబడిన బిల్డ్ ఎంపికలను సెట్ చేయడానికి కొత్త సిస్టమ్ ప్రతిపాదించబడింది. SoC Exynos4210 కోసం, PL330 DMA కంట్రోలర్‌లకు మద్దతు జోడించబడింది;
  • MIPS ఆర్కిటెక్చర్ ఎమ్యులేటర్ పెద్ద-ఎండియన్ బైట్ ఆర్డర్‌ను ఉపయోగిస్తున్నప్పుడు MSA ASE సూచనలకు మద్దతును మెరుగుపరిచింది మరియు రిఫరెన్స్ హార్డ్‌వేర్‌తో సున్నా కేసుల ద్వారా విభజన నిర్వహణను సమలేఖనం చేసింది. పూర్ణాంక లెక్కలు మరియు ప్రస్తారణ కార్యకలాపాల కోసం MSA సూచనల ఎమ్యులేషన్ పనితీరు పెరిగింది;
  • PowerPC ఆర్కిటెక్చర్ ఎమ్యులేటర్ ఇప్పుడు VFIOని ఉపయోగించి NVIDIA V100/NVLink2 GPUలకు ఫార్వార్డ్ చేయడానికి మద్దతు ఇస్తుంది. సీరీస్ కోసం, XIVE అంతరాయ కంట్రోలర్ ఎమ్యులేషన్ యొక్క త్వరణం అమలు చేయబడింది మరియు PCI బ్రిడ్జ్‌ల హాట్ ప్లగ్గింగ్‌కు మద్దతు జోడించబడింది. వెక్టార్ సూచనల ఎమ్యులేషన్‌కు ఆప్టిమైజేషన్‌లు చేయబడ్డాయి (Altivec/VSX);
  • RISC-V ఆర్కిటెక్చర్ ఎమ్యులేటర్‌కి కొత్త హార్డ్‌వేర్ మోడల్ జోడించబడింది - “స్పైక్”. ISA 1.11.0కి మద్దతు జోడించబడింది. 32-బిట్ సిస్టమ్ కాల్ ABI మెరుగుపరచబడింది, చెల్లని సూచనల నిర్వహణ మెరుగుపరచబడింది మరియు అంతర్నిర్మిత డీబగ్గర్ మెరుగుపరచబడింది. పరికర ట్రీలో CPU టోపోలాజీకి మద్దతు జోడించబడింది;
  • s390 ఆర్కిటెక్చర్ ఎమ్యులేటర్ "వెక్టర్ ఫెసిలిటీ" గ్రూప్ యొక్క అన్ని వెక్టార్ సూచనలను అనుకరించడానికి మద్దతును జోడించింది మరియు gen15 సిస్టమ్‌లకు మద్దతు ఇవ్వడానికి అదనపు మూలకాలను జోడించింది (vfio-ap కోసం AP క్యూ అంతరాయ సౌకర్యం కోసం జోడించిన మద్దతుతో సహా). vfio-ccw ద్వారా గెస్ట్ సిస్టమ్‌కు కట్టుబడి ECKD DASD నుండి బూటింగ్ చేయడానికి BIOS మద్దతు అమలు చేయబడింది;
  • Sun4m సిస్టమ్స్ కోసం SPARC ఆర్కిటెక్చర్ ఎమ్యులేటర్‌లో, OpenBIOS కోసం “-vga none” ఫ్లాగ్‌ని ఉపయోగించడంలో సమస్యలు పరిష్కరించబడ్డాయి;
  • Tensilica Xtensa ఫ్యామిలీ ప్రాసెసర్ ఎమ్యులేటర్ MPU (మెమరీ ప్రొటెక్షన్ యూనిట్) మరియు ప్రత్యేకమైన యాక్సెస్ కోసం ఎంపికలను కలిగి ఉంటుంది;
  • I/O ఎర్రర్‌ల (ఉదాహరణకు, పాక్షికంగా దెబ్బతిన్న qcow2 ఫైల్‌లను పునరుద్ధరించడానికి ఉపయోగించవచ్చు) ఇమేజ్ మార్పిడి ప్రక్రియ యొక్క క్రాష్‌ను నిలిపివేయడానికి “-salvage” ఎంపిక “qemu-img convert” కమాండ్‌కు జోడించబడింది. ఒక జట్టులో
    ఇన్‌పుట్ ఫైల్ కోసం బ్యాకింగ్ ఫైల్ ఇంకా సృష్టించబడనప్పుడు “qemu-img rebase” పని చేస్తుంది;

  • "సెమీహోస్టింగ్" టెక్నాలజీని ఉపయోగించి నిర్వహించబడిన అవుట్‌పుట్‌ను రీడైరెక్ట్ చేసే సామర్థ్యాన్ని జోడించారు (హోస్ట్ వైపు ఫైల్‌లను సృష్టించడానికి ఎమ్యులేటెడ్ పరికరాన్ని stdout, stderr మరియు stdin ఉపయోగించడానికి అనుమతిస్తుంది) chardev బ్యాకెండ్ ("-semihosting-config enable=on,target=native ,chardev=[ ID]");
  • VMDK బ్లాక్ డ్రైవర్‌లో రీడ్-ఓన్లీ మోడ్‌లో seSparse సబ్‌ఫార్మాట్‌కు మద్దతు జోడించబడింది;
  • GPIO ఎమ్యులేషన్ డ్రైవర్‌లో SiFive GPIO కంట్రోలర్‌కు మద్దతు జోడించబడింది.

మూలం: opennet.ru

ఒక వ్యాఖ్యను జోడించండి