Hacker News

Palaidiet Pebble OS pārlūkprogrammā, izmantojot WASM

Palaidiet Pebble OS pārlūkprogrammā, izmantojot WASM Šī izpēte iedziļinās oļos, pārbaudot tā nozīmi un iespējamo ietekmi. Iekļautie pamatjēdzieni Šis saturs pēta: Pamatprincipi un teorijas Praktiska nozīme...

10 min read Via ericmigi.github.io

Mewayz Team

Editorial Team

Hacker News

Varat palaist Pebble OS tieši savā pārlūkprogrammā, izmantojot WebAssembly (WASM), kas ļauj izstrādātājiem un entuziastiem līdzināties leģendārajai viedpulksteņu platformai bez fiziskas aparatūras. Izmantojot šo pieeju, sākotnējā Pebble programmaparatūra tiek apkopota WASM binārā failā, kas tiek automātiski izpildīts mūsdienu tīmekļa pārlūkprogrammās, saglabājot Pebble ekosistēmu vēl ilgi pēc aparatūras darbības pārtraukšanas.

Kas ir Pebble OS un kāpēc tās darbībai pārlūkprogrammā ir nozīme?

Pebble OS bija operētājsistēma, kas darbina Pebble viedpulksteņus — ierīces, kas tika izslavētas ar e-papīra displejiem, vairāku dienu akumulatora darbības laiku un atvērtu izstrādātāju ekosistēmu. Kad Fitbit 2016. gadā iegādājās Pebble, miljoniem lietotāju baidījās, ka viņu pulksteņi novecos. Sabiedrība atbildēja, izmantojot atvērto avotu un saglabājot programmaparatūru, galu galā izveidojot rīkus, kas ļauj OS darboties pilnīgi jaunā vidē. Pebble OS palaišana pārlūkprogrammā ir svarīga, jo tā demokratizē piekļuvi: jebkurš izstrādātājs, kuram ir klēpjdators, tagad var testēt, atkļūdot un izveidot Pebble lietojumprogrammas, nemeklējot novecojošu aparatūru lietotu preču tirgos. Tas arī norāda uz plašāku tendenci — mantotās operētājsistēmas iegūst otro dzīvi, izmantojot pārlūkprogrammu balstītu emulāciju, ko nodrošina WASM.

Kā WebAssembly padara iespējamu uz pārlūkprogrammu balstītu Pebble OS emulāciju?

WebAssembly ir zema līmeņa binārs instrukciju formāts, kas paredzēts darbam tīmekļa pārlūkprogrammās ar gandrīz sākotnējo ātrumu. Tas darbojas kā kompilācijas mērķis tādām valodām kā C un C++, kas ir tieši tas, kurā tika rakstīta Pebble programmaparatūra. Emulācijas konveijera darbības pamatā ir oriģinālais Pebble OS avota kods, kompilēšana, izmantojot Emscripten (no C/C++ uz WASM rīkķēdi) un iegūto bināro failu ielāde pārlūkprogrammas izpildlaikā. Pārlūkprogrammas JavaScript dzinējs izpilda WASM moduli, savukārt plāns JavaScript slānis apstrādā I/O — imitējot Pebble displeja audeklu, pogu ievades, akselerometra datus un Bluetooth komunikāciju. Šī arhitektūra ir ārkārtīgi efektīva: mūsdienu pārlūkprogrammas var izpildīt WASM ar aptuveni 80% no sākotnējā ātruma, kas nozīmē, ka Pebble lietotāja interfeiss reaģē ar autentisku ātru. Smilškastes WASM vide nodrošina arī drošību, pilnībā izolējot emulēto OS no resursdatora operētājsistēmas.

Kādi galvenie komponenti ir nepieciešami, lai palaistu Pebble OS, izmantojot WASM?

Pārlūkprogrammas Pebble OS vides iestatīšana ietver vairākus savstarpēji savienotus komponentus, kas darbojas saskaņoti. Katra slāņa izpratne palīdz izstrādātājiem novērst problēmas, paplašināt un veicināt emulācijas projektu:

  • Emscripten rīkķēde: kompilatora tilts, kas pārvērš Pebble C kodu bāzi WASM binārā, kā arī nepieciešamo JavaScript līmes kodu, kas apstrādā atmiņas pārvaldību un sistēmas izsaukumus.
  • Ganvas renderētājs: JavaScript/WebGL slānis, kas kartē Pebble 144 × 168 pikseļu e-papīra displeja izvadi ar HTML5 Canvas elementu, precīzi atveidojot melnbalto vai krāsaino displeju atkarībā no emulētā Pebble modeļa.
  • Ievades simulācijas slānis: notikumu uztvērēji, kas pārvērš tastatūras taustiņu nospiešanas vai ekrāna pogu klikšķus četru pogu ievades signālos (Atpakaļ, Augšup, Atlasīt, Uz leju), no kuriem ir atkarīgas Pebble lietotnes.
  • PebbleKit JS Bridge: simulēta saskarne, kas ļauj Pebble pulksteņa ekrāniem un lietotnēm, kas izmanto JavaScript komponentus, sazināties ar emulēto OS, ļaujot pareizi darboties laikapstākļu lietotnēm, sporta izsekotājiem un citām ar datiem balstītām lietojumprogrammām.
  • App Bundle Loader: mehānisms .pbw (lietotne Pebble Watch) komplektu ielādei tieši emulatorā, parsējot arhīva formātu un ievadot gan kompilēto ARM baitkodu (atkārtoti emulējot citā slānī), gan līdzekļu resursus.

Galvenais ieskats: Pebble-in-browser projekts ir duālās emulācijas izaicinājums — WASM apstrādā Pebble OS resursdatora vidi, savukārt sekundārais ARM instrukciju tulks apstrādā individuālo lietotnes baitu kodu, kas kompilēts Pebble procesoram Cortex-M. Šī daudzslāņu pieeja, lai arī tā ir sarežģīta, nodrošina pārsteidzoši precīzu saderību ar sākotnējo lietotņu ekosistēmu.

💡 DID YOU KNOW?

Mewayz replaces 8+ business tools in one platform

CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.

Start Free →

Kādi ir praktiskie pielietojumi uzņēmumiem un izstrādātājiem?

Ne tikai nostalģija, bet arī pārlūkprogrammas Pebble OS emulācija ir taustāma vērtība vairākām auditorijām. Neatkarīgiem izstrādātājiem tas novērš aparatūras iegādes izmaksas un nodrošina konsekventu, versijas kontrolētu testēšanas vidi, ko nevar piedāvāt fiziskie pulksteņi. Kvalitātes nodrošināšanas komandas var palaist automātiskus ekrānuzņēmumu testus vairākās Pebble programmaparatūras versijās vienlaikus, izmantojot CI/CD konveijerā, izmantojot pārlūkprogrammas vidi bez galvas. Uzņēmumiem, kas pēta valkājamas saskarnes un mazjaudas lietotāja interfeisa dizainu, Pebble mijiedarbības modeļa izpēte — minimālas animācijas, pārskatāma informācijas hierarhija un agresīva jaudas optimizācija — piedāvā meistarklasi, ko pārlūkprogrammas emulācija padara brīvi pieejamu. IoT produktu komandas jo īpaši gūst labumu, analizējot, kā Pebble OS apstrādāja ierobežotos resursus: mācības par efektīvu renderēšanu un uz notikumu balstītu arhitektūru tiek tieši pārvērstas modernos iegultos projektos. Efektīva šo izstrādes darbplūsmu, komandu sadarbības rīku un projektu konveijera pārvaldība ir vieta, kur visaptveroša biznesa operētājsistēma kļūst nenovērtējama.

Kā Pebble WASM projekts iekļaujas mantotās OS saglabāšanas nākotnē?

