Quantum (Mozilla): Perbedaan antara revisi
k Bot: Perubahan kosmetika |
k Perubahan kosmetik tanda baca |
||
(5 revisi perantara oleh 3 pengguna tidak ditampilkan) | |||
Baris 4: | Baris 4: | ||
== Latar Belakang == |
== Latar Belakang == |
||
[[Gecko]] sudahlah matang, mesin peramban web |
[[Gecko]] sudahlah matang, mesin peramban web yang berawal di [[Netscape]] pada tahun 1997. Mesin peramban web ini ditulis dalam [[C++|bahasa pemrograman C++]] .<ref name="Servo_paper">{{cite journal|last1=Bergstrom et al.|first1=Lars|date=May 2016|title=Engineering the Servo Web Browser Engine using Rust|url=https://raw.githubusercontent.com/larsbergstrom/papers/master/icse16-servo-preprint.pdf|journal=Proceedings of the International Conference on Software Engineering}}CS1 maint: Explicit use of et al. ([//en.wiki-indonesia.club/wiki/Category:CS1_maint:_Explicit_use_of_et_al. link]) |
||
</ref> |
</ref> |
||
Pada tahun 2013, Mozilla memulai proyek eksperimental Servo, sebuah mesin yang dirancang dari awal kembali dengan tujuan meningkatkan [[Komputasi paralel|konkurensi dan paralelisme]] sekaligus juga mengurangi kerentanan keamanan memori. Salah satu faktor pentingnya adalah dengan menulis Servo dalam [[Rust (bahasa pemrograman)|bahasa pemrograman Rust]], sebuah bahasa pemrograman yang juga dibuat oleh Mozilla dan dirancang untuk menghasilkan kode [[Kompilator|terkompilasi]] dengan keamanan memori, konkurensi, dan paralelisme yang lebih baik dari kode C++ terkompilasi. |
Pada tahun 2013, Mozilla memulai proyek eksperimental Servo, sebuah mesin yang dirancang dari awal kembali dengan tujuan meningkatkan [[Komputasi paralel|konkurensi dan paralelisme]] sekaligus juga mengurangi kerentanan keamanan memori. Salah satu faktor pentingnya adalah dengan menulis Servo dalam [[Rust (bahasa pemrograman)|bahasa pemrograman Rust]], sebuah bahasa pemrograman yang juga dibuat oleh Mozilla dan dirancang untuk menghasilkan kode [[Kompilator|terkompilasi]] dengan keamanan memori, konkurensi, dan paralelisme yang lebih baik dari kode C++ terkompilasi. |
||
Sampai April 2016, Servo telah membutuhkan setidaknya beberapa tahun pengembangan untuk menjadi sebuah |
Sampai April 2016, Servo telah membutuhkan setidaknya beberapa tahun pengembangan untuk menjadi sebuah mesin peramban web berfitur lengkap.<ref>{{cite web|url=https://github.com/servo/servo/wiki/Remaining-work/0e3b111807c2ed4c11f36d6bd47dda6dfa02d502|title=Servo remaining work|website=GitHub|accessdate=2017-02-17}}</ref> Hingga keputusan untuk memulai proyek Quantum pun diambil untuk membawa porsi stabil Servo ke Firefox. |
||
== Komponen == |
== Komponen == |
||
Proyek Quantum terdiri dari beberapa subproyek. |
Proyek Quantum terdiri dari beberapa subproyek. |
||
; CSS: Sistem style sheet parallel Servo terintegrasi dengan Gecko. Benchmark menunjukkan bahwa kinerja berbanding lurus dengan jumlah core [[Unit Pemroses Sentral|CPU]].<ref>{{Cite web|url=https://changelog.com/podcast/228|title=The Changelog|website=The Changelog|access-date=2017-03-28}}</ref> Komponen ini telah dirilis bersama dengan Firefox 57. |
|||
; CSS<span> </span> |
|||
: |
; Render: Arsitektur rendering milik Servo, WebRender, terintegrasi ke Gecko. WebRender menggantikan model menggambar immediate mode dengan model retained mode yang lebih mudah dipercepat oleh GPU dengan memanfaatkan kesamaan CSS/DOM ke scene graph. Per-render-an pada skenario terburuk dalam pengujian melebihi 60 frame per sekon.<ref>{{Cite web|url=https://air.mozilla.org/bay-area-rust-meetup-february-2016/|title=Bay Area Rust Meetup February 2016|website=Air Mozilla|access-date=2017-03-28}}</ref> |
||
⚫ | ; Compositor: Compositor memiliki prosesnya sendiri, mengisolasi tab peramban web dari kegagalan driver grafis. Karena kegagalan compositor tidak akan mengganggu proses konten peramban web, proses dari compositor dapat dimulai ulang secara transparan tanpa harus kehilangan data pengguna. Ini telah dirilis pada Firefox 53.<ref>{{Cite web|url=https://blog.mozilla.org/blog/2017/04/19/first-big-bytes-project-quantum/|title=Firefox faster and more stable with the first big bytes of Project Quantum, simpler with compact themes and permissions redesign|website=Mozilla Blog|access-date=2017-04-27}}</ref> |
||
; Render<br /><span> </span> |
|||
⚫ | ; DOM: Terinspirasi oleh arsitektur konstelasi Servo<ref>{{Cite web|url=https://www.youtube.com/watch?v=an5abNFba4Q|title=Servo Architecture|website=Youtube|access-date=2017-03-28}}</ref> dan [[Opera (peramban web)|Opera]]'s Presto,<ref>{{Cite web|url=https://billmccloskey.wordpress.com/2016/10/27/mozillas-quantum-project/|title=Mozilla’s Quantum Project|website=Bill McCloskey's Blog|access-date=2017-03-28}}</ref> Quantum DOM menggunakan thread terjadwal kooperatif di dalam [[Document Object Model|DOM]] untuk meningkatkan responsifitas tanpa meningkatkan jumlah proses dan penggunaan memori. |
||
: Arsitektur rendering milik Servo, WebRender, terintegrasi ke Gecko. WebRender menggantikan model menggambar immediate mode dengan model retained mode yang lebih mudah dipercepat oleh GPU dengan memanfaatkan kesamaan CSS/DOM ke scene graph. Per-render-an pada skenario terburuk dalam pengujian melebihi 60 frame per sekon.<ref>{{Cite web|url=https://air.mozilla.org/bay-area-rust-meetup-february-2016/|title=Bay Area Rust Meetup February 2016|website=Air Mozilla|access-date=2017-03-28}}</ref> |
|||
⚫ | ; Flow: Payung untuk peningkatan kinerja yang terlihat pengguna didorong oleh sebuah tim yang bekerja di komponen - komponen Gecko. Saat ini difokuskan pada perbaikan kinerja penggunaan nyata pada [[Aplikasi web|webapps]], terutama [[Google Apps|G Suite]] dan [[Facebook]].<ref>{{Cite web|url=https://wiki.mozilla.org/Quantum/Flow|title=Quantum Flow|website=Mozilla Wiki|access-date=2017-03-28}}</ref> |
||
; Compositor<span> </span> |
|||
⚫ | ; Photon: Sebuah penyegaran [[Antarmuka pengguna|UI]] dari keseluruhan aplikasi, dengan fokus yang kuat pada peningkatan kinerja UI. Diperlakukan sebagai sister-project untuk Quantum Flow.<ref>{{Cite web|url=https://dolske.wordpress.com/2017/05/18/photon-engineering-newsletter-1/|title=Photon Engineering Newsletter #1|last=dolske|date=2017-05-18|website=Dolske's blog|access-date=2017-07-04}}</ref> Ini telah dirilis pada Firefox 57. |
||
⚫ | : Compositor memiliki prosesnya sendiri, mengisolasi tab peramban web dari kegagalan driver grafis. Karena kegagalan compositor tidak akan mengganggu proses konten peramban web, proses dari compositor dapat dimulai ulang secara transparan tanpa harus kehilangan data pengguna. Ini telah dirilis pada Firefox 53.<ref>{{Cite web|url=https://blog.mozilla.org/blog/2017/04/19/first-big-bytes-project-quantum/|title=Firefox faster and more stable with the first big bytes of Project Quantum, simpler with compact themes and permissions redesign|website=Mozilla Blog|access-date=2017-04-27}}</ref> |
||
⚫ | ; Network: Meningkatkan kinerja Necko, Lapisan jaringan dari Gecko, dengan memindahkan lebih banyak aktivitas jaringan dari thread utama, bergantung pada konteks prioritas dari berkas jaringan, dan racing lapisan cache dengan jaringan.<ref>{{Cite web|url=https://wiki.mozilla.org/TPE_Necko/Projects|title=TPE Necko/Projects - MozillaWiki|website=wiki.mozilla.org|language=en|access-date=2017-07-04}}</ref> |
||
; DOM<span> </span> |
|||
⚫ | : Terinspirasi oleh arsitektur konstelasi Servo<ref>{{Cite web|url=https://www.youtube.com/watch?v=an5abNFba4Q|title=Servo Architecture|website=Youtube|access-date=2017-03-28}}</ref> dan [[Opera (peramban web)|Opera]]'s Presto,<ref>{{Cite web|url=https://billmccloskey.wordpress.com/2016/10/27/mozillas-quantum-project/|title=Mozilla’s Quantum Project|website=Bill McCloskey's Blog|access-date=2017-03-28}}</ref> Quantum DOM menggunakan thread terjadwal kooperatif di dalam [[Document Object Model|DOM]] untuk meningkatkan responsifitas tanpa meningkatkan jumlah proses dan penggunaan memori. |
||
; Flow<br /><span> </span> |
|||
⚫ | : Payung untuk peningkatan kinerja yang terlihat pengguna didorong oleh sebuah tim yang bekerja di komponen - komponen Gecko. Saat ini difokuskan pada perbaikan kinerja penggunaan nyata pada [[Aplikasi web|webapps]], terutama [[Google Apps|G Suite]] dan [[Facebook]].<ref>{{Cite web|url=https://wiki.mozilla.org/Quantum/Flow|title=Quantum Flow|website=Mozilla Wiki|access-date=2017-03-28}}</ref> |
||
; Photon<br /><span> </span> |
|||
⚫ | : Sebuah penyegaran [[Antarmuka pengguna|UI]] dari keseluruhan aplikasi, dengan fokus yang kuat pada peningkatan kinerja UI. Diperlakukan sebagai sister-project untuk Quantum Flow.<ref>{{Cite web|url=https://dolske.wordpress.com/2017/05/18/photon-engineering-newsletter-1/|title=Photon Engineering Newsletter #1|last=dolske|date=2017-05-18|website=Dolske's blog|access-date=2017-07-04}}</ref> Ini telah dirilis pada Firefox 57. |
||
; Network <br /><span> </span> |
|||
⚫ | : Meningkatkan kinerja Necko, Lapisan jaringan dari Gecko, dengan memindahkan lebih banyak aktivitas jaringan dari thread utama, bergantung pada konteks prioritas dari berkas jaringan, dan racing lapisan cache dengan jaringan.<ref>{{Cite web|url=https://wiki.mozilla.org/TPE_Necko/Projects|title=TPE Necko/Projects - MozillaWiki|website=wiki.mozilla.org|language=en|access-date=2017-07-04}}</ref> |
||
⚫ | |||
== Referensi == |
|||
⚫ | |||
⚫ | |||
⚫ | |||
[[Kategori:Mozilla]] |
[[Kategori:Mozilla]] |
Revisi terkini sejak 15 Juni 2019 00.02
Quantum adalah sebuah proyek yang dijalankan Mozilla yang meliputi beberapa upaya pengembangan perangkat lunak yang bertujuan untuk "membangun mesin web generasi selanjutnya untuk para pengguna Firefox". Proyek ini mencakup banyak perbaikan untuk mesin peramban web Firefox, Gecko, di mana sebagian besar perbaikan tersebut berasal dari proyek percobaan Servo. Selain itu, Quantum juga mencakup penyempurnaan antarmuka pengguna dan interaksi.[1][2]
Firefox 57, versi yang dirilis pada bulan November 2017, merupakan versi pertama dengan komponen Servo telah diaktifkan. Mozilla memberi julukan Firefox versi ini dan beberapa rilis yang direncanakan di masa yang akan datang sebagai "Firefox Quantum".[3][4]
Latar Belakang
[sunting | sunting sumber]Gecko sudahlah matang, mesin peramban web yang berawal di Netscape pada tahun 1997. Mesin peramban web ini ditulis dalam bahasa pemrograman C++ .[5]
Pada tahun 2013, Mozilla memulai proyek eksperimental Servo, sebuah mesin yang dirancang dari awal kembali dengan tujuan meningkatkan konkurensi dan paralelisme sekaligus juga mengurangi kerentanan keamanan memori. Salah satu faktor pentingnya adalah dengan menulis Servo dalam bahasa pemrograman Rust, sebuah bahasa pemrograman yang juga dibuat oleh Mozilla dan dirancang untuk menghasilkan kode terkompilasi dengan keamanan memori, konkurensi, dan paralelisme yang lebih baik dari kode C++ terkompilasi.
Sampai April 2016, Servo telah membutuhkan setidaknya beberapa tahun pengembangan untuk menjadi sebuah mesin peramban web berfitur lengkap.[6] Hingga keputusan untuk memulai proyek Quantum pun diambil untuk membawa porsi stabil Servo ke Firefox.
Komponen
[sunting | sunting sumber]Proyek Quantum terdiri dari beberapa subproyek.
- CSS
- Sistem style sheet parallel Servo terintegrasi dengan Gecko. Benchmark menunjukkan bahwa kinerja berbanding lurus dengan jumlah core CPU.[7] Komponen ini telah dirilis bersama dengan Firefox 57.
- Render
- Arsitektur rendering milik Servo, WebRender, terintegrasi ke Gecko. WebRender menggantikan model menggambar immediate mode dengan model retained mode yang lebih mudah dipercepat oleh GPU dengan memanfaatkan kesamaan CSS/DOM ke scene graph. Per-render-an pada skenario terburuk dalam pengujian melebihi 60 frame per sekon.[8]
- Compositor
- Compositor memiliki prosesnya sendiri, mengisolasi tab peramban web dari kegagalan driver grafis. Karena kegagalan compositor tidak akan mengganggu proses konten peramban web, proses dari compositor dapat dimulai ulang secara transparan tanpa harus kehilangan data pengguna. Ini telah dirilis pada Firefox 53.[9]
- DOM
- Terinspirasi oleh arsitektur konstelasi Servo[10] dan Opera's Presto,[11] Quantum DOM menggunakan thread terjadwal kooperatif di dalam DOM untuk meningkatkan responsifitas tanpa meningkatkan jumlah proses dan penggunaan memori.
- Flow
- Payung untuk peningkatan kinerja yang terlihat pengguna didorong oleh sebuah tim yang bekerja di komponen - komponen Gecko. Saat ini difokuskan pada perbaikan kinerja penggunaan nyata pada webapps, terutama G Suite dan Facebook.[12]
- Photon
- Sebuah penyegaran UI dari keseluruhan aplikasi, dengan fokus yang kuat pada peningkatan kinerja UI. Diperlakukan sebagai sister-project untuk Quantum Flow.[13] Ini telah dirilis pada Firefox 57.
- Network
- Meningkatkan kinerja Necko, Lapisan jaringan dari Gecko, dengan memindahkan lebih banyak aktivitas jaringan dari thread utama, bergantung pada konteks prioritas dari berkas jaringan, dan racing lapisan cache dengan jaringan.[14]
Referensi
[sunting | sunting sumber]- ^ "Quantum". Mozilla Wiki. Diakses tanggal 2017-04-20.
- ^ Cimpanu, Catalin. "Mozilla Announces Quantum, a New Browser Engine for Firefox". softpedia. Diakses tanggal 2017-02-17.
- ^ https://www.mozilla.org/en-US/firefox/57.0/releasenotes/
- ^ https://blog.mozilla.org/blog/2017/11/14/introducing-firefox-quantum/
- ^ Bergstrom, Lars; et al. (May 2016). "Engineering the Servo Web Browser Engine using Rust" (PDF). Proceedings of the International Conference on Software Engineering. CS1 maint: Explicit use of et al. (link)
- ^ "Servo remaining work". GitHub. Diakses tanggal 2017-02-17.
- ^ "The Changelog". The Changelog. Diakses tanggal 2017-03-28.
- ^ "Bay Area Rust Meetup February 2016". Air Mozilla. Diakses tanggal 2017-03-28.
- ^ "Firefox faster and more stable with the first big bytes of Project Quantum, simpler with compact themes and permissions redesign". Mozilla Blog. Diakses tanggal 2017-04-27.
- ^ "Servo Architecture". Youtube. Diakses tanggal 2017-03-28.
- ^ "Mozilla's Quantum Project". Bill McCloskey's Blog. Diakses tanggal 2017-03-28.
- ^ "Quantum Flow". Mozilla Wiki. Diakses tanggal 2017-03-28.
- ^ dolske (2017-05-18). "Photon Engineering Newsletter #1". Dolske's blog. Diakses tanggal 2017-07-04.
- ^ "TPE Necko/Projects - MozillaWiki". wiki.mozilla.org (dalam bahasa Inggris). Diakses tanggal 2017-07-04.