Ketika belajar lebih banyak tentang komputer dan bagaimana mereka bekerja, Anda kadang-kadang akan berlari melintasi sesuatu yang tampaknya tidak masuk akal. Dengan itu dalam pikiran, apakah mengosongkan ruang disk benar-benar mempercepat komputer? Posting SuperUser Q & A saat ini memiliki jawaban untuk pertanyaan pembaca yang bingung.
Sesi Tanya & Jawab hari ini hadir untuk memberi kami hak milik SuperUser-sub divisi Stack Exchange, pengelompokan situs web Q & A berbasis komunitas.
Screenshot courtesy of nchenga (Flickr).
Pembaca SuperUser Remi.b ingin tahu mengapa mengosongkan ruang disk tampaknya mempercepat komputer:
Saya telah menonton banyak video dan sekarang mengerti bagaimana komputer bekerja sedikit lebih baik. Saya mengerti apa itu RAM, tentang memori volatile dan non-volatile, dan proses swapping. Saya juga mengerti mengapa peningkatan RAM mempercepat komputer.
Apa yang saya tidak mengerti adalah mengapa membersihkan ruang disk tampaknya mempercepat komputer. Apakah itu benar-benar mempercepat komputer? Jika demikian, mengapa demikian?
Apakah ada hubungannya dengan mencari ruang memori untuk menyelamatkan barang-barang atau dengan memindahkan barang-barang di sekitar untuk membuat ruang kontinyu yang cukup panjang untuk menyelamatkan sesuatu? Berapa banyak ruang kosong yang harus saya tinggalkan gratis di hard disk?
Mengapa mengosongkan ruang disk tampaknya mempercepat komputer?
Kontributor SuperUser, Jason C, memiliki jawabannya untuk kami:
"Mengapa mengosongkan ruang disk mempercepat komputer?"
Itu tidak, setidaknya tidak sendiri. Ini adalah mitos yang sangat umum. Alasannya adalah mitos umum adalah karena mengisi hard drive Anda sering terjadi pada saat yang sama dengan hal-hal lain yang secara tradisional dapat memperlambat komputer Anda (SEBUAH). Performa SSD cenderung menurun saat diisi, tetapi ini adalah masalah yang relatif baru, unik untuk SSD, dan tidak terlalu terlihat bagi pengguna biasa. Umumnya, ruang disk kosong yang rendah hanyalah ikan haring merah.
Misalnya, hal-hal seperti:
1. Fragmentasi file. Fragmentasi file adalah masalah (B), tetapi kurangnya ruang kosong, sementara jelas salah satu dari banyak faktor yang berkontribusi, bukan satu-satunya penyebabnya. Beberapa poin penting di sini:
- Kemungkinan file yang sedang terpecah adalah tidak terkait dengan jumlah ruang kosong yang tersisa di drive. Mereka terkait dengan ukuran blok ruang kosong bersebelahan terbesar pada drive (yaitu "lubang" ruang kosong), yang jumlah ruang kosong terjadi untuk menempatkan batas atas. Mereka juga terkait dengan bagaimana sistem file menangani alokasi file (lebih banyak di bawah). Mempertimbangkan: Drive yang 95 persen penuh dengan semua ruang kosong dalam satu blok yang berdekatan memiliki peluang nol persen untuk memecah-mecah file baru (C) (dan kemungkinan fragmenting file yang ditambahkan tidak bergantung pada ruang kosong). Drive yang lima persen penuh tetapi dengan data yang tersebar secara merata di atas drive memiliki peluang fragmentasi yang sangat tinggi.
- Perlu diingat bahwa fragmentasi file hanya mempengaruhi kinerja ketika file yang terfragmentasi sedang diakses. Mempertimbangkan: Anda memiliki drive yang bagus, defragmented yang masih memiliki banyak "lubang" gratis di dalamnya. Skenario umum. Semuanya berjalan lancar. Namun, akhirnya, Anda sampai pada titik di mana tidak ada lagi blok besar ruang kosong yang tersisa. Anda mengunduh film yang sangat besar, file tersebut akhirnya terpecah-pecah. Ini tidak akan memperlambat komputer Anda. Semua file aplikasi Anda dan yang sebelumnya baik-baik saja tidak akan tiba-tiba menjadi terfragmentasi. Ini dapat membuat film mengambil lebih lama untuk memuat (meskipun kecepatan bit film tipikal sangat rendah dibandingkan dengan tingkat baca hard drive yang kemungkinan besar tidak akan terasa mencolok), dan ini dapat mempengaruhi kinerja I / O-bound ketika film sedang dimuat, tetapi selain itu, tidak ada perubahan.
- Sementara fragmentasi file tentu menjadi masalah, sering kali efeknya dikurangi oleh OS dan buffering dan caching tingkat perangkat keras. Menulis tertunda, membaca-depan, strategi seperti prefetcher di Windows, dll., Semua membantu mengurangi efek fragmentasi. Anda biasanya tidak sebenarnya mengalami dampak signifikan hingga fragmentasi menjadi parah (saya bahkan berani mengatakan bahwa selama file swap Anda tidak terpecah, Anda mungkin tidak akan pernah memperhatikan).
2. Pengindeksan pencarian adalah contoh lain. Katakan bahwa Anda telah mengaktifkan pengindeksan otomatis dan OS yang tidak menangani ini dengan baik. Ketika Anda menyimpan lebih banyak dan lebih banyak konten yang dapat diindeks ke komputer Anda (dokumen dan semacamnya), pengindeksan mungkin memakan waktu lebih lama dan lebih lama dan mungkin mulai memiliki efek pada kecepatan yang dirasakan dari komputer Anda saat sedang berjalan, baik dalam I / O dan penggunaan CPU . Ini tidak terkait dengan ruang kosong, ini terkait dengan jumlah konten yang dapat diindeks yang Anda miliki. Namun, kehabisan ruang kosong bergandengan tangan dengan menyimpan lebih banyak konten, maka koneksi palsu akan ditarik.
3. Perangkat lunak anti-virus (mirip dengan contoh pengindeksan pencarian). Katakanlah Anda memiliki perangkat lunak anti-virus yang diatur untuk melakukan pemindaian latar belakang drive Anda. Karena Anda memiliki lebih banyak konten yang dapat dipindai, pencarian membutuhkan lebih banyak sumber daya I / O dan CPU, mungkin mengganggu pekerjaan Anda. Sekali lagi, ini terkait dengan jumlah konten yang dapat dipindai yang Anda miliki. Lebih banyak konten sering sama dengan lebih sedikit ruang kosong, tetapi kurangnya ruang kosong bukanlah penyebabnya.
4. Perangkat lunak yang diinstal. Katakanlah Anda memiliki banyak perangkat lunak yang terinstal ketika komputer Anda boot, sehingga memperlambat waktu start-up. Pelambatan ini terjadi karena banyak perangkat lunak yang dimuat. Namun, perangkat lunak yang diinstal membutuhkan ruang hard drive. Oleh karena itu, ruang kosong hard drive berkurang pada saat yang sama ketika hal ini terjadi, dan sekali lagi koneksi palsu dapat dengan mudah dibuat.
5. Banyak contoh lain di sepanjang garis-garis ini yang, ketika diambil bersama-sama, muncul untuk mengasosiasikan secara dekat kurangnya ruang kosong dengan kinerja yang lebih rendah.
Di atas mengilustrasikan alasan lain bahwa ini adalah mitos umum: Meskipun kurangnya ruang kosong bukanlah penyebab langsung dari perlambatan, mencopot pemasangan berbagai aplikasi, menghapus konten yang diindeks atau dipindai, dll. Kadang-kadang (tetapi tidak selalu; di luar lingkup jawaban ini) meningkatkan kinerja lagi karena alasan yang tidak terkait dengan jumlah ruang kosong yang tersisa. Tapi ini juga secara alami membebaskan ruang hard drive. Oleh karena itu, sekali lagi, koneksi yang jelas (tetapi salah) antara "lebih banyak ruang kosong" dan "komputer yang lebih cepat" dapat dibuat.
Mempertimbangkan: Jika Anda memiliki mesin yang berjalan lambat karena banyak perangkat lunak yang terinstal, dll., Mengkloning hard drive Anda (tepatnya) ke hard drive yang lebih besar, kemudian rentangkan partisi Anda untuk mendapatkan lebih banyak ruang kosong, mesin tidak akan mempercepat kecepatan secara ajaib. Beban perangkat lunak yang sama, file yang sama masih terfragmentasi dengan cara yang sama, pencari indeks yang sama masih berjalan, tidak ada yang berubah meskipun memiliki lebih banyak ruang kosong.
"Apakah ada hubungannya dengan mencari ruang memori untuk menyelamatkan sesuatu?"
Tidak. Ada dua hal penting yang perlu diperhatikan di sini:
1. Hard drive Anda tidak mencari-cari tempat untuk meletakkan segala sesuatunya. Hard drive Anda bodoh. Ini bukan apa-apa. Ini adalah blok besar penyimpanan yang ditujukan yang secara membabi buta menempatkan hal-hal di mana OS Anda memberitahukannya dan membaca apa pun yang diminta darinya. Drive modern memiliki mekanisme caching dan buffering canggih yang dirancang untuk memprediksi apa yang akan diminta OS berdasarkan pengalaman yang telah kami peroleh dari waktu ke waktu (beberapa drive bahkan sadar akan sistem file yang ada pada mereka), tetapi pada dasarnya, pikirkan tentang drive hanya sebagai bata penyimpanan bodoh besar dengan fitur kinerja bonus sesekali.
2. Sistem operasi Anda juga tidak mencari tempat untuk menyimpan berbagai hal. Tidak ada pencarian. Banyak upaya telah dilakukan untuk memecahkan masalah ini karena sangat penting untuk mengarsipkan kinerja sistem. Cara data sebenarnya diatur pada drive Anda ditentukan oleh sistem file Anda. Misalnya, FAT32 (DOS lama dan PC Windows), NTFS (edisi Windows yang lebih baru), HFS + (Mac), ext4 (beberapa sistem Linux), dan banyak lainnya. Bahkan konsep "file" dan "direktori" hanyalah produk sistem file yang khas - hard-drive tidak tahu apa-apa tentang binatang misterius yang disebut file. Detail berada di luar lingkup jawaban ini. Tetapi pada dasarnya, semua sistem file umum memiliki cara untuk melacak di mana ruang yang tersedia ada di drive sehingga pencarian ruang kosong, dalam keadaan normal (yaitu sistem file dalam keadaan sehat), tidak perlu. Contoh:
- NTFS memiliki tabel file master, yang termasuk file-file khusus $ Bitmap, dll, dan banyak data meta yang menjelaskan drive. Pada dasarnya ini melacak tempat blok bebas berikutnya sehingga file baru dapat ditulis langsung ke blok bebas tanpa harus memindai drive setiap kali.
- Contoh lain: Ext4 memiliki apa yang disebut pengalokasi bitmap, peningkatan atas ext2 dan ext3 yang pada dasarnya membantu secara langsung menentukan di mana blok bebas bukan memindai daftar blok gratis. Ext4 juga mendukung alokasi tertunda, yaitu, buffering data dalam RAM oleh OS sebelum menuliskannya ke drive untuk membuat keputusan yang lebih baik tentang di mana harus meletakkannya untuk mengurangi fragmentasi.
- Banyak contoh lainnya.
"Atau dengan memindahkan benda-benda di sekitar untuk membuat ruang kontinyu yang cukup panjang untuk menyelamatkan sesuatu?"
Tidak. Ini tidak terjadi, paling tidak dengan sistem file yang saya sadari. File akhirnya terfragmentasi.
Proses "memindahkan barang-barang di sekitar untuk membuat ruang bersebelahan yang cukup panjang untuk menyimpan sesuatu" disebut defragmenting. Ini tidak terjadi ketika file ditulis. Ini terjadi ketika Anda menjalankan defragmenter disk. Pada edisi Windows yang lebih baru, setidaknya ini terjadi secara otomatis pada jadwal, tetapi tidak pernah dipicu dengan menulis file.
Dapat menghindari memindahkan hal-hal seperti ini adalah kunci untuk kinerja sistem file, dan mengapa fragmentasi terjadi dan mengapa defragmentasi ada sebagai langkah terpisah.
"Berapa banyak ruang kosong yang harus saya tinggalkan gratis di hard disk?"
Ini adalah pertanyaan yang rumit untuk dijawab (dan jawaban ini sudah berubah menjadi buku kecil).
Aturan praktis:
1. Untuk semua jenis drive:
- Yang terpenting, sisakan ruang kosong yang cukup untuk Anda menggunakan komputer Anda secara efektif. Jika Anda kehabisan ruang untuk bekerja, Anda akan menginginkan drive yang lebih besar.
- Banyak alat defragmentasi disk membutuhkan jumlah minimum ruang kosong (saya pikir satu dengan Windows membutuhkan 15 persen, kasus terburuk) untuk digunakan. Mereka menggunakan ruang bebas ini untuk sementara waktu menyimpan file yang terfragmentasi karena hal-hal lain diatur ulang.
- Berikan ruang untuk fungsi OS lainnya. Sebagai contoh, jika mesin Anda tidak memiliki banyak RAM fisik, dan Anda memiliki memori virtual yang diaktifkan dengan file halaman berukuran dinamis, Anda akan ingin meninggalkan ruang yang cukup untuk ukuran maksimum file halaman. Atau jika Anda memiliki laptop yang Anda masukkan ke mode hibernasi, Anda akan membutuhkan cukup ruang kosong untuk file status hibernasi. Hal-hal seperti itu.
2. Spesifik SSD:
- Untuk keandalan optimal (dan pada tingkat lebih rendah, kinerja), SSD memerlukan beberapa ruang bebas, yang, tanpa terlalu banyak detail, mereka gunakan untuk menyebarkan data di sekitar drive untuk menghindari terus menulis ke tempat yang sama (yang memakainya) . Konsep meninggalkan ruang kosong ini disebut over-provisioning. Itu penting, tetapi di banyak SSD, ruang wajib yang terlalu banyak tersedia sudah ada. Artinya, drive sering memiliki beberapa lusin lebih banyak GB daripada yang dilaporkan ke OS. Drive low-end sering mengharuskan Anda untuk pergi secara manual unpartitioned ruang, tetapi untuk drive dengan OP wajib, Anda tidak perlu meninggalkan ruang kosong. Suatu hal yang penting untuk dicatat di sini adalah itu ruang over-provisioned sering hanya diambil dari ruang unpartitioned. Jadi jika partisi Anda mengambil seluruh drive Anda dan Anda meninggalkan beberapa ruang kosong di dalamnya, itu tidak selalu menghitung. Sering kali, over-provisioning manual mengharuskan Anda mengecilkan partisi agar lebih kecil dari ukuran drive. Periksa manual pengguna SSD Anda untuk detailnya. TRIM, pengumpulan sampah, dan semacamnya memiliki efek juga, tetapi mereka berada di luar lingkup jawaban ini.
Secara pribadi, saya biasanya mengambil drive yang lebih besar ketika saya memiliki sekitar 20-25 persen ruang kosong yang tersisa. Ini tidak terkait dengan kinerja, hanya saja ketika saya sampai ke titik itu, saya berharap bahwa saya mungkin akan kehabisan ruang untuk data segera dan sekarang saatnya untuk mendapatkan drive yang lebih besar.
Lebih penting daripada menonton ruang kosong adalah memastikan defragmentasi terjadwal diaktifkan jika sesuai (tidak pada SSD) sehingga Anda tidak pernah sampai ke titik di mana cukup menakutkan untuk memengaruhi Anda.
Ada satu hal lagi yang layak disebut. Salah satu jawaban lain di sini menyebutkan bahwa mode half-duplex SATA mencegah membaca dan menulis pada saat yang bersamaan. Meskipun benar, ini sangat disederhanakan dan sebagian besar tidak terkait dengan masalah kinerja yang sedang dibahas di sini. Apa artinya ini, sederhananya adalah bahwa data tidak dapat ditransfer ke dua arah pada kawat pada waktu bersamaan. Namun, SATA memiliki spesifikasi yang cukup kompleks yang melibatkan ukuran blok maksimum kecil (sekitar 8kB per blok pada kawat, saya pikir), membaca dan menulis operasi antrian, dll, dan tidak menghalangi menulis ke buffer yang terjadi saat membaca sedang berlangsung, disisipkan operasi, dll.
Pemblokiran apa pun yang terjadi akan terjadi karena persaingan untuk sumber daya fisik, biasanya dikurangi dengan banyak cache. Mode dupleks SATA hampir sepenuhnya tidak relevan di sini.
(SEBUAH) "Memperlambat" adalah istilah yang luas. Di sini saya menggunakannya untuk merujuk ke hal-hal yang baik I / O-bound (yaitu jika komputer Anda duduk di sana angka-angka, isi dari hard drive tidak memiliki dampak) atau CPU-terikat dan bersaing dengan hal-hal yang berhubungan tangensial yang memiliki tinggi Penggunaan CPU (yaitu perangkat lunak anti-virus pemindaian berton-ton file).
(B) SSD dipengaruhi oleh fragmentasi dalam kecepatan akses berurutan yang umumnya lebih cepat daripada akses acak, meskipun SSD tidak menghadapi batasan yang sama dengan perangkat mekanis (bahkan kemudian, kurangnya fragmentasi tidak menjamin akses berurutan karena keausan pakai, dll.). Namun, dalam hampir setiap skenario penggunaan umum, ini tidak masalah. Perbedaan kinerja karena fragmentasi pada SSD biasanya diabaikan untuk hal-hal seperti memuat aplikasi, mem-boot komputer, dll.
(C) Asumsi sistem file waras yang tidak mem-fragmen file dengan sengaja.
Pastikan untuk membaca sisa diskusi yang hidup di SuperUser melalui tautan di bawah ini!
Memiliki sesuatu untuk ditambahkan ke penjelasan? Bicaralah di komentar. Ingin membaca lebih banyak jawaban dari pengguna Stack Exchange yang paham teknologi lainnya? Lihat diskusi lengkap di sini.