[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Уроки PHP Урок № 2.1 Курс № 2 от glock18
glock18
Урок 2. Часть 1. Организация памяти.

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

Общие свойства и механизм управления ОП

Физическая память, к которой микропроцессор имеет доступ по шине адреса (для тех, кто не знает это связующее звено между ОП и микропроцессором посредством физической шины, проще говоря, проводками, которых 32 штуки (потому как 32 разрядная система)), называется – оперативной памятью (ОП). На самом нижнем уровне память компьютера можно рассматривать как массив битов. Один бит может хранить значение 0 или 1 (выкл. или вкл.). Для физической реализации битов и работы с ними идеально подходят логические схемы. Но микропроцессору неудобно работать с памятью на уровне битов, поэтому реально ОП организована как последовательность ячеек – байтов. Каждому байту соответствует свой уникальный адрес (его номер), называемый, физическим.

{тут картинка}

Механизм управления памятью полностью аппаратный. Это означает, что программа не может сама сформировать физический адрес памяти на адресной шине. Ей приходится “играть” по правилам микропроцессора, работа которого сложна, да и не нужна в нашем контексте. Отметим, что в конечном итоге этот механизм кроме прочих очень полезных свойств позволяет обеспечить на ряду и:
  • Гибкость механизма адресации
  • Защиту адресных пространств задач в многозадачной системе (как мы увидим это далее)
Модели памяти
Микропроцессор аппаратно поддерживает две модели две модели использования ОП:
  • сегментированную модель. В этой модели программе выделяются непрерывные области памяти (сегменты), а сама программа может обращаться только к данным, которые находятся в этих сегментах.
    {тут картинка}
  • страничную модель. Её можно рассматривать как надстройку над сегментированной моделью. В случае использования этой модели ОП рассматривается как совокупность блоков фиксированного размера. Основное применение этой модели связано с организацией виртуальной памяти, что позволяет операционной системе использовать для работы программ пространство памяти большее, чем сам оббьем физической памяти установленной в компьютере. (Для процессоров i486 и Pentium размер возможной виртуальной памяти может достигать 4 Тбайт!)
Особенности реализации использования и реализации этих моделей зависят от режима работы микропроцессора. Так нас не интересуют старые процессоры, а новые, то во всех уже давно используется защищённый режим. В пределах этого режима и будем рассматривать всю систему организации памяти.

Сегментированная модель памяти.
Понятия сегмента и сегментации
Сегментация – механизм адресации, обеспечивающий существование нескольких независимых адресных пространств как в пределах одной задачи, так и в системе в целом для защиты задач от взаимного влияния. В основе механизма сегментации лежит понятие сегмента, который представляет собой независимый, поддерживаемый на аппаратном уровне блок памяти. Каждая программа в общем случае может состоять из любого количества сегментов, но непосредственный доступ она имеет только к трём основным сегментам:
  • кода
  • данных
  • стека
  • и от одного до трёх дополнительных сегментов данных
Программа никогда не знает, по каким физическим адресам будут размещены её сегменты. Этим занимается операционная система. Операционная система размещает сегменты программы в Оперативную Память по определённым физическим адресам, после чего помещает значения этих адресов в определённые места. Куда именно зависит от режима работы микропроцессора, в нашем случае не забываем режим работы микропроцессора защищённый и они размещаются в элементы специальной дескрипторной таблицы. Внутри сегмента программа обращается к адресам относительно начала сегмента линейно, то есть с 0 и заканчивая адресом, равным размеру сегмента. Этот относительный адрес, или смещение, который микропроцессор использует для доступа к данным внутри сегмента, называется эффективным.
Сегментированная модель памяти защищённого режима
{тут картинка}

В аттаче это же самое только в док файле с картинками.

Эту часть урока подготовил Greg1978, которому благодарность за содействие и помощь в определении состава второго урока в целом.

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

Дополнил первый пост основной темы курса важной информацией.



Спустя 4 часа, 13 минут, 24 секунды (4.12.2009 - 18:07) amega написал(а):
если кто-то хочет подробно об этом всем почитать советую взять учебник В. Юров assemler и почитать, в нем все отлично это описано
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.