|
||
|
||
Ускорение или перестройка? |
||
Дмитрий Турецкий
В предыдущей заметке - "Быстрый компьютер" - я коснулся самых базовых способов ускорить работу компьютера. Сегодня, как обещано, я продолжу рассказ. Наверняка, вам неоднократно встречалось слово "кэш" (cache). Причем в положительном смысле - дескать, если он большой, то хорошо, а если маленький - то совсем кранты. А что же это за зверь такой? Ничего сложного для понимания тут нет. Кэш - это всего-лишь быстрая (относительно) память. И нужен он для более быстрого доступа к каким-то данным. Смысл кэширования вот в чем. К примеру, скорость чтения данных с жесткого диска намного меньше, чем из оперативной памяти. Т.е. если программе надо прочитать какие-то данные, которые хранятся на диске, то это займет какое-то время и, вполне возможно, будет тормозить программу. А если эти данные находятся в оперативной памяти, то все будет проистекать намного быстрее. Но, как известно, нет в жизни совершенства. Оперативная память - штука быстрая, но дорогая, а диск дешевый, но медленный. Я уж не говорю о том, что данные на диске хранятся долго, а из памяти пропадают после выключения питания... Так что, без диска ну никак не обойтись... И тут-то, для того чтобы как-то все это дело компенсировать, появляется кэш. Допустим, какой-то файл часто используется какой-то программой (или разными программами). Если каждый раз читать его с диска - замучаешься ждать. А вот если в оперативной памяти отвести кусочек для хранения подобных частоиспользуемых данных, то все начнет работать побыстрее. Причем данные кэшируются в самых разных местах, где скорости доступа к оригинальным данным и к "локальной копии" сильно различаются. Например, когда вы бродите по Интернету, то странички которые вы смотрите сохраняются на ваш жесткий диск - кэшируются - потому что скорость доступа к ним через Интернет заведомо медленнее, чем скорость их открытия с диска. Эти же странички могут кэшироваться еще и у провайдера или даже в вашей локальной сети, и тогда следующий, кто захочет посмотреть эту страничку (с другого компьютера) не будет ее "тянуть" с оригинального сервера, а получит с более близкого (и потому более быстрого) сервера провайдера. Лирическое отступление. Кстати, именно кэширование иногда бывает виновато в том, что вы не можете открыть скачанную из Интернета программу. Если во время скачивания произошла ошибка и файл отказывается запускаться, то не исключено, что попытавшись скачать его вторично вы получите все ту же сбойную копию, которая лежит в кэше у провайдера. С кэшированием близко связана и буферизация данных. Когда вы записываете данные на диск, то происходит это не сразу - сначала все попадает в специально отведенный участок памяти (причем, сама программа считает, что уже все записала) и только потом все сохраняется на диске (эту задержку можно даже увидеть "невооруженным глазом" - если вы откроете какой-нибудь текстовый файл в notepad-е, напечатаете что-нибудь, потом дождесь момента, когда компьютер остановит диск - разумеется, если эта функция у вас включена - и нажмете "сохранить", то увидите, что сначала notepad отметит, что уже все сохранил и только потом услышите, как раскручивается диск и как на него записывается информация). Делается это опять же для ускорения работы. Также как и с кэшированием, буфер позволяет программе не ждать ответа от медленного диска, а спокойно продолжать свою работу. При этом он берет на себя "ответственность" за то, чтобы все сохранить. Причем, если вы сохраняете какой-то один файл, то разница в скорости для вас практически незаметна. Ощутимые изменения начинаются, когда программа, например, активно пишет что-то в файл и читает из него. Если такие циклы (запись-чтение) происходят довольно часто, то на диск может вообще ничего не попадать, до завершения операций. Кстати, именно с буфером связана необходимость выключать Windows не просто отключая питание компьютера, а нажимая Пуск - выключить... Когда вы выбираете эту команду, Windows очищает буфер, записывая все что в нем скопилось на диск, гарантируя тем самым, что все ваши данные сохранены. Есть у буфера и еще одно полезное свойство, которое, например, очень важно при записи CD. Дело в том, что когда вы пишете лазерный диск очень важно, чтобы процесс записи не прерывался. Если во время записи в CD-R по какой-то причине перестанут поступать данные и лазер выключится, то болванку можно будет выкидывать. Именно поэтому, в CD-Rе есть встроенный буфер. Т.е. данные из компьютера сначала попадают в буфер CD-Rа и только потом подаются на лазер. За счет того, что в буфере накапливаются данные, даже если компьютер вдруг на какое-то время перестанет "подавать" их, CD-R сможет продолжать запись. И, кстати, размер буфера - это весьма немаловажный параметр, на который надо смотреть при покупке CD-Rа... Если у 4-х скоростного CD-Rа буфер 2 Mb, значит он может "пережить" пропадание данных в течение 2048/600 = 3.4 секунды. А "пропасть" поток данных может из-за множества причин - какая-то программа "заняла" процессор, или диск медленный, а на него что-то пишется и т.п. Теперь о грустном. Кэширование тоже нужно настраивать руками, причем это одна из немногих операций, дающая возможность достичь реального и заметного ускорения компьютера. Но и здесь (как и в случае настройки своп-файла) без экспериментов не обойтись. В чем могут быть проблемы? Дело в том, что по умолчанию Windows не ограничивает размер дискового кэша. А он, в свою очередь, очень не любит отдавать "захваченную" память назад. И возможна ситуация (особенно, после работы с большими файлами), когда почти вся память будет отведена под кэш, а программы станут "выталкиваться" в своп. Что не есть хорошо. Поэтому, рекомендуется поэкспериментировать с различными настройками. А для этого очень хорошо подходит программа Cacheman. Источник: http://www.listsoft.ru
|
||
|
||
Copyright © 2000г. "Internet Zone" & Nik Romanov, info@izcity.com | ||
Копирование и использование данных материалов разрешается только в случае указания на журнал "Internet Zone", как на источник получения информации. При этом во всех ссылках обязательно явное указание адреса вэб-сайта http://www.izcity.com/. При наличии у копируемого материала авторов и источника информации - их также нужно указывать, наряду со ссылкой на нас. |