Logo lv.androidermagazine.com
Logo lv.androidermagazine.com

Android no a līdz z: kas ir dalvik

Anonim

Kas ir Dalvik? Mēs dzirdam, ka šis vārds tiek daudz izmests internetā, runājot par Android un tā iekšējo darbību. Lai gan nav vienkāršu skaidrojumu, ko mēs varam sniegt tikai dažās rindkopās, mēs varam izskaidrot pamatus un norādīt jūs pareizajā virzienā, ja jums ir jāpabaro ar savu necilo pusi. Vienkāršākā izteiksmē Dalvik ir virtuāla mašīna, kas darbina Java rakstītas programmas un kodu. Standarta Java kompilators pārvērš avota kodu (rakstītu kā teksta failus) Bytecode, pēc tam apkopojot.dex failā, kuru Dalvik VM var nolasīt un izmantot. Būtībā klases faili tiek pārveidoti.dex failos (līdzīgi jar failam, ja tāds būtu, izmantojot parastu Java VM), un pēc tam tos nolasa un izpilda Dalvik virtuālā mašīna. Klases failos izmantotie datu dublikāti.dex izvadē tiek iekļauti tikai vienreiz, tādējādi ietaupot vietu un patērējot mazāk pieskaitāmās izmaksas. Izpildāmos failus var vēlreiz modificēt, instalējot lietojumprogrammu, lai padarītu lietas vēl optimizētākas mobilajām ierīcēm. Tādas lietas kā baitu secība, mainot un sasaistot datu struktūru un funkciju bibliotēkas, padara failus mazākus un labāk darbojas mūsu ierīcēs. Dalvik VM tika uzrakstīts no pirmā laukuma, paturot prātā Android.

Vēl sajaukt? Nejūtieties slikti, geeky programmēšanas sarunām parasti ir šāda ietekme. Padomājiet par to šādā veidā - veidojot savam Java lietojumprogrammu, Java virtuālā mašīna palaiž sastādīto avota koda izvadi. Tāpēc Java darbojas gandrīz visās operētājsistēmās. Dalvik ir mobilajām ierīcēm optimizēta Java virtuālās mašīnas versija, kas veidota ar Apache Harmony projekta kodu, kas ir atvērtā pirmkoda un darbojas labāk nekā standarta Java VM uz mūsu ierobežoto aparatūru, kas izstrādāta tā, lai jūs varētu darbināt vairāk nekā vienu VM piemērs vienlaikus - ti, vairākuzdevumu veikšana. Tā kā Dalvik ir atvērtā pirmkoda, tas tika pārnests arī uz citām operētājsistēmām, piemēram, uz BlackBerry PlayBook. Tas ir diezgan sasodīti sarežģīts, diezgan sasodīti foršs, un Oracle (uzņēmums, kas nopirka Java no Sun) to ienīst.

Android izmanto Dalvik, jo, kamēr standarta Java virtuālās mašīnas licence ir GPL2 (bezmaksas un atvērtā koda), ievietojot to mobilajā ierīcē un izmantojot Java Micro Edition, tā nav. Lielais strīds starp Google un Oracle pamatā ir Dalvik. Google apgalvo, ka tas tika uzrakstīts “tīras telpas” vidē, neizmantojot nevienu no Oracle kodiem, un Oracle tam nepiekrīt. Mēs apgalvojam, ka mums nav ideju, mēs tikai priecājamies, ka tā darbojas tikpat labi kā tā.