Основной недостаток оперативной памяти заключается в том, что конструктив­но достижимый объем ее во много раз меньше, чем дисковой (пока что это было справедливо на всех ступенях технического прогресса). Решить проблему уве­личения объема оперативной памяти за счет дисковой позволяет виртуальная память, которую можно считать кэшированием оперативной памяти на диске. Суть ее заключается в том, что программам предоставляется виртуальное про­странство оперативной памяти, по размерам превышающее объем физически установленной оперативной памяти. Это виртуальное пространство разбито на страницы фиксированного размера, а в физической оперативной памяти в каж­дый момент времени присутствует только часть из них. Остальные страницы хранятся на диске, откуда операционная система может их «подкачать» в физи­ческую память на место предварительно выгруженных на диск страниц. Про­цесс замещения страниц называется свопингом (swapping), а области дисковой памяти, выделяемые для этих целей, — файлами подкачки, или своп-файлами (swap file). Для прикладной программы этот процесс прозрачен (если только она не критична ко времени обращения к памяти). Для пользователя этот про­цесс заметен по работе диска в те моменты, когда не требуется обращение к файлам. Расплатой за почти безмерное увеличение объема доступной опера­тивной памяти является снижение средней производительности обращений к памяти и некоторый расход дисковой памяти на файл подкачки. Естественно, размер виртуальной памяти не может превышать суммы размеров ОЗУ и дис­ковой памяти. Виртуальная память с подкачкой страниц реализуется операци­онными системами защищенного режима (например, OS/2, MS Windows) на основе аппаратных средств 32-разрядных процессоров (386 и выше), а теперь и 64-разрядных.

НЕ нашли? Не то? Что вы ищете?

Таково в общих чертах устройство подсистемы памяти. Здесь для упрощения изложения опущена система кэширования оперативной памяти, которая для современных процессоров чаще всего является двухуровневой. Об этом под­робнее можно прочесть в главе 7. Кроме того, не упоминалось автономное кэ­ширование дисковых устройств, реализуемое в самих накопителях и их высоко­производительных контроллерах. Эта тема раскрывается в главе 9.

В общем случае в подсистему памяти обязательно входят оперативная память и энергонезависимая память, хранящая, по крайней мере, программу первона­чальной загрузки компьютера. Дисковая память как таковая может и отсутство­вать. Однако внешняя память с прямым доступом в том или ином виде — будь то действительно дисковые накопители, флэш-диск (не имеющий круглых, а тем более вращающихся деталей) или сетевой диск, отображающий часть дис­ка физически значительно удаленного компьютера-сервера, — является обяза­тельным атрибутом персонального компьютера. Благодаря применению диско­вой памяти компьютер становится универсальным устройством, способным выполнять великое множество прикладных программ, интересующих пользова­теля. Эти программы загружаются в память именно с дисков. Без внешней памя­ти компьютер вырождается в узкоспециализированное устройство с ограничен­ным набором функций (например, функций эмуляции терминала или функций интерпретатора языка Basic), «зашитых» в его постоянную память, объем кото­рой не может быть большим по технико-экономическим причинам.

Диски и файловые системы

Дисковая память в компьютере используется для хранения файлов — цепочек байтов, несущих любую информацию. Для данного обсуждения содержимое файлов несущественно — в них могут быть исполняемые программные модули, данные (числовые, текстовые, мультимедийные) и их смесь. Способ размеще­ния файлов на диске и возможности манипуляций с файлами определяются

файловой системой. Каждый файл имеет набор атрибутов, состав которого за­висит от используемой файловой системы. «Прожиточный минимум» — это имя файла, его длина и время (и дата) последней модификации; в простейшей файловой системе MS-DOS к этому минимуму добавляются атрибуты систем­ного, скрытого, архивированного и только читаемого файла. Имя файла может задаваться как в классической форме «8.3» (8 символов на имя плюс 3 символа на тип), понимаемой всеми операционными системами, так и в почти произ­вольной длинной форме, характерной для более сложных ОС (OS/2, Windows 9x/NT/200x/XP, Unix...). Файловая система включает в себя систему каталогов и системы размещения файлов на диске, простейшей из которых можно считать FAT в MS-DOS. Эти системы определяют возможности и эффективность мани­пулирования файлами — создания, записи, чтения, поиска, модификации, уда­ления, восстановления удаленных файлов, — а также средства восстановления файловой системы после сбоев, вызванных неисправностями и некорректными действиями пользователей или программ.

