- •1. Вычислительные машины.
- •1.1. Модель эвм фон-Неймана.
- •1.2. Архитектуры современных эвм. Основные принципы работы отдельных компонентов. Центральные процессоры. Каналы (устройства обмена).
- •1.3. Иерархия и организация памяти эвм. Запоминающие устройства с произвольной выборкой. Внешние запоминающие устройства. Стековая память.
- •1.4. Организация и обработка прерываний от внешних устройств эвм. Схема с общей шиной. Буферизация.
- •1.5. Относительная адресация. Виртуальная память. Прямой доступ к памяти.
- •Страничная организация виртуальной памяти
- •Сегментная организация виртуальной памяти
- •1.6. Конвейеризация. Устройства ввода-вывода. Организация ввода-вывода.
- •1.7. Векторные машины. Машины с архитектурой risc. Многопроцессорные машины. Понятие о параллельных процессах.
- •Типы Процессорная симметричность
- •Потоки команд и данных
- •Соединения процессоров
- •Программные реализации Многопроцессорная обработка с sisd
- •Многопроцессорная обработка simd
- •Многопроцессорная обработка misd
- •Многопроцессорная обработка mimd
- •Понятия и терминология параллельного программного обеспечения
- •2. Персональные эвм.
- •2.1. Архитектура семейства микропроцессоров 286/586 (регистры, сегментация памяти, реальный и виртуальный режимы, защита памяти, шина, структура памяти, структура ввода/вывода, прерывания).
- •2.2. Пэвм. Система команд и способы представления информации. Архитектура математического сопроцессора.
- •3. Программный интерфейс вычислительных систем.
- •3.1. Программирование на машинном языке. Ассемблеры и макроассемблеры. Компиляторы.
- •3.2. Система управления вводом/ выводом. Спулинг.
- •3.3. Языки высокого уровня. Интерпретаторы. Абсолютные и перемещающие загрузчики. Связывающие загрузчики и редакторы связей.
- •3.4. Микропрограммы. Эмуляция. Микропрограммная поддержка.
- •4. Операционные системы.
- •4.1. Функции ядра операционной системы.
- •4.2. Управление заданиями и процессами. Понятие процесса, состояния процесса. Обработка прерываний.
- •4.3. Управление памятью, файловые системы. Концепции распределения памяти. Понятия оверлейного перекрытия, свопинга. Концепции виртуальной памяти.
- •4.4. Понятие файла, организация файла, файловой системы. Блок управления файлом.
- •4.5. Управление внешними устройствами и связью. Принципы функционирования систем управления вводом/выводом.
- •4.6. Ос. Поддержка систем программирования. Надежность, безопасность и защита. Поддержка интерфейса прикладного программирования (api)
- •4.7. Понятие о режимах реального времени. Мультизадачность и многопоточость.
- •4.8. Составные части ос ms dos, unix, Windows 95/98.
- •4.9. Загрузка ос. Основные группы команд ms dos, unix.
- •5. Парадигмы программирования.
- •5.1. Процедурное, декларативное и объектно-ориентированное программирование.
- •5.2. Логическое и функциональное программирование.(Принципы и сравнительная характеристика).
- •5.3. Параллельное программирование.
- •5.4. Абстракция данных.
- •6. Формальные языки и грамматики.
- •6.1. Иерархия Хомского.
- •6.2. Регулярные грамматики. Конечные автоматы.
- •6.3. Кс-грамматики и мп-автоматы.
- •6.4. Алгоритмическая разрешимость проблем в автоматных и кс языках.
- •6.5. Нисходящий и восходящий анализ.
1.3. Иерархия и организация памяти эвм. Запоминающие устройства с произвольной выборкой. Внешние запоминающие устройства. Стековая память.
Иерархия памяти ЭВМ.
Память ЭВМ должна иметь большую информационную емкость , малое время обращения(высокое быстродействие), высокую надежность и низкую стоимость. Но с увеличением емкости снижается быстродействие и растет стоимость. Деление памяти на ОЗУ и ВЗУ не снимает это противоречие полностью, так как различие в быстродействии процессора, ОЗУ и ВЗУ очень велико. Поэтому обмен информацией производится через дополнительные буферные устройства, то есть память ЭВМ имеет иерархическую многоуровневую структуру. Чем больше быстродействие ЗУ, тем выше стоимость хранения 1 байта, тем меньшую емкость имеет ЗУ.
Виды памяти:
Микропроцессорная память -- высокоскоростная память небольшой емкости, входящая в МП и используемая АЛУ для хранения операндов и промежуточных результатов вычислений. КЭШ-память -- это буферная, не доступная для пользователя память, автоматически используемая компьютером для ускорения операций с информацией, хранящейся в медленно действующих запоминающих устройствах. Для ускорения операций с основной памятью организуется регистровая КЭШ-память внутри микропроцессора (КЭШ-память первого уровня) или вне микропроцессора на материнской плате (КЭШ-память второго уровня); для ускорения операций с дисковой памятью организуется КЭШ-память на ячейках электронной памяти.
Внутренняя память состоит из ПЗУ (ROM -- Read Only Memory) и ОЗУ (RAM -- Random Access Memory -- память с произвольным доступом). ПЗУ состоит из установленных на материнской плате микросхем и используется для хранения неизменяемой информации: загрузочных программ операционной системы (ОС), программ тестирования устройств компьютера и некоторых драйверов базовой системы ввода-вывода (BIOS -- Base Input-Output System) и др. Из ПЗУ можно только считывать информацию, емкость ПЗУ -- сотни Кбайт. Это энергонезависимая память, -- при отключении ЭВМ информация сохраняется.
Внешняя память относится к внешним устройствам ЭВМ и используется для долговременного хранения любой информации, которая может потребоваться. В ВЗУ хранится программное обеспечение ЭВМ. Внешняя память: НЖМД и ЖМД, НГМД и ГМД (магнитный диск), стример (НМЛ -- накопитель на магнитной ленте), оптические накопители для CD-ROM и DVD-дисков.
Информационная структура внешней памяти - файловая. Наименьшей именуемой единицей является файл - наименованная совокупность однородных данных. Информация в файле состоит из битов и байтов, но они не имеют адресов, так как носитель (магнитный диск) не дискретный.
Организация внутренней памяти. ОЗУ предназначено для хранения информации (программ и данных), непосредственно участвующей в работе ЭВМ в текущий или в последующие моменты времени. ОЗУ - энергозависимая память, то есть при отключении питания записанная в нем информация теряется. ОЗУ - БИС, содержащие матрицу ячеек памяти, состоящих из триггеров -- полупроводниковых запоминающих элементов, которые способны находиться в двух устойчивых состояниях, соответствующих логическим нулю и единице.
Внутренняя память дискретна, ее информационная структура представляет собой матрицу двоичных ячеек, в каждой из которых хранится по 1 биту информации. Она адресуема: каждый байт (8 ячеек по 1 биту) имеет свой адрес -- порядковый номер. Доступ к байтам ОЗУ происходит по адресам. Так как ОЗУ позволяет обратиться к произвольному байту, то эта память называется памятью произвольного доступа (Random Access Memory).
ОЗУ ЭВМ подразделяется на две области: 1) непосредственно адресуемая память емкостью 1024 Кбайт, занимающая ячейки с адресами от 0 до 1024 Кбайт; 2) расширенная память с адресами 1024 Кбайт и выше, доступ к которой возможен при использовании специальных программ (драйверов). Стандартная память - непосредственно адресуемая память от 0 до 640 Кбайт. Верхняя память - непосредственно адресуемая память от 640 до 1024 Кбайт. Она зарезервирована для видеопамяти и работы ПЗУ.
Адреc |
Содержимое байта | |||||||
0001h |
лог. 0 |
лог. 1 |
лог. 0 |
лог. 1 |
лог. 1 |
лог. 1 |
лог. 0 |
лог. 0 |
0002h |
лог. 1 |
лог. 1 |
лог. 0 |
лог. 1 |
лог. 0 |
лог. 0 |
лог. 1 |
лог. 1 |
: |
: |
: |
: |
: |
: |
: |
: |
: |
FFFFh |
лог. 0 |
лог. 0 |
лог. 1 |
лог. 0 |
лог. 1 |
лог. 0 |
лог. 1 |
лог. 1 |
Преимущества ОЗУ: высокое быстродействие и прямой адресный доступ к ячейке. Недостаток ОЗУ: небольшая емкость (16-32-64-128-256-512 Мбайт), энергозависимость.
Оперативная память включает в себя сравнительно медленную динамическую память DRAM и быструю статическую память SRAM. Центральный процессор работает быстрее DRAM, поэтому ОЗУ большого объема на DRAM используют совместно с небольшой кэш-памятью на SRAM. Кэш-память 1 уровня находится внутри процессора, а 2 уровня - вне процессора на системной плате.
Динамическая память DRAM состоит из запоминающих ячеек, выполненных в виде конденсаторов, собранных в ИС и образующих двумерную матрицу. При записи логической 1 соответствующий конденсатор заряжается, а при записи 0 -- разряжается. Схема считывания разряжает через себя конденсатор, и чтобы записанная информация сохранилась, подзаряжает его до прежнего уровня. Со временем конденсатор разряжается, информация теряется, поэтому такая память требует периодической подзарядки (регенерации), то есть может работать только в динамическом режиме.
Статическая память SRAM при наличии питания хранит информацию сколь угодно долго. Состоит из триггеров - элементов с двумя устойчивыми состояниями. Статическая память SRAM имеет время доступа 1-10 нс, и поэтому может работать на частоте системной шины ЭВМ. Используется для кэширования ОЗУ.
ПЗУ (ROM) состоит из ИС, программируемых в процессе изготовления или после него. Различают: 1) масочные ПЗУ, их содержимое определяется рисунком технологического шаблона (быстродействие 30-70 нс); 2) однократно программируемые ПЗУ, запись информации в которые осуществляется путем прожигания ячеек памяти в специальных устройствах - программаторах; 3) репрограммируемые ПЗУ, которые могут быть перепрограммированы. Наиболее распространены ПЗУ, информация в которых стирается ультрафиолетовыми лучами.
Стековая организация памяти. Стековая память обеспечивает такой режим работы, когда информация записывается и считывается по принципу «последним записан — первым считан» (LIFO Last In First Out). Память с подобной организацией широко применяется для запоминания и восстановления содержимого регистров процессора (контекста) при обработке подпрограмм и прерываний. Работу стековой памяти поясняет рис.
Когда слово А заносится в стек, оно располагается в первой свободной ячейке. Каждое следующее записываемое слово перемещает все содержимое стека на одну ячейку вверх и занимает освободившуюся ячейку. Запись очередного кода, после Н, приводит к переполнению стека и потере кода А. Считывание кодов из стека осуществляется в обратном порядке, то есть начиная с кода Н, который был записан последним. Отметим, что доступ к произвольному коду в стеке формально недопустим до извлечения всех кодов, записанных позже.
Наиболее распространенным в настоящее время является внешний или аппаратно-программный стек, в котором для хранения информации отводится область ОП. Обычно для этих целей отводится участок памяти с наибольшими адресами, а стек расширяется в сторону уменьшения адресов. Поскольку программа обычно загружается, начиная с меньших адресов, такой прием во многих случаях позволяет избежать перекрытия областей программы и стека. Адресация стека обеспечивается специальным регистром — указателем стека (SP — stack pointer), в который предварительно помещается наибольший адрес области основной памяти, отведенной под стек.
При занесении в стек очередного слова сначала производится уменьшение на единицу содержимого указателя стека (УС), которое затем используется как адрес ячейки, куда и производится запись, то есть указатель стека хранит адрес той ячейки, к которой было произведено последнее обращение. Это можно описать в виде: УС := УС - 1; ОП[(УС)] := ШД.
При считывании слова из стека в качестве адреса этого слова берется текущее содержимое указателя стека, а после того как слово извлечено, содержимое УС увеличивается на единицу. Таким образом, при извлечении слова из стека реализуются следующие операции: ШД :=ОП[(УС)]; УС:=УС+1.