Sethule indlela entsha yokuhlonza isistimu efihliwe kanye nesiphequluli

Iqembu labacwaningi abavela e-Technical University of Graz (Austria), ngaphambilini elaziwa ngokusungula izindlela zokuhlasela MDS, I-NetSpecter ΠΈ Umjikijelwa, yembuliwe Ulwazi olumayelana nendlela entsha yokuhlaziya isiteshi senkampani yangaphandle ekuvumela ukuthi unqume uhlobo olunembile lwesiphequluli, isistimu yokusebenza esetshenziswayo, ukwakheka kwe-CPU kanye nokusetshenziswa kwezengezo ukulwa nokuhlonza okufihliwe.

Ukuze unqume le mingcele, kwanele ukusebenzisa ikhodi ye-JavaScript elungiselelwe abacwaningi esipheqululini. Empeleni, indlela ingasetshenziswa hhayi nje njengomthombo owengeziwe wokukhonjwa okungaqondile komsebenzisi, kodwa futhi nokunquma imingcele yemvelo yesistimu yokusetshenziswa okuhlosiwe kokuxhashazwa, kucatshangelwa i-OS, izakhiwo kanye nesiphequluli. Indlela futhi iyasebenza uma usebenzisa iziphequluli ezisebenzisa izindlela zokuvimba ukuhlonza ezifihliwe, njengeSiphequluli seTor. Imodeli yekhodi yomthombo esebenzisa indlela eshicilelwe ngaphansi kwelayisensi ye-MIT.

Isinqumo senziwa ngesisekelo sokuhlonza amaphethini wesimo sesakhiwo ku-JavaScript ayisici seziphequluli ezihlukene kanye nezici zesikhathi sokwenziwa komsebenzi, kuye ngezici ze-JIT, i-CPU nezindlela zokwabiwa kwenkumbulo. Ukuchaza izakhiwo kwenziwa ngokukhiqiza uhlu lwazo zonke izinto ezifinyeleleka ku-JavaScript. Njengoba kwenzeka, inani lezinto lihlobana ngokuqondile nenjini yesiphequluli kanye nenguqulo yayo.

umsebenzi getProperties(o) {
var umphumela = [];
ngenkathi (o !== null) {
umphumela = umphumela.concat(Reflect.ownKeys(o));
o = Object.getPrototypeOf(o);
}
umphumela wokubuyisela;
}

Isibonelo, kuFirefox imibhalo ithi ukwesekwa kwezakhiwo ezingama-2247, kuyilapho inani langempela lezakhiwo ezichaziwe, okuhlanganisa nezingabhalisiwe, lingu-15709 (ku-Tor Browser - 15639), ku-Chrome 2698 izakhiwo ziyamenyezelwa, kodwa empeleni kunikezwa i-13570 (in. I-Chrome ye-Android - 13119) . Inombolo namanani ezakhiwo ayahluka kusuka enguqulweni yesiphequluli kuye enguqulweni yesiphequluli nakuzo zonke izinhlelo zokusebenza ezihlukene.

Amanani nobukhona bezakhiwo ezithile kungasetshenziswa ukunquma uhlobo lwe-OS. Isibonelo, ku-Kubuntu indawo ye-window.innerWidth isethelwe ku-1000, futhi ku-Windows 10 isethelwe ku-1001. Indawo ye-window.navigator.activeVRDisplays iyatholakala ku-Windows, kodwa ayitholakali ku-Linux. Ku-Android, amakholi amaningi athile anikeziwe, kodwa iwindi.SharedWorker alikho. Ukuhlonza isistimu yokusebenza, kuphinde kuphakanyiswe ukusebenzisa ukuhlaziywa kwemingcele ye-WebGL, isimo sayo esincike kubashayeli. Ngaphezu kwalokho, ukushayela i-WEBGL_debug_renderer_infoextension kukuvumela ukuthi uthole ulwazi mayelana nenjini yokunikezela ye-OpenGL, ehlukile kusistimu ngayinye yokusebenza.

Ukunquma i-CPU, ukuhlolwa komehluko ngesikhathi sokwenziwa kwamabhulokhi ekhodi ahlukahlukene asetshenziswayo, ukucubungula okuncike ekwakhiweni kwesethi yemiyalo, kucatshangelwa ukuziphatha kwe-JIT (kunqunywa ukuthi mangaki amarejista e-CPU azosetshenziswa. futhi kuziphi izimo i-JIT izokhiqiza ikhodi esebenza kahle ngokulungiswa kanye nokusetshenziswa kwemiyalo enwetshiwe, futhi uma kungenjalo ). Ukunquma uhlobo lwesistimu yokwabiwa kwememori kanye nesistimu yokusebenza, umehluko wesikhathi sokwabiwa kwenkumbulo yezakhiwo ezihlukahlukene nazo ziyalinganiswa, ezingasetshenziswa ukwahlulela usayizi wamabhulokhi ememori.

Amapharamitha anqunywe ngesikhathi kusetshenziswa iskripthi aqhathaniswa namanani ereferensi avamile ezindaweni ezihlolwe ngaphambilini. Ngesikhathi sokuhlolwa, indlela ethuthukisiwe yenza kwaba nokwenzeka ukuhlonza ngokunembile izindawo zokuhlola ezihlukene ezingu-40, kuhlonzwe izinguqulo zeziphequluli ezisetshenzisiwe, umkhiqizi we-CPU, isistimu yokusebenza esetshenzisiwe, kanye neqiniso lokuthi ibisebenza ngehadiwe yangempela noma emshinini obonakalayo. .

Ngokwehlukana, kuyaphawulwa ukuthi kungenzeka ukuchaza izengezo zesiphequluli ngisho nezilungiselelo zokwengeza ngazinye, okuhlanganisa izengezo eziklanyelwe ukuvimba izindlela zokuhlonza ezifihliwe noma umsebenzi wemodi yokuphequlula eyimfihlo. Kumongo wendlela ehlongozwayo, izengezo ezinjalo ziba omunye umthombo wedatha wokuhlonza. Ukwengezwa kunqunywa ngokuhlola ukuhlanekezelwa kwemingcele yendawo yokuqala eyethulwe izengezo.

Ezinye izindlela zokuhlonza zihlanganisa ukucabangela idatha engaqondile njenge ukulungiswa kwesikrini, uhlu lwezinhlobo ezisekelwayo ze-MIME, imingcele ethile kumaheda (I-HTTP / 2 ΠΈ I-HTTPS), ukuhlaziya okufakiwe ama-plugins namafonti, ukutholakala kwama-Web API athile, aqondene namakhadi evidiyo izici ukunikezela kusetshenziswa i-WebGL kanye Canvas, ukukhwabanisa nge-CSS, ukuhlaziya izici zokusebenza nazo igundane ΠΈ ikhibhodi.

Source: opennet.ru

Engeza amazwana