В большинстве случаев брандмауэры реализуются на ПК либо на Unix. Так как их использование предполагает наличие отдельного компьютера и, соответственно администратора, это сильно не вписывалось в интегрированную сущность AS/400. Поэтому в V4R1 был реализован скрытый брандмауэр. Для этого защищенного сетевого шлюза мы использовали IPCS (Integrated PC Server). Использование IPCS и других скрытых машин приложений подробно рассматривается в главе 11, а сейчас скажем лишь, что IPCS — отличный брандмауэр, позволяющий избежать расходов на управления дополнительным компьютером. Наш брандмауэр находится в том же корпусе (физически), не находясь в нем логически.
Защита — одна из важнейших функций любой многопользовательской системы. По мере того, как все большее число компьютеров подключается к Интернету, необходимость защиты систем только возрастает. Компонент защиты OS/400 и компонент SLIC контроля за доступом к объектам составляют механизм, удовлетворяющий сегодняшним требованиям и, вместе с тем, достаточно гибкий для расширений в будущем. По мере ужесточения требований к защите, необходимые средства могут быть легко добавлены в AS/400.
Кроме общей системной защиты AS/400, мы подробно обсудили общие способы управления правами пользователей, включая:
доступ к меню;
заимствованные права;
групповые права;
явные права.
В процессе разрешения указателя выполняется алгоритм поиска прав. Но от прав доступа к объекту мало толку, если Вы не можете его адресовать. В следующей главе мы рассмотрим адресацию и управление одноуровневой памятью. Одноуровневая память, хотя обычно и не рассматривается как часть системы защиты, тем не менее, играет главную роль в защите пользователей и их данных.
Сегодня в компьютерной индустрии модны длинные адреса (в данном случае, «длинный» означает больше 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 разряда уже и так дают очень большое адресное пространство.
«Но насколько большое?» — спросите Вы.
Сколько байтов адресуют 64 разряда
Ответ: 16 экзабайтов, что равно примерно 18,4 квинтиллионам байтов (или точнее 18 446 744 073 709 551 616 байтов).
Большинство людей не в состоянии представить себе такое число. Как я уже упоминал, число байтов, которые могут быть адресованы с помощью 48 разрядов, примерно равно числу миллиметров расстояния от Земли до Солнца и обратно. Но для 64 разрядов нужна новая аналогия.
Читать дальше