Pebble OS pārlūkprogrammā ir daļa no strauji augošas kustības, lai saglabātu programmatūras mantojumu, izmantojot WebAssembly. Šādi projekti parāda, ka WASM loma sniedzas daudz tālāk par produktivitātes rīku darbināšanu mākonī — tas kļūst par universālu substrātu programmatūras arheoloģijai. Tā kā aparatūra noveco ātrāk nekā jebkad agrāk, pārlūkprogrammas saglabāšana nodrošina, ka operētājsistēmas, lietojumprogrammas un saskarnes, kas veidoja lietotāju vēlmes, joprojām ir pieejamas pētniekiem, vēsturniekiem un izstrādātājiem. Standartu iestādes arvien vairāk atzīst emulāciju kā digitālas saglabāšanas veidu, un WASM formāta stabilitāte un plašais pārlūkprogrammas atbalsts padara to par ideālu arhīva formātu. Īpaši Pebble kopienai tas nozīmē, ka tūkstošiem pulksteņu un lietotņu, kas tika izveidotas no 2012. gada līdz 2016. gadam, joprojām ir izmantojamas un paplašināmas, un jaunie izstrādātāji var sniegt ieguldījumu bez aparatūras ieguldījumiem.

Bieži uzdotie jautājumi

Vai Pebble OS WASM emulators ir pietiekami precīzs reālai lietotņu izstrādei?

Jā, lielākajā daļā lietošanas gadījumu. WASM emulators precīzi atveido Pebble displeja izvadi, pogu ievades, taimerus, pastāvīgo krātuvi un lielāko daļu sistēmas API. Edge gadījumiem, kas saistīti ar Bluetooth Low Energy saziņu un noteiktiem aparatūras sensoriem, ir nepieciešami papildu simulācijas slāņi, taču galvenā izstrādes un testēšanas darbplūsma — rakstīšana, kompilēšana, pārbaude — pārlūkprogrammas vidē tiek pilnībā atbalstīta.

Vai man kaut kas ir jāinstalē, lai pārlūkprogrammā palaistu OS Pebble?

Lai izmantotu iepriekš izveidoto pārlūkprogrammas emulatoru, nav nepieciešama instalēšana. Mūsdienu pārlūkprogrammas, tostarp Chrome, Firefox, Safari un Edge, atbalsta WebAssembly sākotnēji. Ja vēlaties izveidot emulatoru no avota vai kompilēt pielāgotu programmaparatūru, jums būs nepieciešams Emscripten SDK un standarta C būvēšanas rīku ķēde, kas instalēta jūsu izstrādes mašīnā, taču galalietotāji var palaist emulatoru bez iestatīšanas.

Vai es varu ielādēt esošos Pebble pulksteņa ekrāna vai lietotņu failus pārlūkprogrammas emulatorā?

Jā. Emulators atbalsta standarta .pbw pakotnes failu ielādi tieši, izmantojot failu atlasītāju vai vilkšanas un nomešanas saskarni. Programmām Pebble Time, Pebble Time Round un oriģinālajiem Pebble modeļiem apkopotās lietotnes un pulksteņa ciparnīcas ir saderīgas, un emulators automātiski pārslēdz renderēšanas režīmus, lai tie atbilstu mērķa aparatūras profilam.


Neatkarīgi no tā, vai esat izstrādātājs, kas saglabā Pebble mantojumu, produktu komanda, kas pēta valkājamu lietotāja pieredzi, vai vienkārši tehnologs, kuru aizrauj WebAssembly spējas, tādi projekti kā Pebble OS pārlūkprogrammā atklāj mūsdienu tīmekļa iespēju neparasto klāstu. Attīstības projektu biznesa puses pārvaldīšana — no komandas koordinācijas līdz klientu norēķiniem un darbplūsmas automatizācijai — ir pelnījusi tikpat spējīgus rīkus. Mewayz nodrošina jūsu komandai 207 moduļu biznesa operētājsistēmu, kurai uzticas vairāk nekā 138 000 lietotāju ar plāniem, sākot no tikai USD 19 mēnesī. Sāciet savu bezmaksas izmēģinājuma versiju vietnē app.mewayz.com un vadiet visu savu biznesu tikpat efektīvi kā WASM darbojas Pebble OS.

.

Try Mewayz Free

All-in-one platform for CRM, invoicing, projects, HR & more. No credit card required.

Start managing your business smarter today

Join 30,000+ businesses. Free forever plan · No credit card required.

Ready to put this into practice?

Join 30,000+ businesses using Mewayz. Free forever plan — no credit card required.

Start Free Trial →

Ready to take action?

Start your free Mewayz trial today

All-in-one business platform. No credit card required.

Start Free →

14-day free trial · No credit card · Cancel anytime