Apa yang Membuat Memori Flash eMMC Berkesan dalam Peranti Mudah Alih, tetapi Bukan PC?
Menggunakan memori flash untuk menjalankan sistem desktop, seperti Windows, dinasihatkan untuk beberapa waktu. Tetapi apa yang membuatkannya pilihan dan pilihan yang sesuai untuk peranti mudah alih? Siaran Q & A SuperUser hari ini mempunyai jawapan kepada soalan pembaca yang ingin tahu.
Sesi Soalan & Jawapan hari ini datang kepada kami dengan ihsan SuperUser-bahagian pembahagian Stack Exchange, kumpulan yang diketuai oleh komuniti laman web Q & A.
Soalan
Pembaca SuperUser RockPaperLizard ingin tahu apa yang membuat memori flash eMMC berdaya maju dalam peranti mudah alih, tetapi bukan PC:
Sejak pemacu kilat USB dicipta, orang ramai tertanya-tanya jika mereka boleh menjalankan sistem operasi mereka pada mereka. Jawapannya selalu "tidak" kerana bilangan penulis yang dikehendaki oleh sistem operasi akan dengan cepat memakainya.
Oleh kerana SSD telah menjadi lebih popular, teknologi pemakaian haus telah bertambah baik untuk membolehkan sistem operasi berjalan pada mereka. Pelbagai tablet, netbook, dan komputer ramping yang lain menggunakan memori flash bukannya cakera keras atau SSD, dan sistem operasi disimpan di atasnya.
Bagaimanakah ini tiba-tiba menjadi praktikal? Adakah mereka biasanya melaksanakan teknologi meratakan haus, contohnya?
Apa yang membuat memori flash eMMC berdaya maju dalam peranti mudah alih, tetapi bukan PC?
Jawapan
Penyumbang SuperUser Speeddymon dan Journeyman Geek mempunyai jawapan untuk kami. Pertama, Speeddymon:
Semua peranti memori flash, dari tablet ke telefon bimbit, jam tangan pintar, SSD, kad SD dalam kamera, dan pemacu ibu jari USB menggunakan teknologi NVRAM. Perbezaannya adalah dalam seni bina NVRAM dan bagaimana sistem operasi melancarkan sistem fail pada apa sahaja media penyimpanan yang ada.
Untuk tablet Android dan telefon mudah alih, teknologi NVRAM adalah berdasarkan eMMC. Data yang saya dapati mengenai teknologi ini menunjukkan antara 3k hingga 10k siklus menulis. Malangnya, tiada apa yang saya dapati setakat ini adalah muktamad, kerana Wikipedia kosong pada kitaran menulis teknologi ini. Semua tempat lain yang saya lihat berlaku untuk menjadi pelbagai forum, jadi tidak apa yang saya sebut sebagai sumber yang boleh dipercayai.
Sebagai perbandingan, kitaran menulis pada teknologi NVRAM lain seperti SSD, yang menggunakan teknologi NAND atau NOR, adalah antara 10k dan 30k.
Sekarang, mengenai pilihan sistem operasi bagaimana untuk me-mount sistem fail. Saya tidak boleh bercakap tentang bagaimana Apple melakukannya, tetapi untuk Android, cip itu dibahagikan seperti cakera keras. Anda mempunyai partition sistem operasi, partition data, dan beberapa partition proprietary lain bergantung kepada pengeluar peranti.
Partition root sebenarnya hidup di dalam bootloader, yang digabungkan sebagai file terkompresi (jffs2, cramfs, dll.) Bersama-sama dengan kernel, sehingga ketika boot stage 1 device selesai (layar logo pengilang biasanya), maka kernel Butang dan partition root secara serentak dipasang sebagai cakera RAM.
Apabila sistem pengendalian menaikkannya, ia akan melancarkan sistem fail partisyen utama (/ sistem, iaitu jffs2 pada peranti sebelum Android 4.0, ext2 / 3/4 pada peranti sejak Android 4.0, dan xfs pada peranti terkini) sebagai read-only sahaja bahawa tiada data boleh ditulis kepadanya. Ini sememangnya dapat dikerjakan oleh apa yang dipanggil "rooting" peranti anda, yang memberikan anda akses sebagai pengguna super dan membolehkan anda mengembalikan partisi sebagai membaca / menulis. Data "pengguna" anda dituliskan kepada partition yang berbeza pada cip (/ data, yang mengikuti konvensyen yang sama seperti di atas berdasarkan versi Android).
Dengan lebih banyak lagi telefon bimbit menampal slot kad SD, anda mungkin berfikir bahawa anda akan memukul cap kitaran menulis lebih cepat kerana semua data anda kini disimpan ke storan eMMC dan bukannya kad SD. Mujurlah, kebanyakan sistem fail mengesan yang gagal menulis ke kawasan penyimpanan yang diberikan. Sekiranya tulisan gagal, maka data disimpan secara senyap ke kawasan penyimpanan baru dan kawasan yang buruk (dikenali sebagai blok buruk) dikunci oleh pemandu sistem fail supaya data tidak lagi ditulis di sana pada masa akan datang. Jika bacaan gagal, maka data ditandakan sebagai rasuah dan sama ada pengguna diberitahu untuk menjalankan pemeriksaan sistem fail (atau menyemak cakera), atau peranti secara automatik memeriksa sistem fail semasa boot berikutnya.
Sebagai hakikatnya, Google mempunyai paten untuk mengesan dan mengendalikan blok buruk secara automatik: Menguruskan blok buruk dalam memori flash untuk kad flash data elektronik
Untuk mendapatkan lebih banyak perkara, soalan anda tentang bagaimana ini tiba-tiba menjadi praktikal bukanlah soalan yang tepat untuk bertanya. Ia tidak pernah praktikal di tempat pertama. Ia dinasihatkan supaya tidak memasang sistem pengendalian (Windows) pada SSD (mungkin) kerana jumlah menulisnya kepada cakera.
Sebagai contoh, pendaftaran menerima beratus-ratus membaca dan menulis sesaat, yang boleh dilihat dengan Alat Regmon Microsoft-SysInternals.
Memasang Windows dinasihatkan pada SSD generasi pertama kerana dengan kekurangan meratakan memakai, data yang ditulis ke registri setiap detik (kemungkinan) akhirnya terlewat kepada penerima awal dan mengakibatkan sistem tidak dapat dikompresikan kerana korupsi registri.
Dengan tablet, telefon bimbit, dan banyak lagi peranti terbenam yang lain, tidak ada registri (peranti Windows Embedded yang pengecualian, tentu saja) dan oleh itu, tidak ada bimbang tentang data yang sentiasa ditulis untuk bahagian media yang sama.
Untuk peranti Windows Terbenam, seperti banyak kios yang terdapat di tempat awam (seperti Walmart, Kroger, dan sebagainya) di mana anda mungkin melihat BSOD rawak dari semasa ke semasa, tidak banyak konfigurasi yang dapat dilakukan kerana mereka adalah pra-direka dengan konfigurasi yang bertujuan untuk tidak pernah berubah. Satu-satunya perubahan masa berlaku adalah sebelum cip ditulis dalam kebanyakan kes. Apa-apa yang perlu disimpan, seperti pembayaran anda ke kedai runcit, dilakukan melalui rangkaian ke pangkalan data kedai pada pelayan.
Diikuti dengan jawapan dari Journeyman Geek:
Jawapannya selalu "tidak" kerana bilangan penulis yang dikehendaki oleh sistem operasi akan dengan cepat memakainya.
Mereka akhirnya menjadi kos efektif untuk kegunaan arus perdana. Itu "pakai" adalah kebimbangan hanya sedikit yang anda anggap. Terdapat sistem yang melumpuhkan memori keadaan pepejal untuk jangka masa yang agak lama. Ramai orang yang membina kereta puting keluar dari kad CF (yang elektriknya serasi dengan PATA dan tidak sepatutnya dipasang berbanding cakera keras PATA), dan komputer perindustrian mempunyai storan berasaskan kilat yang kecil dan kasar.
Yang mengatakan, tidak banyak pilihan untuk orang biasa. Anda boleh membeli kad CF yang pricy dan penyesuai untuk komputer riba, atau cari cakera perindustrian yang sangat pricy pada unit modul untuk desktop. Mereka tidak begitu besar berbanding dengan cakera keras kontemporari (IDE DOM moden yang lebih tinggi di 8GB atau 16GB yang saya fikir). Saya yakin anda boleh mendapatkan pemacu sistem keadaan pepejal yang disediakan sebelum SSD standard menjadi biasa.
Tidak semestinya apa-apa penambahbaikan sejagat / ajaib dalam meratakan haus sejauh yang saya tahu. Terdapat peningkatan yang bertambah baik ketika kami telah beralih dari SLC pratonton ke MLC, TLC, dan juga QLC bersama-sama dengan saiz proses yang lebih kecil (semuanya kos yang lebih rendah dengan risiko yang lebih tinggi memakai). Flash telah mendapat lebih murah.
Terdapat juga beberapa alternatif yang tidak memakai isu. Sebagai contoh, menjalankan keseluruhan sistem dari ROM (yang boleh dikatakan penyimpanan keadaan pepejal) dan RAM yang disokong bateri, yang mana banyak awal SSD dan peranti mudah alih seperti Palm Pilot digunakan. Tiada satu pun yang berlaku pada hari ini. Cakera keras digegarkan berbanding dengan mengatakan, bateri RAM yang disokong (terlalu mahal), peranti keadaan pepejal awal (agak pricy), atau petani dengan bendera (tidak pernah ditangkap kerana kepadatan data yang mengerikan). Walaupun ingatan kilat moden adalah keturunan eeproms yang cepat memadam dan eeprom telah digunakan dalam alat elektronik untuk menyimpan perkara-perkara seperti firmware untuk peringkat umur.
Pemacu keras semata-mata berada di persimpangan yang bagus dengan jumlah yang tinggi (yang penting), kos rendah, dan penyimpanan yang agak mencukupi.
Sebabnya anda mencari eMMC dalam komputer moden yang rendah adalah komponen yang agak murah, cukup besar (untuk sistem operasi desktop) pada kos itu, dan berkongsi kesamaan dengan komponen telefon bimbit, sehingga ia dihasilkan secara massal dengan antara muka standard. Mereka juga memberikan ketumpatan penyimpanan yang besar untuk kelantangan mereka. Memandangkan kebanyakan mesin ini mempunyai pemacu 32GB atau 64GB yang kurang baik, setanding dengan cakera keras dari bahagian yang lebih baik dalam dekad yang lalu, mereka adalah pilihan yang masuk akal dalam peranan ini.
Kami akhirnya mencapai titik di mana anda boleh menyimpan jumlah memori yang munasabah dengan harga yang berpatutan dan dengan kelajuan yang munasabah pada eMMC dan flash, itulah sebabnya orang pergi untuk mereka.
Mempunyai sesuatu untuk menambah penjelasannya? Bunyi dalam komen. Ingin membaca lebih banyak jawapan dari pengguna Stack Exchange yang berteknologi tinggi? Lihat thread perbincangan penuh di sini.
Kredit Imej: Martin Voltri (Flickr)