Сравнительные характеристики
Таблица 5.2. Сравнительные характеристики и стоимость различных типов памяти
Тип памяти | Время доступа | Цена 1 Мбайта (цены 1995 г.) | Способ использования |
Статическая память | 15 нc | $200 | Регистры, кэш-память |
Динамическая память | 70 нc | $30 (4 Мбайт SIMM) | Основная память |
Жесткие магнитные диски | 1-10 мс | $3 (1.2Gb HIDE) | Файловые системы, устройства свопинга |
Магнитные ленты | Секунды | $0.025 (8mm Exabyte) | Устройства резервного копирования |
При разработке системы всегда есть желание сделать память как можно более быстрой. С другой стороны, потребности в памяти очень велики и постоянно растут.
Примечание
Примечание
Существует эмпирическое наблюдение, что любой объем дисковой памяти будет полностью занят за две недели.
Очевидно, что система с десятками гигабайтов статического ОЗУ будет иметь стоимость, скажем так, совершенно не характерную для персонапь-ных систем, не говоря уже о габаритах, потребляемой мощности и прочем. К счастью, далеко не все, что хранится в памяти системы, используется одновременно. В каждый заданный момент исполняется только часть установленного в системе программного обеспечения, и работающие программы используют только часть данных.
Эмпирическое правило "80—20", часто наблюдаемое в коммерческих системах обработки транзакций, гласит, что 80% операций совершаются над 20% файла [Heising 1963]. В ряде работ, посвященных построению оптимизирующих компиляторов, ссылаются на правило "90-10" (90% времени исполняется 10% кода) — впрочем, есть серьезные основания сомневаться в том, что в данном случае соотношение именно таково [Кнут 2000, т. 3].
В действительности, удивительно большое количество функций распределения реальных дискретных величин (начиная от количества транзакций на строку таблицы и заканчивая распределением богатства людей или капитализации акционерных обществ) подчиняются закону Парето [Pareto 1897]: