Share to: share facebook share twitter share wa share telegram print page

Porting

Dalam ilmu komputer, porting atau pemortaan adalah proses menyadur peranti lunak sehingga tata olah tereksekusikan (executable program) dapat dibuat untuk lingkungan komputer yang berbeda dengan lingkungan asli rancangannya. Istilah ini juga digunakan untuk mengacu kepada perubahan terhadap peranti lunak/peranti keras agar dapat digunakan di lingkungan berbeda.

Peranti lunak bersifat mudah alih (portable) karena biaya memindahkannya ke pelantar baru secara signifikan lebih murah daripada biaya penulisannya dari awal. Semakin rendah biaya pemortaan peranti lunak relatif terhadap biaya implementasinya, dikatakan akan semakin mudah alih.

Etimologi

Istilah "port" berasal dari bahasa Latin portāre, artinya "membawa".[1] Ketika kode tidak kompatibel dengan sistem operasi atau arsitektur tertentu, kode harus "dibawa" ke sistem baru.

Istilah ini umumnya tidak diterapkan pada proses menyadurkan perangkat lunak agar berjalan dengan lebih sedikit memori pada CPU dan sistem operasi yang sama, juga tidak diterapkan pada penulisan ulang kode sumber dalam bahasa yang berbeda (yaitu konversi atau terjemahan bahasa).

Pengembang perangkat lunak sering mengklaim bahwa perangkat lunak yang mereka tulis itu mudah alih, Artinya, diperlukan sedikit upaya untuk menyesuaikannya dengan lingkungan baru. Jumlah upaya yang benar-benar diperlukan bergantung pada beberapa faktor, termasuk sejauh mana lingkungan asli (pelantar sumber) berbeda dari lingkungan baru (pelantar sasaran), pengalaman penulis asli dalam mengetahui konstruksi bahasa pemrograman dan panggilan pustaka pihak ketiga mana saja yang tidak mungkin mudah alih, dan jumlah upaya yang diinvestasikan oleh penulis asli hanya dengan menggunakan konstruksi mudah alih (konstruksi khusus pelantar sering kali memberikan solusi yang lebih murah).

Sejarah

Jumlah CPU dan sistem operasi yang digunakan pada desktop saat ini jauh lebih kecil daripada sebelumnya. Dominasi arsitektur x86 berarti bahwa sebagian besar perangkat lunak desktop tidak pernah diportakan ke CPU yang berbeda. Di pasar yang sama, pilihan sistem operasi telah dikurangi menjadi tiga: Microsoft Windows, macOS, dan Linux. Namun, dalam sistem tertanam dan pasar seluler, portabilitas tetap menjadi masalah yang signifikan, dengan ARM menjadi alternatif yang banyak digunakan.

Standar mancanegara, seperti yang ditetapkan oleh ISO, sangat memfasilitasi pemortaan dengan menentukan perincian lingkungan komputasi dengan cara yang membantu mengurangi perbedaan antara berbagai pelantar yang sesuai standar. Menulis perangkat lunak yang tetap dalam batas-batas yang ditentukan oleh standar ini merupakan upaya praktis meskipun tidak sepele. Pemortaan tata olah semacam itu antara dua pelantar yang sesuai standar (seperti POSIX.1) hanya masalah memuat kode sumber dan mengompilasinya kembali di pelantar baru. Namun, praktisi sering menemukan bahwa berbagai koreksi kecil diperlukan, karena perbedaan pelantar yang tidak kentara. Sebagian besar standar mengalami "area abu-abu" atau tidak pasti di mana perbedaan penafsiran standar menyebabkan variasi kecil dari pelantar ke pelantar.

Ada juga jumlah alat yang terus meningkat untuk memfasilitasi pemortaan, seperti GNU Compiler Collection, yang menyediakan bahasa pemrograman yang konsisten di berbagai pelantar, dan Autotools, yang mengotomatiskan pendeteksian variasi kecil di lingkungan dan menyesuaikan perangkat lunak sesuai sebelum kompilasi.

Kompilator untuk beberapa bahasa pemrograman tingkat tinggi (misalnya, Eiffel, Esterel) mendapatkan portabilitas dengan mengeluarkan kode sumber dalam bahasa perantara tingkat tinggi lainnya (seperti C) di mana kompilator untuk banyak pelantar umumnya tersedia.

Dua aktivitas yang terkait dengan (tetapi berbeda dari) pemortaan adalah emulasi dan kompilasi silang.

Kompilator portaan

Alih-alih menerjemahkan langsung ke kode mesin, kompilator modern menerjemahkan ke kode perantara mesin independen untuk meningkatkan portabilitas kompilator dan meminimalkan upaya desain. Bahasa perantara mendefinisikan mesin virtual yang dapat menjalankan semua program yang ditulis dalam bahasa perantara (sebuah mesin yang ditentukan oleh bahasanya dan sebaliknya).[2] Instruksi kode perantara diterjemahkan ke dalam urutan kode mesin yang setara oleh sebuah code generator (penghasil kode) untuk membuat kode yang dapat dieksekusi. Dimungkinkan juga untuk melewati pembuatan kode mesin dengan benar-benar menerapkan interpreter atau JIT untuk mesin virtual.[3]

Penafsir tidak terlalu rumit dan oleh karena itu lebih mudah untuk diporta daripada penghasil kode, karena tidak dapat melakukan pengoptimalan kode karena tampilan kode programnya terbatas (hanya melihat satu instruksi pada satu waktu, dan Anda memerlukan urutan untuk melakukan optimasi). Beberapa interpreter (penafsir) sangat mudah untuk diporta, karena mereka hanya membuat asumsi minimal tentang set instruksi dari perangkat keras yang mendasarinya. Hasilnya, mesin virtual bahkan lebih sederhana daripada CPU target.[4]

Menulis sumber kompilator seluruhnya dalam bahasa pemrograman yang seharusnya diterjemahkan oleh kompilator, membuat pendekatan berikut, lebih dikenal sebagai compiler bootstrapping, layak di mesin sasaran:

  1. Pemortaan penafair. Ini perlu dikodekan dalam kode rakitan, menggunakan assembler yang sudah ada di sasaran.
  2. Sesuaikan sumber penghasil kode (code generator) ke mesin baru.
  3. Eksekusi sumber yang disadurkan menggunakan penerjemah dengan sumber penghasil kode sebagai masukan. Ini akan menghasilkan kode mesin untuk penghasil kode.

Bagian yang sulit dari pengkodean rutinitas pengoptimalan dilakukan dengan menggunakan bahasa tingkat tinggi alih-alih bahasa rakitan sasaran.

Menurut para perancang bahasa BCPL, kode yang ditafsirkan (dalam kasus BCPL) lebih ringkas daripada kode mesin; biasanya dengan faktor dua banding satu. Namun kode yang ditafsirkan berjalan sekitar sepuluh kali lebih lambat daripada kode yang dikompilasi pada mesin yang sama.[5]

Para perancang bahasa pemrograman Java mencoba memanfaatkan kekompakan kode yang ditafsirkan, karena program Java mungkin perlu dikirim melalui Internet sebelum eksekusi dapat dimulai pada Mesin Virtual Java sasaran.

Pemortaan permainan video

Pemortaan atau porting juga merupakan istilah yang digunakan saat permainan video dirancang untuk berjalan di satu pelantar, baik itu dingdong, konsol permainan video, atau komputer pribadi, dikonversi untuk berjalan di pelantar yang berbeda. Dari awal permainan video hingga tahun 1990-an, "ports", pada saat itu sering dikenal sebagai "conversions", sering kali bukan porta yang benar, melainkan versi permainan yang dikerjakan ulang. Namun, banyak permainan video abad ke-21 yang dikembangkan menggunakan perangkat lunak (sering kali dalam format C++) yang dapat mengeluarkan kode untuk satu atau lebih konsol serta untuk PC tanpa perlu porta yang sebenarnya (alih-alih mengandalkan porta umum dari pustaka komponen individu).

Pemortaan permainan dingdong ke konsol rumah dengan perangkat keras yang lebih rendah itu sulit. Versi pemortaan dari Pac-man untuk Atari 2600 menghilangkan banyak fitur visual dari permainan asli untuk mengimbangi kurangnya ruang ROM dan perangkat keras bermasalah ketika beberapa hantu muncul di layar menciptakan efek yang berkedip-kedip. Kinerja yang buruk dari pemortaan Pac-Man dikutip oleh beberapa ahli sebagai penyebab crash atau jatuhnya permainan video tahun 1983.[6]

