News (PH)

Gumagawa ang mga software engineer ng recompilation method para patakbuhin ang native PlayStation 3 sa PC

PS3
Foto: PS3 - Habanero Pixel/shutterstock.com

Ang software engineering na naglalayong mapanatili ang digital media ay nakakita ng isang makabuluhang teknikal na pagsulong sa pagbuo ng isang bagong diskarte sa conversion ng code. Nagawa ng Especialistas sa programming ang static na recompilation technique para ibahin ang orihinal na mga file ng laro na binuo para sa Sony console sa mga direktang executable na format para sa mga modernong computer.

Ang pamamaraan ay nag-aalis ng pangangailangan para sa tradisyunal na intermediary software, paglilipat ng processing load nang direkta sa x86 architecture ng kasalukuyang mga processor. Ang conversion ay nagsasalin ng mga orihinal na tagubilin ng system nang maaga, na bumubuo ng isang katutubong file na maaaring basahin at isagawa ng operating system ng computer nang walang karagdagang mga real-time na hakbang sa pag-decode.

Ang paggamit ng teknolohiyang ito ay nalulutas ang isa sa mga pinakamalaking teknikal na bottleneck sa larangan ng reverse engineering ng hardware ng entertainment. Ang proseso ay nagbibigay-daan sa mga pamagat na inilabas higit sa isang dekada na ang nakalipas na tumakbo nang maayos sa mga kontemporaryong makina, na nangangailangan ng mas mababang mga detalye ng hardware kaysa sa mga nakasanayang pamamaraan ng simulation ng system.

Orihinal na arkitektura ng system Cell Broadband Engine

Ang orihinal na hardware ng console na inilabas noong 2000s ay gumamit ng napaka-customize na processor, na kilala sa market ng teknolohiya bilang Cell Broadband Engine. Ang Esta na arkitektura ay may kumplikadong disenyong walang simetriko, na naglalaman ng pangunahing processing core at maramihang mga auxiliary synergistic na unit na gumana nang magkasabay upang mag-render ng mga graphics at kalkulahin ang pisika ng mga virtual na kapaligiran. Dahil sa pagiging kumplikado ng disenyong ito, ang platform ay kilalang-kilala na mahirap para sa pagbuo ng software sa oras ng komersyal na paglulunsad nito, na nangangailangan ng napakaspesipikong mga tool sa programming.

Dahil sa kakaibang istruktura ng pagpoproseso na ito, ang pagtatangka na gayahin ang pagpapatakbo ng console sa mga karaniwang computer ay palaging nangangailangan ng napakalaking kapangyarihan sa pag-compute. Ang mga simulation program na kailangan upang isalin ang mga tagubilin mula sa Cell processor sa wika ng mga x86 processor sa real time, na nagdulot ng pagbaba ng performance, graphical glitches at nangangailangan ng napakamahal na mga processor upang mapanatili ang isang katanggap-tanggap na frame rate sa panahon ng pagpapatupad ng mga application, na nililimitahan ang access sa isang pinaghihigpitang bahagi ng mga user na may high-end na kagamitan.

Praktikal na operasyon ng static na recompilation

Ang static na recompilation technique ay gumagana sa isang panimula na naiibang paraan kaysa sa real-time na mga pamamaraan ng simulation. Sa halip na isalin ang source code habang tumatakbo ang application, sinusuri at kino-convert ng bagong paraan ang lahat ng code ng laro nang sabay-sabay bago ito buksan ng user.

Ang proseso ng pre-translation na ito ay bumubuo ng executable file na native sa operating system ng computer. Ang resulta ay isang program na gumagana nang eksakto tulad ng software na orihinal na binuo para sa target na platform, na inaalis ang intermediate processing layer na tradisyonal na gumagamit ng mga mapagkukunan ng makina.

Ang mga developer na responsable para sa tool ay lumikha ng mga algorithm na may kakayahang tukuyin ang mga tawag sa system na partikular sa orihinal na hardware at palitan ang mga ito ng mga modernong katumbas. Ang conversion ay mula sa mga pangunahing tagubilin sa pagpoproseso ng lohika hanggang sa kumplikadong pag-render ng graphics at mga utos sa pamamahala ng memorya, gamit ang mga kamakailang set ng pagtuturo gaya ng AVX-512 upang mapabilis ang mga kumplikadong kalkulasyon sa matematika.

Ang kahusayan ng pamamaraan ay nagbibigay-daan sa mga computer na may lower-end na mga processor ng input at video card na patakbuhin ang mga na-convert na file. Ang hadlang sa pagpasok para sa pag-access sa makasaysayang software na ito ay lubhang nabawasan, na nagde-demokratiko ng access sa katalogo ng platform at na-optimize ang paggamit ng RAM memory na magagamit sa system.

Mga nadagdag sa performance at graphic fluidity

Ang pag-aalis sa real-time na simulation layer ay nagreresulta sa masusukat na mga nadagdag sa performance sa panahon ng pagpapatupad ng software. Ipinakita ng mga technician ng Testes na ang mga na-convert na laro ay maaaring makamit ang mga rate ng pag-refresh na lampas sa isang daang frame bawat segundo sa mga intermediate na configuration na computer.

Ang katatagan ng frame rate ay isa pang teknikal na salik na pinahusay ng static na recompilation. Sem ang pangangailangang mag-compile ng mga shader at magsalin ng mga code nang sabay-sabay sa pag-render ng larawan, panandaliang pag-crash at biglaang pagbaba ng performance ay halos inaalis sa karanasan ng user.

Ang pagsasamantala sa maraming core ng mga modernong processor ay nangyayari nang mas mahusay gamit ang native code. Ang pamamahagi ng workload sa mga x86 processing core ay pumipigil sa sobrang init at labis na paggamit ng mga mapagkukunan ng hardware na nagpapakita ng tradisyonal na reverse engineering na pamamaraan.

Suportahan ang mga modernong resolution at malawak na monitor

Ang mga executable na file na nabuo sa pamamagitan ng static na recompilation ay nagbibigay-daan sa pag-iniksyon ng mga graphical na pagbabago nang direkta sa rendering engine ng laro. Ang Isso ay nagbibigay-daan sa mga pamagat na tumakbo nang native sa 4K na resolution, na nag-aalok ng visual na kalinawan na lampas sa mga limitasyon ng orihinal na 720p o 1080p na hardware.

Ang pag-aangkop sa mga ultrawide na monitor ay nagiging isang pinasimpleng proseso kasama ang na-convert na code. Maaaring iakma ang mga proporsyon ng screen sa antas ng isinalin na source code, pag-iwas sa mga pagbaluktot sa interface ng gumagamit at field of view ng virtual camera, pag-adapt ng lumang software sa mga kasalukuyang pamantayan ng display nang native.

Nabawasan ang latency ng command

Ang oras ng pagtugon sa pagitan ng pagpindot sa isang pindutan sa controller at ang kaukulang aksyon sa screen ay lubhang nababawasan sa katutubong pagpapatupad. Ang kawalan ng sabay-sabay na mga proseso ng pagsasalin ay nagsisiguro na ang mga papasok na command ay direktang pinoproseso ng operating system ng computer, na nagbibigay ng control precision na maihahambing sa mga kontemporaryong software market release at inaalis ang katangian ng pagkaantala ng mga emulated platform.

Copyright at pagpapatunay ng file

Ang pamamahagi at paggamit ng mga tool sa recompilation ay lumalabas laban sa mahigpit na intelektwal na ari-arian at mga isyu sa copyright ng software. Pinapanatili ng Para ang legalidad ng proseso, inayos ng mga developer ang tool sa paraang nangangailangan ito ng mga orihinal na file na direktang kinuha mula sa pisikal na media na legal na nakuha ng user, na iginagalang ang mga regulasyon sa interoperability ng system.

Ang tool ay gumaganap lamang bilang tagasalin ng code at hindi naglalaman ng anumang naka-copyright na materyal sa istraktura nito. Ang end user ang tanging responsable para sa pagbibigay ng naka-encrypt na data ng laro, tinitiyak na ang proseso ay gumagana bilang isang pagbabago para sa personal na paggamit ng isang dating binili na produkto, na naglalayo sa teknolohiya mula sa mga kasanayan ng digital piracy at ilegal na pamamahagi ng protektadong nilalaman.

Mga kinakailangan sa hardware at accessibility

Ang paglipat mula sa emulated processing sa native executable na format ay lubhang nagbabago sa talahanayan ng mga kinakailangan ng hardware para sa mga user ng computer. Ang Máquinas na nilagyan ng mga four-core processor at entry-level na video card ay nagagawang patakbuhin ang mga pamagat nang may katatagan, isang bagay na hindi maiisip sa mga nakaraang pamamaraan ng computer simulation.

Ang pagbawas sa computational demand na ito ay nagpapalawak ng kapaki-pakinabang na buhay ng mga lumang computer at binabawasan ang pagkonsumo ng kuryente kapag nagpapatakbo ng software. Ang direktang pag-optimize sa isinalin na source code ay tumitiyak na ang RAM at memorya ng video ay tumpak na inilalaan, na pumipigil sa mga pagtagas ng data at labis na karga ng operating system sa mahabang panahon ng patuloy na paggamit.

Digital na pangangalaga ng entertainment media

Ang pagsulong ng static recompilation techniques ay kumakatawan sa isang teknikal na milestone para sa pandaigdigang pagsisikap na mapanatili ang kasaysayan ng software at interactive na media. Habang natural na bumababa ang mga pisikal na bahagi ng orihinal na mga console sa paglipas ng mga dekada, tinitiyak ng kakayahang i-convert ang kanilang mga software catalog upang buksan, ang mga standardized na arkitektura ng computing na ang mga gawang ito ay mananatiling naa-access ng mga mananaliksik, historian, at pangkalahatang publiko. Ang pag-asa sa pagmamay-ari at hindi na ginagamit na hardware ay palaging pangunahing hadlang sa pangmatagalang digital conservation, at ang paglikha ng mga katutubong executable ay nilulutas ang ugat ng problemang ito sa teknolohiya. Ang matagumpay na paggamit ng diskarteng ito sa kumplikadong Cell na arkitektura ay nagpapahiwatig na ang nakaraan at kasunod na mga entertainment system ay maaari ding sumailalim sa mga katulad na proseso ng reverse engineering. Ang Instituições ng digital archiving at mga museo ng teknolohiya ay nagpapansin sa mga open source na development na ito bilang mahahalagang tool upang maiwasan ang paglaho ng libu-libong digital production dahil sa hindi pagkakatugma ng hardware, na tinitiyak ang patuloy na pag-access sa digital cultural heritage para sa mga darating na dekada sa isang ligtas, legal at technologically viable na paraan para sa mga susunod na henerasyon ng mga software researcher.