Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Кэширование операций чтения-записи





Несмотря на то, что кэш увеличивает скорость работы накопителя в системе, он также имеет и свои недостатки. Для начала, кэш нисколько не ускоряет работу накопителя при случайных запросах информации, расположенной в разных концах пластины, поскольку при таких запросах нет смысла в превыборке. Также, он нисколько не помогает при чтении больших объемов данных, т.к. он обычно достаточно маленький. Например, при копировании 10 мегабайтного файла, при обычном в наше время буфере объемом 2 мегабайта, в кэш поместится только чуть меньше чем 20% копируемого файла.

 

Вследствие этих особенностей работы кэша, он не так сильно ускоряет работу накопителя, как хотелось бы. То, какой выигрыш в скорости он дает, зависит не только от размера буфера, но и от алгоритма работы с кэшем микропроцессора, а также от типа файлов, с которыми ведется работа в данный момент. И, как правило, очень тяжело выяснить, какие алгоритмы работы кэша применяются в данном конкретном накопителе.

В последние годы, производители жестких дисков значительно увеличили емкость кэша в своих продуктах. Даже в конце 90-х годов, 256 килобайт было стандартом для всех накопителей и только высокоуровневые устройства имели кэш объемом 512 килобайт. В настоящее время, кэш размером 2 мегабайта стал уже стандартом де-факто для всех накопителей, в то время как наиболее производительные модели имеют емкости 8, а то и 16 мегабайт. Как правило, 16 мегабайт встречается только на SCSI накопителях. Есть две причины, по которым наблюдался столь быстрый рост буфера накопителя. Одна из них — резкое снижение цен на микросхемы синхронной памяти. Вторая причина — это вера пользователей в то, что удвоение или даже учетверение размера кэша очень сильно скажется на скорости работы накопителя.

Размер кэша жесткого диска, конечно, влияет на скорость работы накопителя в операционной системе, но не настолько, как представляют себе пользователи. Производители пользуются верой пользователя в размер кэша, и в рекламных проспектах делают громкие заявления об учетверенном по сравнению со стандартной моделью размере кэша. Тем не менее, сравнивая один и тот же жесткий диск с размерами буферов в 2 и 8 мегабайт, выясняется, что ускорение работы выливается в несколько процентов. К чему это приводит? К тому, что только очень большая разница в размерах кэша (например между 512 килобайтами и 8 мегабайтами) будет ощутимо сказываться на скорость работы накопителя. Так же надо помнить, что размер буфера винчестера по сравнению с памятью компьютера довольно мал, и зачастую больший вклад в работу накопителя имеет "софтовый" кэш, то есть промежуточный буфер, организованный средствами операционной системы под кэширование операций с файловой системой и находящийся в памяти компьютера.

Кэширование операций чтения и кэширование операций записи в чем-то похожи, но они также имеют и много различий. Обе эти операции, имеют своей целью увеличить общее быстродействие накопителя: это буферы между быстрым компьютером и медленной механикой накопителя. Основная разница между этими операциями состоит в том, что одна из них не изменяет данные в накопителе, в то время как другая — изменяет.

Без кэширования, каждая операция записи приводила бы к томительному ожиданию, пока головки переместятся в нужное место, и произойдет запись данных на поверхность. Работа с компьютером была бы невозможной: как мы уже упоминали ранее, эта операция на большинстве винчестеров занимала бы как минимум 10 миллисекунд, что очень много с точки зрения работы компьютера в целом, так как микропроцессору компьютера приходилось бы ждать эти 10 миллисекунд при каждой записи информации на винчестер. Самое поразительное, что существует именно такой режим работы с кэшем, когда данные одновременно записываются и в кэш и на поверхность, и система ожидает выполнение обеих операций. Это называется write-through caching (сквозное кэширование). Эта технология обеспечивает ускорение работы в том случае, если в ближайшее время только что записанные данные потребуется считать обратно в компьютер, а сама запись происходит намного дольше, чем время, через которое потребуются эти данные компьютеру.

К счастью, есть более быстрый вариант работы кэша: компьютер записывает данные в накопитель, они попадают в кэш, и накопитель сразу же отвечает системе, что запись произведена; компьютер продолжает дальше работать, веря в то, что накопитель смог очень быстро записать данные, в то время как накопитель "обманул" компьютер и только записал нужные данные в кэш, и только потом начал записывать их на диск. Эта технология называется write-back caching (кэш с обратной записью).