Banyak porta awal mengalami masalah kualitas permainan yang signifikan karena di komputer sangat berbeda.[7] Richard Garriott menyatakan pada tahun 1984 di Origins Game Fair bahwa Origin Systems mengembangkan permainan komputer untuk seri Apple II terlebih dahulu kemudian memortakannya ke Commodore 64 dan Atari 8-bit, karena sprite mesin yang terakhir dan fitur canggih lainnya membuat pemortaan dari mereka ke Apple dikatakan "jauh lebih sulit, bahkan mungkin tidak mungkin".[8] Ulasan mengeluhkan porting yang menderita dari "Konversi Apple",[9] mempertahankan "suara jelek dan grafis hitam-putih-hijau-ungu" Apple;[10][11] setelah pernyataan Garriott, ketika Dan Bunten bertanya "orang-orang Atari dan Commodore di antara penonton, apakah Anda senang dengan penulisan ulang Apple? "teriak penonton "Tidak! "Garriott menjawab," [jika tidak] versi Apple tidak akan pernah selesai. Dari sudut pandang penerbit, itu bukanlah uang yang bijaksana".[8]

Catatan

  1. ^ "port, v.2"Perlu langganan berbayar. Oxford English Dictionary (OED Online). Oxford University Press. Diakses tanggal December 21, 2017. Origin: Of multiple origins. Partly a borrowing from French. Partly a borrowing from Latin. Etymons: French porter; Latin portāre. ... 1. trans. To carry, bear, or convey; to bring. 
  2. ^ Tanenbaum 1984, hlm. 3. §1.1 Languages,Levels, and Virtual Machines describes the terms and their relations.
  3. ^ Tanenbaum 1984, hlm. 2. Ch. 1 Introduction explains translation and interpretation.
  4. ^ Richards & Whitby-Strevens 1984, hlm. 133. §7.4 The bootstrapping process and INTCODE explains the role of the INTCODE interpreter.
  5. ^ Richards & Whitby-Strevens 1984, hlm. 136. §7.4.3 Example gives an example translation of a BCPL program into INTCODE for the interpreter.
  6. ^ Nicoll, Benjamin (2015). "Bridging the Gap: The Neo Geo, the Media Imaginary, and the Domestication of Arcade Games". Games and Culture. doi:10.1177/1555412015590048. 
  7. ^ Kesalahan pengutipan: Tag <ref> tidak sah; tidak ditemukan teks untuk ref bernama bunten198412
  8. ^ a b "The CGW Computer Game Conference". Computer Gaming World (panel discussion). October 1984. hlm. 30. Diakses tanggal 31 October 2013. 
  9. ^ Dunnington, Benn; Brown, Mark R.; Malcolm, Tom (January–February 1987). "64/128 Gallery". Info. hlm. 14–21. 
  10. ^ Stanton, Jeffrey; Wells, Robert P.; Rochowansky, Sandra; Mellid, Michael, ed. (1984). The Addison-Wesley Book of Atari Software. Addison-Wesley. hlm. 12,21,44,126. ISBN 0-201-16454-X. 
  11. ^ Bernstein, Harvey (May 1985). "Beyond Castle Wolfenstein". Antic. hlm. 83. Diakses tanggal 8 January 2015. 

Referensi

Read other articles:

Questa voce sull'argomento fiumi dell'Ontario è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Questa voce sugli argomenti fiumi degli Stati Uniti d'America e geografia del Michigan è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Saint ClairNavigazione sul fiumeStato Canada Lunghezza64 km Portata media5 200 m³/s Bacino idrografico576 000 km² NasceLago Huron SfociaLago Saint Clair Mappa del fiume Mod…

LincolnJenisDivisi mewah dari Ford Motor CompanyIndustriMobilDidirikan1917KantorpusatDearborn, Michigan, ASWilayah operasiNorth AmericaTokohkunciHenry M. Leland, pendiri Lincoln Motor CompanyProdukMobil mewahIndukFord Motor CompanySitus webwww.lincoln.com Lincoln, secara resmi Lincoln Motor Company, merupakan sebuah perusahaan mobil Amerika Serikat, didirikan pada tahun 1917. Perusahaan ini menghasilkan berbagai macam kendaraan sport maupun mewah. Perusahaan ini merupakan anak perusahaan Ford Mo…

Content made available to the general public This article is about the definition of the terms publish and publication in copyright law. For more general discussion, see Publishing. This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challe…

