Основи його розбиваються на декілька ключових компонентів загальної системи: елемент інтерфейсу (графічна частина), саме ядро (що спілкується з обладнанням) та формат, у якому зберігаються дані (тобто файлова система ).
Ідучи назад, NTFSде-факто для Windows був деякий час, тоді як де-факто для основних варіантів Linux є extфайлова система. Сама файлова система NTFS не змінилася після Windows XP (2001), багато функцій, які існують (наприклад, скорочення / загоєння розділів, транзакційний NTFS тощо) - це особливості ОС (Windows Vista / 7/8/10) а не сам NTFS. У extфайловій системі був останній головний стабільний випуск ( ext4) у 2008 році. Оскільки сама файлова система визначає, як і де доступ до файлів, якщо ви користуєтесь ext4, є ймовірний шанс, що ви помітите поліпшення швидкості роботи над NTFS; зауважте, але якщо ви використовували, ext2ви можете помітити, що вона порівнянна за швидкістю.
Можливо, одна секція відформатована меншими фрагментами, ніж інша. За замовчуванням для більшості систем розмір кластера 4096 byte 1 , 2 , але якщо ви відформатували свій ext4розділ на щось на зразок 16k 3, то кожне зчитування в ext4системі отримало б 4-х дані проти системи NTFS (це може означати, що файли в 4 рази залежно від того, що зберігається де / як і як великі тощо). Фрагментація файлів також може грати роль у швидкості. NTFS обробляє фрагментацію файлів дуже інакше, ніж extфайлова система, і зі 100k + файлами є хороший шанс, що є якась фрагментація.
Наступний компонент - це саме ядро (не інтерфейс користувача, а код, який насправді говорить про апаратне забезпечення, справжню ОС). Тут, чесно кажучи, немає великої різниці. Обидва ядра можуть бути налаштовані на виконання певних дій, таких як кешування / буферизація диска, щоб прискорити читання та сприйняті записи, але зазвичай ці конфігурації мають однакові компроміси незалежно від ОС; наприклад, кешування може здатися значно збільшити швидкість копіювання / збереження, але якщо ви втратите живлення під час запису в кеш (або витягніть USB-накопичувач), ви втратите всі дані, фактично не записані на диск, і, можливо, навіть пошкоджені вже записані дані. на диск.
Наприклад, скопіюйте багато файлів на USB-накопичувач у форматі FAT в Windows та Linux. У Windows це може зайняти 10 хвилин, а в Linux - 10 секунд; одразу після того, як ви скопіювали файли, обережно вийміть диск, вийнявши його. У Windows він буде негайно викинутий із системи, і, таким чином, ви зможете вийняти накопичувач із порту USB, тоді як в Linux це може зайняти 10 хвилин, перш ніж ви зможете фактично вийняти диск; це через кешування (тобто Linux записує файли в оперативну пам’ять, потім записує їх на диск у фоновому режимі, тоді як система, що не має кешу, записувала файли відразу на диск).
Останнє - це інтерфейс користувача (графічна частина, з якою користувач взаємодіє). Користувальницький інтерфейс може бути гарним вікном із крутими графіками та хорошими барами, які дають мені загальне уявлення про те, скільки файлів копіюється та наскільки це велике і скільки часу це може зайняти; інтерфейс користувача також може бути консоллю, яка не друкує будь-яку інформацію, за винятком випадків, коли це зроблено. Якщо інтерфейс повинен спочатку пройти кожну папку та файл, щоб визначити, скільки файлів є, а також наскільки вони великі та дати приблизну оцінку, перш ніж вона дійсно може розпочати копіювання, процес копіювання може зайняти більше часу через необхідний інтерфейс користувача зробити це. Знову ж таки, це вірно незалежно від ОС.
Ви можете налаштувати деякі речі на рівні (наприклад, кешування диска чи розмір кластера), але реально кажучи, це просто зводиться до того, як всі частини з’єднуються, щоб система працювала, а точніше, наскільки часто ці фрагменти коду насправді оновлюються. ОС Windows пройшла довгий шлях від Windows XP, але дискова підсистема - це область, яка протягом багатьох років не бачила багато TLC в ОС у всіх версіях (порівняно з екосистемою Linux, яка, здається, бачить нові FS або покращення досить часто).
Сподіваюсь, що додасть ясності.