Одноуровневая память
Одноуровневая память
Сегодня в компьютерной индустрии модны длинные адреса (в данном случае, «длинный» означает больше 32 разрядов). Практически все производители аппаратуры и ОС начали использовать их в своих продуктах, а в качестве стандарта для следующего поколения предусматривают 64 разряда. Переход на адреса большего размера стимулируется новыми приложениями, такими как хранилища данных, а также снижением цен на основную память. Заказчики отмечают значительное повышение производительности при использовании памяти большого размера, и размеры памяти, измеряемые гигабайтами, становятся обычным делом. 32-разрядный адрес, способный поддерживать размеры памяти только до 4 ГБ, быстро устаревает. Довольно долго процессоры AS/400 и их предшественники — процессоры System/38 — использовали 48-разрядные адреса. С переходом на RISC-процессоры размер адреса возрос до 64 разрядов.
Одноуровневая память с большими адресами — вероятно, один из самых известных компонентов AS/400, и редко какая презентация обходится без упоминания о ней. Это даже странно — ведь одноуровневая память не видима никому и ничему выше уровня MI: ни OS/400, ни прикладным программам, ни даже компиляторам. Она доступна только SLIC, а MI работает с объектами, используя для ссылок на них имена. Пространство — эквивалент памяти на уровне MI, но пространство не очень напоминает одноуровневую память.
Программы, и прикладные, и системные адресуют объекты при помощи 16-байтовых указателей; которые точнее было бы называть 128-разрядными (их используют все прикладные программы с момента появления System/38 в 1978 году). Но не все разряды: этого указателя используются, поэтому AS/400 обычно не называют 128-разрядным компьютером. Указатель содержит 64-разрядный адрес одноуровневой памяти, а также несколько разрядов дескриптора и неиспользуемые разряды, зарезервированные для будущих расширений.
Возможно, нам следует называть AS/400 128-разрядной системой — согласитесь, это было бы неплохой рекламой. Ведь называет же Digital свой процессор Alpha 64-разрядным, хотя он реализует лишь 41-разрядные адреса! HP также не использует для адреса все 64 разряда в своем процессоре PA RISC 2.0. И все же, я полагаю, мы лучше будем пока говорить о 64 разрядах — по крайней мере, до тех пор, пока до уровня IBM не подтянутся остальные. Кроме того, 64 разряда уже и так дают очень большое адресное пространство.
«Но насколько большое?» — спросите Вы.