Mohammad Reza Shah PahlaviShah IranBerkuasa26 September 1941 – 11 Februari 1979Penobatan26 Oktober 1967PendahuluReza Shah PahlaviPenerusJabatan dihapuskanPerdana Menteri Lihat Mohammad-Ali ForoughiAli SoheiliAhmad QavamMohammad Sa'edMorteza-Qoli BayatEbrahim HakimiMohsen SadrMohammad-Reza HekmatAbdolhossein HazhirAli RazmaraHossein Ala'Mohammad MosaddeghFazlollah ZahediManouchehr EghbalJafar Sharif-EmamiAli AminiAsadollah AlamHassan-Ali MansurAmir-Abbas HoveidaJamshid AmouzegarGholam-Reza Azha…

Artikel ini sebatang kara, artinya tidak ada artikel lain yang memiliki pranala balik ke halaman ini.Bantulah menambah pranala ke artikel ini dari artikel yang berhubungan atau coba peralatan pencari pranala.Tag ini diberikan pada Mei 2016. TriStar MoviesDiluncurkan6 Mei 2013JaringanCrystal Asia Media (M) Sdn BhdPemilikTriStar Movies Inc./Time ownerSloganDrama Inspirasi Masa Kini.NegaraMalaysiaKantor pusatKuala LumpurSaluran seindukHBO, Playboy TV, FOX Movies Premium Asia & ONE HDSitus webtr…

Artikel ini bukan mengenai Utopia. Utopia Ilustrasi edisi pertama Utopia tahun 1516.PengarangThomas MoreJudul asliLibellus vere aureus, nec minus salutaris quam festivus, de optimo rei publicae statu deque nova insula UtopiaPenerjemahRalph Robinson Gilbert BurnetIlustratorAmbrosius HolbeinNegaraBelanda HabsburgBahasaLatinGenreFilsafat politik, satirePenerbitMoreTanggal terbit1516Tgl. terbit (bhs. Inggris)1551Jenis mediaCetakanHalaman359OCLC863744174Desimal Dewe…

Wakil Bupati Gunung MasPetahanaIr. Efrensia L.P. Umbing, M.Si.sejak 28 Mei 2019Masa jabatan5 tahunDibentuk2003Pejabat pertamaDrs. Hambit Bintih, M.M.Situs webgunungmaskab.go.id Berikut ini adalah daftar Wakil Bupati Gunung Mas dari masa ke masa. No Wakil Bupati Mulai Jabatan Akhir Jabatan Prd. Ket. Bupati 1 Drs.Hambit BintihM.M. 2003 2008 1   Drs.Julius Djudae AnomM.Si. 2 Drs.Arton S. Dohong 31 Desember 2008 31 Desember 2013 2   Drs.Hambit BintihM.M. Jabatan kosong 1 Januari 2014 …

Questa voce sull'argomento società calcistiche nordirlandesi è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Limavady United Football ClubCalcio Segni distintivi Uniformi di gara Casa Trasferta Colori sociali Dati societari Città Limavady Nazione  Irlanda del Nord Confederazione UEFA Federazione IFA Campionato IFA Premiership Fondazione 1884 Allenatore Mark Clyde Stadio The Showgrounds(1800 posti) Palmarès Si invita a seguire il modello di voce Il…

1977 aviation accident Southern Airways Flight 242The overhead view of the debris field of Southern Airways Flight 242AccidentDateApril 4, 1977 (1977-04-04)SummaryDual engine failure in severe weather, pilot errorSiteNew Hope, Paulding County, Georgia, United States 33°57′45″N 84°47′13″W / 33.96250°N 84.78694°W / 33.96250; -84.78694Total fatalities72[a]AircraftAircraft typeMcDonnell Douglas DC-9-31OperatorSouthern AirwaysIATA flight…

You Made My DawnAlbum mini karya SeventeenDirilis21 Januari 2019 (2019-01-21)GenreK-popDurasi18:28LabelPledisProduserPoptimeKronologi Seventeen You Make My Day(2018) You Made My Dawn(2019) An Ode(2019) Singel dalam album You Made My Dawn Getting CloserDirilis: 20 Desember 2018 HomeDirilis: 21 Januari 2019 You Made My Dawn adalah album mini keenam (ketujuh secara keseluruhan) oleh grup vokal pria asal Korea Selatan Seventeen. Album ini dirilis pada tanggal 21 Januari 2019, melalui Pledis…

Province of Italy Province in Liguria, ItalyProvince of La SpeziaProvinceThe provincial seat building Coat of armsMap highlighting the location of the province of La Spezia in ItalyCountry ItalyRegionLiguriaCapital(s)La SpeziaComuni32Government • PresidentPierluigi PeracchiniArea • Total881 km2 (340 sq mi)Population (30 November 2021) • Total215,175 • Density249/km2 (640/sq mi)GDP[1] • Total€6.514…

УсадьбаБольшие Горки 55°30′17″ с. ш. 37°45′52″ в. д.HGЯO Страна  Россия Местоположение Горки Ленинские Статус  Объект культурного наследия народов РФ федерального значения. Рег. № 501420777940006 (ЕГРОКН). Объект № 5010232000 (БД Викигида)  Медиафайлы на Викискладе Об ус…

Former Premier League referee Howard Webb English football referees officiate matches in English football. The referees officiate matches that range from local football to Premier League matches. There are currently eleven different levels of referees that correspond to the ability, age and activity of the official. For a referee to move from one level to the next, both theoretical and physical assessments are taken. Training Anyone over the age of 14 who is reasonably fit and doesn't have poor …

Genus of crustaceans Acartia Acartia clausi Scientific classification Domain: Eukaryota Kingdom: Animalia Phylum: Arthropoda Class: Copepoda Order: Calanoida Family: Acartiidae Genus: AcartiaDana, 1846 [1] Synonyms [2] Dias Lilljeborg, 1853 Acartia is a genus of marine calanoid copepods. They are epipelagic, estuarine, zooplanktonic found throughout the oceans of the world, primarily in temperate regions. Classification This genus contains the majority of species in the…

土库曼斯坦总统土库曼斯坦国徽土库曼斯坦总统旗現任谢尔达尔·别尔德穆哈梅多夫自2022年3月19日官邸阿什哈巴德总统府(Oguzkhan Presidential Palace)機關所在地阿什哈巴德任命者直接选举任期7年,可连选连任首任萨帕尔穆拉特·尼亚佐夫设立1991年10月27日 土库曼斯坦土库曼斯坦政府与政治 国家政府 土库曼斯坦宪法 国旗 国徽 国歌 立法機關(英语:National Council of Turkmenistan) 土…

此條目可能包含不适用或被曲解的引用资料,部分内容的准确性无法被证實。 (2023年1月5日)请协助校核其中的错误以改善这篇条目。详情请参见条目的讨论页。 各国相关 主題列表 索引 国内生产总值 石油储量 国防预算 武装部队(军事) 官方语言 人口統計 人口密度 生育率 出生率 死亡率 自杀率 谋杀率 失业率 储蓄率 识字率 出口额 进口额 煤产量 发电量 监禁率 死刑 国债 外…

Alun-alun utama Aguateca dengan prasasti batu yang besar Aguateca adalah sebuah situs Maya yang terletak di daerah Petexbatun di Guatemala. Permukiman pertama di Aguateca berasal dari zaman Praklasik Akhir (300 SM - 350 M). Pusat kotanya diduduki dari tahun 200 SM hingga 800 M, ketika kota ini diserang dan dijarah. Kota ini ditinggalkan secara mendadak oleh penduduknya, sehingga situs ini sangat bermanfaat bagi para arkeolog untuk menyelidiki kehidupan elit Maya dan teknik kerajinan rumah tangga…

يفتقر محتوى هذه المقالة إلى الاستشهاد بمصادر. فضلاً، ساهم في تطوير هذه المقالة من خلال إضافة مصادر موثوق بها. أي معلومات غير موثقة يمكن التشكيك بها وإزالتها. (يوليو 2020) كأس الدوري البرتغالي 2015–16 تفاصيل الموسم كأس الدوري البرتغالي  النسخة 9  البلد البرتغال  التاريخ بدا…

Частина серії проФілософіяLeft to right: Plato, Kant, Nietzsche, Buddha, Confucius, AverroesПлатонКантНіцшеБуддаКонфуційАверроес Філософи Епістемологи Естетики Етики Логіки Метафізики Соціально-політичні філософи Традиції Аналітична Арістотелівська Африканська Близькосхідна іранська Буддійсь…

中华人民共和国 中华人民共和国政府与政治系列条目 执政党 中国共产党 党章、党旗党徽 主要负责人、领导核心 领导集体、民主集中制 意识形态、组织 以习近平同志为核心的党中央 两个维护、两个确立 全国代表大会 (二十大) 中央委员会 (二十届) 总书记:习近平 中央政治局 常务委员会 中央书记处 中央直属机构 中央纪律检查委员会 书记:李希 中央军事委员会 主席…

Kembali kehalaman sebelumnya