Для каждой операционной системы характерны свои файловые системы (одна или несколько), которые она «понимает». Компьютер с незагруженной ОС «не понимает» ни одной файловой системы (в этом его универсальность). Изна­чально были приняты соглашения, позволяющие «голому» компьютеру загру­зить ОС с так называемого системного диска, причем самая первая фаза загруз­ки выполняется без какой-либо файловой системы.

1.5. Устройства ввода-вывода и коммуникаций

Устройства ввода-вывода связывают компьютер с внешним миром, без них он был бы «вещью в себе». Список устройств, делающих компьютер «вещью для нас», практически не ограничен. К ним относятся дисплеи (устройства отобра­жения, то есть вывода), клавиатура и мышь (устройства ввода), принтеры и сканеры, плоттеры и дигитайзеры, джойстики, акустические системы и мик­рофоны, телевизоры и видеокамеры и прочие устройства в великом множестве их разновидностей. Любопытно, что в этих парах обычно лидируют устройства вывода, появившиеся в компьютерах раньше соответствующих устройств ввода. Благодаря фантазии и техническому прогрессу появляются все новые и новые устройства; так, например, шлем виртуальной реальности из области фантасти­ки перешел в производственно-коммерческую область. К компьютеру можно подключать датчики и исполнительные устройства технологического оборудо­вания, различные приборы — в общем, все, что в итоге может вырабатывать электрические сигналы и/или ими управляться.

Консолью компьютера называют его «выступающую часть», обращенную к поль­зователю. В PC стандартной консолью являются клавиатура (устройство вво­да) и дисплей, позволяющий отображать символьную информацию (устройст­во вывода). На консоль выводятся все системные сообщения; с консоли можно управлять компьютером — запускать и принудительно завершать приложения, выполнять перезагрузку ОС и управлять процессом загрузки. Вместо стандарт­ных устройств роль консоли могут играть и иные устройства, способные выво­дить и вводить символы и имеющие необходимую программную поддержку.

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

1.6. Адаптеры, контроллеры и иерархия подключений периферийных устройств

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

♦  шина подключения центрального процессора (или нескольких процессоров в сложных системах) — FSB (Front Side Bus — фасадная шина)1;

♦  шина подключения контроллеров памяти, оперативной и постоянной; соб­ственно шина памяти (memory bus) системной уже не является, поскольку в ней фигурируют не системные адреса, а адреса физических банков памяти;

♦  шины ввода-вывода, обеспечивающие связь между центральной частью ком­пьютера и периферийными устройствами.

Типичные представители шин ввода-вывода в IBM PC — шина ISA (отмираю­щая), а также шины PCI (развивающаяся в PCI-X) и PCI-E (PCI Express)*. Через шины ввода-вывода проходят все обращения центрального процессора (ЦП) к периферии. К шинам ввода-вывода подключаются контроллеры и адаптеры периферийных устройств или их интерфейсов.

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

Примечание:Это понятие в ряде источников отождествляют с системной шиной, но в данной книге будем поль­зоваться более широким толкованием понятия «системная шина».

Систему двухточечных соединений PCI Express шиной называть не совсем корректно, но она обес­печивает ту же функциональность, что и предшествующие ей шины расширения.

Сложный контроллер может иметь в своем составе и собственный процессор. На эти тонкости терминологии не всегда обращают внимание, и поня­тия «адаптер» и «контроллер» считают почти синонимами. Для взаимодействия с периферийными устройствами процессор обращается к регистрам контроллера (адаптера), «представляющего интересы» подключенных к нему устройств.

Часть перфиерийных устройств (ПУ) совмещена со своими контроллерами (адаптерами), как, например, сетевой адаптер Ethernet, подключенный к шине PCI. Другие же ПУ подключаются к своим контроллерам через промежуточные периферийные интерфейсы, находящиеся на нижнем уровне иерархии подклю­чений. Периферийные интерфейсы — самые разнообразные из всех аппаратных интерфейсов. К периферии, подключаемой через промежуточные интерфей­сы, относится большинство устройств хранения (дисковые, ленточные), уст­ройств ввода-вывода (дисплеи, клавиатуры, мыши, принтеры, плоттеры), ряд коммуникационных устройств (внешние модемы).

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5