Скачиваний:
406
Добавлен:
22.01.2014
Размер:
3.77 Mб
Скачать

23.4. Кэш-память и эффективность программ

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

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

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

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

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

Лекция №24 накопители на жестких дисках.

План лекции

1. Обзор накопителей, используемых в ПК.

2. Накопители на жестких дисках.

3. Устройство винчестера.

4. Основные параметры винчестеров.

5. Физическое форматирование винчестеров.

6. Логический формат диска.

7. Загрузочный сектор.

8. Таблица размещения файлов.

9. Корневая директория.

10.Главный загрузочный сектор.

11.Кэширование диска.

24.1. Типы накопителей.

Для долговременного хранения информации в РС используются различного рода накопители. Общая емкость таких накопителей, как правило, в сотни раз превосходит ёмкость оперативной памяти.

Сам накопитель можно рассматривать как совокупность носителя и соответствующего привода. В связи с этим различают накопители со сменным и несменным носителем. В зависимости от типа носителя все накопители подразделяются на накопители на магнитной ленте и дисковые накопители.

Накопители на магнитной ленте называют также устройствами последовательного доступа или стриммерами, так как обратиться к удаленным фрагментам данных можно только после считывания менее удаленных. Дисковые накопители являются устройствами произвольного доступа, поскольку интересующие данные могут быть получены без обязательного прочтения их предшествующих.

По способу записи и чтения информации на носитель дисковые накопители можно подразделить на: магнитные, оптические и магнитооптические.

Выделяют среди дисковых накопителей:

- Накопители на флоппи-дисках;

- Накопители на флопоптических дисках;

- Накопители на несменных жестких дисках (винчестеры);

- Накопители на сменных жестких дисках;

- Накопители на сменных гибких дисках использующий эффект Бернулли;

- Накопители на магнитооптических дисках;

- Накопители на оптических дисках с однократной записью и многократным чтением WORM(WriteOnce—ReadMany);

- Накопители на оптических компакт дисках CD-ROM (Compact Disk Read Only Media);