- •Вычислительные машины, системы и сети
- •Оглавление
- •Введение
- •Раздел 1. Центральный процессор
- •1.1. Архитектура центрального процессора
- •1.2. Организация памяти и способы адресации
- •1.3. Общая характеристика системы команд
- •1.4. Команды пересылки данных
- •1.5. Арифметические команды
- •1.6. Сдвиги и логические команды
- •1.7. Команды обработки строк данных
- •1.8. Команды передачи управления
- •1.9. Команды управления процессором
- •Раздел 2. Арифметический процессор
- •2.1. Архитектура арифметического процессора
- •2.2. Программная модель арифметического процессора
- •2.3. Система команд арифметического процессора
- •Раздел 3. Эволюция характеристик цп
- •3.1. Архитектура цп Pentium
- •3.2. Программная модель цп Pentium
- •3.3. Система команд ммх-расширения
- •3.4. Система команд sse-расширения
- •Раздел 4. Системные устройства вм
- •4.1. Программируемый контроллер прерываний
- •4.2. Программируемый контроллер пдп
- •4.3. Системный таймер
- •4.4. Системные регистры
- •Раздел 5. Защищенный режим работы вм
- •5.1. Максимальный режим работы цп
- •5.2. Дескрипторы и шлюзы
- •Контрольные вопросы
- •Раздел 6. Язык ассемблера
- •6.1. Программирование на языке ассемблера
- •6.2. Директивы языка ассемблера asm-86
- •6.3. Использование регистров Pentium
- •6.4. Директивы языка ассемблера asm-89
- •6.5. Модели программ, компиляция и отладка
- •Контрольные вопросы
- •Раздел 7. Специфика вычислительных систем
- •7.1. Мультипроцессорные системы
- •7.2. Управление процессами
- •7.3. Семафорные операции
- •7.4. Разделение общих процедур
- •7.5. Управление памятью
- •Контрольные вопросы
- •Раздел 8. Специализированные процессоры и вм
- •8.1. Процессор ввода-вывода
- •8.2. Программная модель процессора ввода-вывода
- •8.3. Система команд процессора ввода-вывода
- •8.4. Процессор операционной системы
- •Контрольные вопросы
- •Раздел 9. Назначение и топология сетей
- •9.1. Особенности и назначение сетей различных типов
- •Топология «звезда».
- •9.2. Кодирование информации
- •9.3. Назначение и структура пакетов
- •9.4. Методы управления обменом
- •9.5. Эталонные модели
- •Контрольные вопросы
- •Раздел 10. Практическая реализация сетей
- •10.1. Адресация в сетях
- •10.2. Основные службы Internet
- •10.3. Особенности web-дизайна
- •10.4. Особенности и тенденции развития Internet
- •Контрольные вопросы
- •Глоссарий
- •Литература
Контрольные вопросы
-
Перечислите разновидности имен узлов сети и основное назначение каждого имени.
-
К какому классу относятся IP-имена локальных сетей?
-
Объясните предназначение службы именования доменов (DNS).
-
Перечислите основные службы Интернет и соответствующие им протоколы.
-
Как и для каких целей используется протокол РОР3?
-
В чем заключается особенность реализации протокола RTP?
-
Что включает среда разработки «Денвер» и для чего она используется?
-
Объясните назначение сookie. Где и как он формируется?
-
Что позволяет технология WiMAX и где она используется?
-
Поясните понятие архитектуры сети.
-
Чему присваивается МАС адрес и почему эти адреса уникальны?
-
В чем отличие IP и DNS адреса?
-
Что такое широковещательное сообщение?
-
К какому классу относятся IP-адреса глобальной сети?
-
Приведите пример IP-адреса муниципальной сети.
-
Назовите стек протоколов модели TCP/IP.
-
Перечислите основные службы Интернет и их протоколы.
-
Что такое сокет и для чего он используется?
-
Опишите особенности протокола RTP.
-
Что такое CGI-технология и где она используется?
-
Объясните, что такое «сценарий» и какие CGI-сценарии используются в современном web-дизайне?
-
Назовите особенности языка РНР.
-
Назовите основные техническое характеристики технологии WiFi.
-
Приведите примеры использования WiFi-техологии в Санкт-Петербурге.
-
Назовите основные технические характеристики технологии WiMAX.
-
В чем заключаются сложности использования WiMAX в России?
Глоссарий
Русские сокращения
АЛУ - арифметико-логическое устройство
АП - арифметический процессор
БСШ - блок сопряжения с шиной
ВВФ - внутренний вещественный формат
ВИС - высокоимпедансное состояние
ВМ - вычислительная машина
ВС - вычислительная система
ВУ - внешнее устройство
ГТИ - генератор тактовых импульсов
ДВФ - длинный вещественный формат
ЗУ - запоминающее устройство
ИБ - исполнительный блок
КВФ - короткий вещественный формат
МПС - многопроцессорная система
ПВВ - процессор ввода-вывода
ПДП - прямой доступ в память
ПКП - программируемый контроллер прерываний
ПСТ - программируемый системный таймер
РЗП - регистр запроса прерываний
РКИ - регистры команд инициализации
РМП - регистр масок прерываний
РОП - регистр обслуживаемых прерываний
РРК - регистр рабочих команд
УВВ - устройство ввода-вывода
УУ - устройство управления
ЦП - центральный процессор
ША - шина адреса
ШД - шина данных
ШУ - шина управления
Английские сокращения
AD - address-data - адрес-данные
ADI - address interval - адресный интервал
AEN - address enable - разрешение адреса
AF - auxiliary flag - флаг вспомогательного переноса
ALE - address latch enable - разрешение фиксации адреса
В - base - база
ВС - byte counter - счетчик байтов
ВНЕ - bus high enable - разрешение старшего байта шины
ВР - base pointer - указатель базы
СА - channel activity - готовность канала
CAS - cascade - каскадирование
СС - channel control - управление каналом
CEN - command enable - разрешение команды
CF - carry flag-флаг переноса
CLK - clock - такты, тактовые импульсы
CLR - clear - сброс
CR - control register - регистр управления
CS - chip select - выбор микросхемы
CSMA/CD - Carrier Sense Multiply Access with Collision Detection –
множественный доступ с контролем несущей и определением коллизий
CSYNC - clock syncronization - тактовая синхронизация
D - data - данные
d - destination - место назначения (приемник)
DE - denormalized-operand exeption - исключительная
ситуация, связанная с ненормализованным операндом
DEN - data enable - разрешение данных
DF - direction flag- флаг направления
DI - destination index - индекс места назначения
disp - displacement - смещение
DS - data segment - сегмент данных
DSP - display - дисплей
DT/R - data transmitted/received - данные передаются/принимаются
EA - effective address - исполнительный адрес
EFI - external frequency input - вход внешней частоты
EOI - end of interrupt - окончание прерывания
ЕР - exceptional pointer - указатель исключительных ситуаций
ES - extra segment - дополнительный сегмент
ESC - escape - поручить сопроцессору
FTP - file transfer protocol – протокол передачи файлов
F/C - frequency/crystal - внешняя частота/кварц
GAN - global area net – глобальная сеть
H - high – старший
HAN - home area net – домашняя сеть
HLDA - hold acknowledgment - подтверждение захвата
HOLD - hold - запрос захвата
HTML – hyper text makeup language – язык разметки гипертекста
HTTP - hyper text transfer protocol – протокол передачи гипертекта
IС - infinity control - управление бесконечностью
ICW - initialization control word - команда инициализации
IE - invalid-operation exception - исключительная
ситуация,связанная с недействительным операндом
IEM - interrupt enable mask - маска разрешения прерывания
IF - interrupt flag-флаг разрешения прерывания
INTR (INT) -interrupt request - запрос прерывания
INTA - interrupt acknowledgement - подтверждение прерывания
IOВ - input-output bus - шина ввода-вывода
IORC - input-output read command - команда чтения из ВУ
IOWC - input-output write command - команда записи в ВУ
IP - instruction pointer - указатель команд
IP - internet protocol – внутресетевой протокол
IRC - internet relay chart – беседа через интернет
IX - index - регистр индекса
L - low – младший
LAN - local area net – локальная сеть
LOCK - lock - монополизация (захват) шины
m (mem) -memory – память
MAN - metropolitan area net – муниципальная сеть
MC - mask compare - сравнение с маской
M/IO - memory/input-output - память/ввод-вывод
MN/MX -minimum/maximum - минимальный/максимальный
mod - mode - режим
MRDC - memory read command - команда чтения из памяти
M/S - master/slave - ведущий (основной)/ведомый (подчиненный)
MWTC - memory write command - команда записи в память
NAN - not a number -не число
NMI - non-maskable interrupt - немаскируемое прерывание
NRZ - non return to zero - без возврата к нулю
OCW - operation control word - рабочая команда
ОЕ - output enable-разрешение выхода
OF - overflow flag-флаг переполнения
OSC - oscillation - колебания (синусоидальной формы)
PC - precision control - управление точностью
PCLK - perifery clock - такты для ВУ
РЕ - precision exception - исключительная ситуация,
связанная с потерей точности
PF - parity flag - флаг паритета (четности)
POP3 – post office protocol – протокол почтового офиса
РР - parameter pointer - указатель параметров
PSW - processor state word- слово-состояние процессора
PTR - pointer - указатель
QS - queue state - состояние очереди
г (reg) - register - регистр
RC - round control - управление округлением
RQ/GT - request/grant - запрос/предоставление
RZ - return to zero - возврат к нулю
S - state - состояние
SEL -selection - выбор (канала)
SF - sigh flag-флаг знака
SFNM - special full-nested mode - специальный режим полной вложенности
SI - source index - индекс источника
SMM - special mask mode - режим специального маскирования
SMTP – simple mail transfer protocol – простой протокол пересылки почты
SNGL - single - один-единственный
SP - stack pointer - указатель стека
SR - state register - регистр состояния
SS - stack segment - стековый сегмент
STB - strobe - строб
SYNC - syncronization - синхронизация
SYSBUS - system bus - системная шина
TANK - tank - колебательный контур
TCP - transmission control protocol – протокол управления передачей
TF - trap flag-флаг пошагового режима
ТР - task pointer - указатель задания
TR - tag register - регистр этикеток
UE - underflow exception - исключительная ситуация, связанная с денормализацией
w - word - слово
WAIT - wait - ожидание
WID - width – ширина
Wi-Fi - wireless fidelity – беспроводная связь
WWW – world wide web – всемирная паутина
ZE - zero-divide exception - исключительная ситуация, связанная с делением на нуль
ZF - zero flag-флаг нулевого результата
Русско-английские термины
авария - abort
Исключение, не позволяющее осуществить рестарт программы и точно локализовать команду, вызвавшую это исключение. Исключения типа "авария" генерируются при обнаружении серьезных ошибок, таких как неразрешенные или несовместимые значения в системных таблицах или аппаратные сбои.
аппаратное прерывание - hardware interrupt
Прерывание от (внешнего) периферийного устройства, по которому процессор узнает о возникновении асинхронного события.
аппаратный сброс - hardware reset
Перевод системы в предопределенное (исходное) состояние.
ввод-вывод с отображением в память - memory-mapped I/O
Способ управления периферийными устройствами, при котором управляющие регистры устройств рассматриваются как ячейки оперативной памяти и могут считываться и изменяться с использованием обычных операций запоминания и выборки.
вектор прерывания - interrupt vector
1. Номер прерывания или исключения.
2. В реальном режиме: элемент IDT, представляющий собой адрес обработчика прерывания или исключения.
виртуальная память - virtual memory
Система, в которой рабочее адресное пространство процесса превышает размер фактически имеющейся в системе оперативной памяти, при этом недостаток быстродействующей оперативной памяти заполняется за счет внешней более медленной или более дешевой памяти (винчестер, флэш-память и т.п.) При обращении процесса к ячейкам виртуального адресного пространства срабатывает механизм подкачки.
вложение задач - task nesting
Способ переключения с одной задачи на другую, при котором предыдущая задача приостанавливается, но обеспечивается ее корректное возобновление с прерванного места после выполнения новой задачи. Новая задача считается вложенной в приостановленную.
выравнивание - alignment
Способ размещения многобайтных слов в памяти, при котором слова размещаются по адресу, кратному их разрядности: 16-битные слова - по четным адресам, 32-битные слова - по адресам, кратным четырем и т.п. Такой способ размещения позволяет сократить количество циклов обращения к памяти.
дескриптор - descriptor
Структура, используемая механизмом сегментации в защищенном режиме, содержит характеристики сегмента или определенного системного объекта: базовый адрес в линейном адресном пространстве, предел, тип, права доступа и др.
задача - task
Объект, содержащий поток инструкций для процессора, который процессор может выполнять, приостанавливать и осуществлять над ним диспетчеризацию. В качестве задачи может выполняться прикладная программа, сервис операционной системы, ядро операционной системы, обработчик прерывания или исключения и др. Все команды процессора выполняются в контексте той или иной задачи.
запрашиваемый уровень привилегий - requested privilege level (RPL)
Уровень привилегий, требующийся программе для доступа к тому или иному сегменту. С помощью RPL программа может только понизить свои привилегии при доступе к какому-либо сегменту.
исключение - exception
Непредопределенное (обычно синхронное) событие в процессе, возникающее при попытке осуществления процессом неизвестного или запрещенного действия. При этом исполнение текущей последовательности команд приостанавливается, а вместо нее начинает выполняться другая последовательность, соответствующая данному исключению.
контроль с функциональной избыточностью - functional redundancy checking (FRC)
Способ организации вычислений, при котором процессоры многопроцессорной системы для обеспечения надежности системы дублируют операции, производимые основным процессором.
кэш - cache
Запоминающее устройство, используемое в качестве буфера между процессором и самой памятью. Ячейки оперативной памяти являются менее быстродействующими устройствами, чем регистры процессора и сам процессор. Кэш предназначен для выравнивания степени доступности устройств этих двух типов за счет временного хранения содержимого ячеек оперативной памяти.
кэш с обратной записью - write-back cache
Кэш, в котором алгоритм кэширования позволяет для увеличения производительности откладывать и группировать операции записи в память.
кэш со сквозной записью - write-through cache
Кэш, в котором используется алгоритм немедленного отображения изменений в памяти, вызванных операциями записи. Таким образом обеспечивается постоянное соответствие данных в памятью с их образом в кэше.
линейное адресное пространство - linear address space
Непрерывное адресное пространство программы в системе со сплошной моделью памяти.
линейный адрес - linear address
Адрес, необходимый для указания ячейки при использовании сплошной модели памяти, представляет собой смещение в линейном адресном пространстве.
ловушка - trap
Исключение, возникающее на границе команд сразу же после команды, вызвавшей это исключение. Значения регистров CS и EIP, заносимые в стек обработчика, указывают на очередную команду.
логический адрес - logical address
Адрес, необходимый для указания ячейки при использовании сегментированной модели памяти, состоящий из двух элементов: селектора сегмента и смещения.
многозадачность - multitasking
Метод управления компьютерной системой, когда отдельные задачи выполняются так, как если бы они выполнялись параллельно на отдельных процессорах с общей памятью. За исключением пауз для взаимодействия или синхронизации с другими задачами, каждая задача работает параллельно с другими задачами.
модель режима реального адреса - real-address mode model
Частный случай сегментированной модели памяти, реализованный в ЦП 8086, при котором программа работает в адресном пространстве, представляющем собой непрерывный массив сегментов фиксированной длины.
нарушение (отказ) - fault
Исключение, которое обнаруживается либо перед исполнением, либо во время исполнения команды. При этом процессор переходит в состояние, позволяющее осуществить рестарт команды. В качестве адреса возврата в стек обработчика заносится адрес вызвавшей исключение команды.
обработчик прерывания/исключения - interrupt/exception handler
Программная секция, которой передается управление при возникновении прерывания или исключения и которая определяет дальнейшие действия.
параграф - paragraph
Выровненный 16-байтный блок памяти в модели режима реального адреса.
переключение стека - stack switch
Механизм, обеспечивающий защиту данных в стеках разных уровней привилегий. Этот механизм срабатывает при переходе процессора с одного уровня привилегий на другой (при передаче управления через шлюз вызова или при вызове обработчика прерывания или исключения).
подкачка - swapping
Метод управления использованием виртуальной памяти на основе перезаписи информации из оперативной памяти во внешнюю вспомогательную память в те периоды, когда эта информация не используется, и перемещении информации обратно в основную память, когда в ней снова возникает необходимость.
подчиняемый сегмент кода - conforming code segment
Сегмент кода, который вне зависимости от уровня привилегий своего дескриптора выполняется с привилегиями вызвавшего его кода.
полудуплекс - half duplex
Режим обмена информацией (в обоих направлениях, но по очереди, а не одновременно).
порт ввода-вывода - I/O port
Функциональный блок периферийного устройства типа регистр, сопрягаемый с системной шиной микропроцессорной системы. Порт может работать либо только в режиме ввода, либо только в режиме вывода, либо в двунаправленном режиме. Каждому порту ввода-вывода сопоставляется уникальный адрес в специальном адресном пространстве микропроцессора.
предел сегмента - segment limit
Максимальное смещение в сегменте (адрес последнего байта).
прерывание - interrupt
Сигнал, по которому процессор узнает о возникновении асинхронного события. При этом исполнение текущей последовательности команд приостанавливается, а вместо нее начинает выполняться другая последовательность, соответствующая данному прерыванию.
префикс - prefix
Опциональная часть кода команды, добавляющая определенные особенности выполнения команды: повторение инструкции (rep), блокировку шины (lock) при выполнении инструкции, явное использование определенного сегментного регистра, смену размера операнда или адреса. Несколько префиксов могут использоваться совместно.
программное прерывание - software interrupt
Предопределенное (обычно синхронное) событие в процессе, при котором процесс обращается к тому или иному сервису операционной системы.
пространство портов ввода-вывода - I/O port address space
Адресное пространство, предназначенное для работы с портами ввода-вывода. В этом адресном пространстве каждая ячейка может представлять какой-либо порт того или иного периферийного устройства. Сигналы на шине микропроцессора позволяют отличать адреса в пространстве портов ввода-вывода от адресов, формируемых при обращении к оперативной памяти.
процессор с сокращенным набором команд - reduced instruction set computer (RISC)
Тип архитектуры микропроцессоров, в которой из-за относительно небольшого набора встроенных команд и, как следствие, увеличения скорости декодирования команд обеспечивается существенное улучшение быстродействия и производительности.
сегмент - segment
Блок виртуальной памяти, который представляется программе независимым адресным пространством с определенными свойствами: типом, размером, правами доступа и др.
сегмент состояния задачи - task state segment (TSS)
Сегмент памяти, предназначенный для хранения контекста процессора при приостановке задачи. TSS содержит также дополнительные элементы, обеспечивающие вложение задач и различные механизмы защиты.
сегментированная модель - segmented memory model
Способ организации памяти, при котором программа оперирует группой независимых адресных пространств, каждое из которых называется сегментом. Обычно для кода, данных и стека используются отдельные сегменты.
селектор сегмента - segment selector
Идентификатор, однозначно указывающий на сегмент при использовании сегментированной модели памяти.
симметричная многопроцессорная обработка - symmetric multiprocessing (SMP)
Способ организации вычислений, при котором и операционная система, и прикладные программы могут использовать любой процессор многопроцессорной системы.
системная ("фасадная") шина - front-side bus (FSB)
Внешняя шина микропроцессора, по которой происходит обмен с памятью и внешними устройствами.
смещение - offset
Относительный адрес от начала некоторого блока данных (сегмента, страницы, таблицы и т.п.)
спекулятивное выполнение - speculative execution
Способность процессора выполнять операции за ветвлением, которое еще не обработано, и, в конечном итоге, собирать результаты в порядке следования инструкций. Т.е. в исполнительных блоках команды обрабатываются не в том порядке, в каком они расположены в программе.
сплошная модель памяти - flat memory model
Способ организации памяти, при котором программа оперирует с единым непрерывным адресным пространством, называемом линейным адресным пространством. Код, данные и стек программы размещаются в этом пространстве.
страница - page
Блок виртуальной памяти фиксированного размера, которым оперирует механизм страничной трансляции.
суперскалярная архитектура - superscalar architecture
Архитектура, на основе двух и более исполнительных конвейеров (в отличие от скалярной - одноконвейерной архитектуры).
таблица векторов прерываний - interrupt vector table
Таблица адресов обработчиков прерываний и исключений для Intel 8086.
текущий уровень привилегий - current privilege level (CPL)
Уровень привилегий, с которым связан выполняемый в данный момент сегмент кода.
уровень привилегий - privilege level (PL)
Состояние процессора, определяющее характеристики разграничения доступа к тем или иным объектам виртуальной памяти или выполнения специальных инструкций.
уровень привилегий ввода-вывода - I/O privilege level (IOPL)
Необходимый уровень привилегий для выполнения операций в пространстве портов ввода-вывода и операций с флагом прерываний.
уровень привилегий дескриптора - descriptor privilege level (DPL)
Уровень привилегий, с которым связан описываемый данным дескриптором сегмент и системный объект.
физический адрес - physical address
Адрес ячейки в физической памяти, выставляемый процессором на системную шину при обращении к оперативной памяти.
шлюз вызова - call gate
Системный дескриптор, указывающий на точку входа в определенную процедуру. Обеспечивает переключение уровней привилегий или взаимодействие 16-битного и 32-битного кода.
шлюз задачи - task gate
Системный дескриптор, используемый для переключения на другую задачу.
шлюз ловушки - trap gate
Системный дескриптор, указывающий на точку входа в обработчик прерывания или исключения (при вызове обработчика состояние флага IF не меняется).
шлюз прерывания - interrupt gate
Системный дескриптор, указывающий на точку входа в обработчик прерывания (при вызове обработчика флаг IF сбрасывается, блокируя обработку маскируемых прерываний).
эффективный уровень привилегий - effective privilege level (EPL)
Уровень привилегий, предоставляемый программе для доступа к тому или иному сегменту, вычисляется как наибольшее значение между CPL и RPL.