Я только что скачал компьютерную игру, которая составляет около 2 ГБ. Моя скорость загрузки была довольно быстрой, почти 30 Мбит / с. Но когда дело доходит до установки игры на мой компьютер, почему это так медленно? Я имею в виду, я не понимаю процесс загрузки, потому что необходимые папки были загружены в мгновение ока, но установка не была даже как 10 Мбит / с. Что я должен знать о том, что происходит в памяти? Где файлы записываются в память, или они даже? Разве процесс установки не должен быть таким же быстрым, как загрузка? Спасибо за ответы.
2 ответа
Многие игры загружаются через Интернет в виде сжатого архива, такого как ZIP-файл или файл ISO (я предполагаю, что это применимо даже к сервисам распространения игр, таким как Steam). Этот процесс эффективен, поскольку по сети отправляется только 1 HTTP-запрос, что означает, что накладные расходы на передачу игрового архива на ваш компьютер очень низкие. В большинстве случаев загруженный архив хранится не в памяти, а во временной папке на диске.
Однако установка это совсем другая история. Для установки обычно требуется распаковка архива. Здесь действуют два фактора:
- Скорость, с которой ваш процессор может распаковать архив
- Скорость, с которой ваш жесткий диск может хранить распакованные файлы
Первый фактор обычно занимает меньше времени, чем второй. Большинство современных процессоров должны иметь возможность распаковывать архивы с максимальной степенью сжатия более 20 МБ / с. Тем не менее, он все еще занимает довольно много времени, особенно если ваш процессор работает медленно.
Второй фактор еще более значим. Большинство игр содержат много маленьких файлов. Например, текстурные и аудиоданные могут храниться в виде отдельных файлов. Есть также много файлов конфигурации. Традиционные жесткие диски очень медленно при случайной записи - иногда использование диска может быть 100%, но пропускная способность составляет только сотни КБ / с. Объем данных, записанных на диск, может быть значительно выше, чем объем загруженных данных. Если ваше временное местоположение находится на том же диске, что и место установки, вам нужно не только учитывать стоимость записи файлов, но и чтения архива, и это существенно влияет на пропускную способность.
Обратите внимание, что это может быть не так важно в случае твердотельных накопителей (SSD).
Вы говорите о двух разных вещах: установка и загрузка.
Загрузка - это процесс передачи данных с одного компьютера на другой по сети. То, как быстро будет происходить загрузка, зависит от производительности сети:
- Насколько быстро осуществляется соединение компьютеров и всей сети через точки.
- Насколько заняты сетевые каналы в настоящее время.
- Общая производительность вашей системы также влияет на скорость загрузки.
Загрузка в основном включает в себя активность сетевой карты и устройств хранения.
Установка - это процесс настройки программного обеспечения так, чтобы система могла правильно его использовать. Этот процесс в основном включает обработку и хранение данных на устройстве. Что определяет, как быстро это произойдет:
- Производительность процессора.
- Производительность накопителей.
- Количество оперативной памяти также может играть важную роль.
В большинстве случаев установка большой программы займет больше времени, поскольку процесс установки включает в себя распаковку установочного пакета, копирование его содержимого в целевые папки, выполнение необходимых системных изменений (создание записей реестра в ОС Windows и т.д.).
Итак, главное - процесс установки имеет дело с большим количеством файлов, чем загрузка.
Легче скачать один файл (даже если его размер составляет несколько ГБ), чем распаковать и скопировать сотни файлов.
Что я должен знать о том, что происходит в памяти?
Память (RAM) используется в качестве временного хранилища данных, к которым можно получить доступ быстрее, чем данные на жестких дисках. Таким образом, во время процесса установки наиболее вероятно, что операционная система поместит различные части устанавливаемой программы в ОЗУ.
Где файлы записываются в память, или они даже?
Такой термин, как память , очень широк. Память может быть привязана к модулям оперативной памяти , быстрому внутреннему кешу процессора , файлу подкачки , виртуальной памяти. Существует разница в том, как быстро можно получить доступ к различным частям памяти и сколько данных они могут хранить. Операционная система сделает все возможное, чтобы наилучшим образом использовать память.
Разве процесс установки не должен быть таким же быстрым, как загрузка?
Если мы говорим о программе с установочным файлом размером 500 КБ - скорее всего процесс установки произойдет так же быстро, как и загрузка.
Если говорить о большой программе - трудно дать ответ, потому что при сетевом подключении 56 Кбит / с загрузка программы займет несколько дней, а ее установка - 10 минут.
Посмотрите на этот пример.
Кто-то покупает книгу в местном книжном магазине. Он садится в машину с этой книгой и через 5 минут он дома. (Это операция загрузки с одной частицей - книгой).
Он начинает читать книгу. На основании его способностей к чтению чтение заняло 3 недели (это процесс установки, включающий работу со многими частицами - со всеми страницами).
Или это может быть так.
Кто-то купил книгу и должен был идти домой по всему городу. Домой из книжного магазина потребовалось 7 часов. (Это операция загрузки с одной частицей - книгой).
Книга была длиной всего 10 страниц, поэтому ее чтение заняло 20 минут. (Это процесс установки, включающий работу со многими частицами - со всеми страницами).
Таким образом, можно видеть, что эти две вещи довольно независимы (хотя у них все еще есть то же самое, от чего они зависят).