Конечно, технология write-back кэширования увеличивает быстродействие, но, тем не менее, и у этой технологии тоже есть свой минус. Жесткий диск сообщает компьютеру, что запись уже произведена, в то время как данные находятся лишь в кэше, и только потом начинает записывать данные на поверхность. Это занимает какое-то время. Это не проблема до тех пор, пока есть питание компьютера. Т.к. память кэша — это энергозависимая память, в момент выключения питания все содержимое кэша безвозвратно теряется. Если в кэше были данные, ожидающие записи на поверхность, и в этот момент было выключено питание, данные будут потеряны навсегда. И, что также плохо, система не знает, были ли данные точно записаны на диск, т.к. винчестер уже отрапортовал, что сделал это. Таким образом, мы не только теряем сами данные, но и не знаем, какие именно данные не успели записаться, и даже не знаем, что произошел сбой. В результате может произойти потеря части файла, что приведет к нарушению его целостности, потери работоспособности операционной системы и т.д. Конечно, эта проблема не затрагивает кэширование данных при чтении.

Вследствие такого риска, на некоторых рабочих станциях не производится кэширования вообще. Современные накопители позволяют отключать режим кэширования записи. Это особо важно в приложениях, где правильность данных очень критична. Т.к. данный вид кэширования сильно увеличивает скорость работы накопителя, все-таки обычно прибегают к другим методам, которые позволяют снизить риск потери данных вследствие отключения электричества. Самый распространенный метод — это подключение компьютера к блоку бесперебойного питания. Кроме этого, все современные накопители имеют функцию "flush write cache", которая принудительно заставляет накопитель записать данные из кэша на поверхность, но, системе приходится выполнять эту команду вслепую, т.к. она все равно не знает, есть ли в кэше данные или нет. Каждый раз, когда происходит выключение питания, современные операционные системы посылают эту команду винчестеру, потом происходит посылка команды запарковать головки (хотя эту команду можно было бы и не посылать, т.к. каждый современный накопитель автоматически паркует головки при понижении напряжения ниже предельно допустимого уровня) и только после этого компьютер выключается. Это гарантирует сохранность данных пользователя и правильное выключение винчестера.







Дата добавления: 2015-10-12; просмотров: 500. Нарушение авторских прав; Мы поможем в написании вашей работы!




Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...


Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...


Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...


Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Правила наложения мягкой бинтовой повязки 1. Во время наложения повязки больному (раненому) следует придать удобное положение: он должен удобно сидеть или лежать...

ТЕХНИКА ПОСЕВА, МЕТОДЫ ВЫДЕЛЕНИЯ ЧИСТЫХ КУЛЬТУР И КУЛЬТУРАЛЬНЫЕ СВОЙСТВА МИКРООРГАНИЗМОВ. ОПРЕДЕЛЕНИЕ КОЛИЧЕСТВА БАКТЕРИЙ Цель занятия. Освоить технику посева микроорганизмов на плотные и жидкие питательные среды и методы выделения чис­тых бактериальных культур. Ознакомить студентов с основными культуральными характеристиками микроорганизмов и методами определения...

САНИТАРНО-МИКРОБИОЛОГИЧЕСКОЕ ИССЛЕДОВАНИЕ ВОДЫ, ВОЗДУХА И ПОЧВЫ Цель занятия.Ознакомить студентов с основными методами и показателями...

Неисправности автосцепки, с которыми запрещается постановка вагонов в поезд. Причины саморасцепов ЗАПРЕЩАЕТСЯ: постановка в поезда и следование в них вагонов, у которых автосцепное устройство имеет хотя бы одну из следующих неисправностей: - трещину в корпусе автосцепки, излом деталей механизма...

Понятие метода в психологии. Классификация методов психологии и их характеристика Метод – это путь, способ познания, посредством которого познается предмет науки (С...

ЛЕКАРСТВЕННЫЕ ФОРМЫ ДЛЯ ИНЪЕКЦИЙ К лекарственным формам для инъекций относятся водные, спиртовые и масляные растворы, суспензии, эмульсии, ново­галеновые препараты, жидкие органопрепараты и жидкие экс­тракты, а также порошки и таблетки для имплантации...

Studopedia.info - Студопедия - 2014-2025 год . (0.011 сек.) русская версия | украинская версия